* changes an object's location to a cold location and * adds the archive info object * @param {string} bucketName bucket name * @param {string} objectName obejct name * @param {string} versionId encoded object version id * @param {Object} archive archive info object * @param {Function} cb call
(bucketName, objectName, versionId, archive, cb)
| 103 | * @returns {undefined} |
| 104 | */ |
| 105 | function fakeMetadataArchive(bucketName, objectName, versionId, archive, cb) { |
| 106 | const promise = (async () => { |
| 107 | const objMD = await getMetadata(bucketName, objectName, versionId); |
| 108 | objMD['x-amz-storage-class'] = LOCATION_NAME_DMF; |
| 109 | objMD.dataStoreName = LOCATION_NAME_DMF; |
| 110 | objMD.archive = archive; |
| 111 | await new Promise((resolve, reject) => metadata.putObjectMD( |
| 112 | bucketName, |
| 113 | objectName, |
| 114 | objMD, |
| 115 | { versionId: decodeVersionId(versionId) }, |
| 116 | log, |
| 117 | err => (err ? reject(err) : resolve()), |
| 118 | )); |
| 119 | })(); |
| 120 | return cb ? promise.then(() => cb(), cb) : promise; |
| 121 | } |
| 122 | |
| 123 | module.exports = { |
| 124 | isNullKeyMetadataV1, |
no test coverage detected