Ensure that S3object gets closed if file does not exist. (#588)

Signed-off-by: kaizimmerm <kai.zimmermann@bosch-si.com>
This commit is contained in:
Kai Zimmermann
2017-10-10 17:26:30 +02:00
committed by GitHub
parent 47ced4f45e
commit c3908c9c34

View File

@@ -179,7 +179,7 @@ public class S3Repository implements ArtifactRepository {
final String key = objectKey(tenant, sha1Hash); final String key = objectKey(tenant, sha1Hash);
LOG.info("Retrieving S3 object from bucket {} and key {}", s3Properties.getBucketName(), key); LOG.info("Retrieving S3 object from bucket {} and key {}", s3Properties.getBucketName(), key);
final S3Object s3Object = amazonS3.getObject(s3Properties.getBucketName(), key); try (final S3Object s3Object = amazonS3.getObject(s3Properties.getBucketName(), key)) {
if (s3Object == null) { if (s3Object == null) {
return null; return null;
} }
@@ -192,6 +192,10 @@ public class S3Repository implements ArtifactRepository {
BaseEncoding.base16().lowerCase() BaseEncoding.base16().lowerCase()
.encode(BaseEncoding.base64().decode(s3ObjectMetadata.getETag()))), .encode(BaseEncoding.base64().decode(s3ObjectMetadata.getETag()))),
s3ObjectMetadata.getContentLength(), s3ObjectMetadata.getContentType()); s3ObjectMetadata.getContentLength(), s3ObjectMetadata.getContentType());
} catch (final IOException e) {
LOG.error("Could not verify S3Object", e);
return null;
}
} }
private static void checkHashes(final AbstractDbArtifact artifact, final DbArtifactHash hash) { private static void checkHashes(final AbstractDbArtifact artifact, final DbArtifactHash hash) {