UNPKG

@cumulus/ingest

Version:
41 lines 1.88 kB
export interface Lock { Key?: string; LastModified?: Date; } /** * Checks all locks and removes those older than five minutes. Returns a count * of locks that are not older than configured retention period or 5 minutes. * * @param {object} bucket - The AWS S3 bucket with the locks to check * @param {Array} locks - The list of locks in the bucket * @param {number} retentionTimeInSeconds - lock retention time in seconds, default is 300 * @returns {integer} - Number of locks remaining in bucket */ export declare function checkOldLocks(bucket: string, locks?: Lock[], retentionTimeInSeconds?: number): Promise<number>; /** * Counts the number of locks in a bucket. * * @param {object} bucket - The AWS S3 bucket to check * @param {string} providerName - The provider name * @param {number} retentionTimeInSeconds - lock retention time in seconds, default is 300 * @returns {integer} - Number of current locks in the bucket */ export declare function countLock(bucket: string, providerName: string, retentionTimeInSeconds?: number): Promise<number>; export declare function removeLock(bucket: string, providerName: string, granuleId: string): Promise<void>; /** * * @param {string} bucket - system bucket to place the lock files * @param {object} provider - provider object * @param {string} provider.id - provider id * @param {number} provider.globalConnectionLimit - provider globalConnectionLimit * @param {number} provider.maxDownloadTime - provider maxDownloadTime for a granule * @param {string} granuleId - id of downloading granule * @param {number} counter - retry counter * @returns {Promise<boolean>} */ export declare function proceed(bucket: string, provider: { id: string; globalConnectionLimit?: number; maxDownloadTime?: number; }, granuleId: string, counter?: number): Promise<boolean>; //# sourceMappingURL=lock.d.ts.map