kopia lustrzana https://github.com/gaul/s3proxy
Use correct BlobStore for fake metadata
Previously we could NPE when using the BlobStoreLocator.pull/60/head
rodzic
c1b8234596
commit
96e1a65968
|
@ -158,7 +158,6 @@ final class S3ProxyHandler extends AbstractHandler {
|
|||
private final XMLOutputFactory xmlOutputFactory =
|
||||
XMLOutputFactory.newInstance();
|
||||
private BlobStoreLocator blobStoreLocator;
|
||||
private final BlobMetadata fakeBlobMetadata;
|
||||
|
||||
S3ProxyHandler(final BlobStore blobStore, final String identity,
|
||||
final String credential, Optional<String> virtualHost) {
|
||||
|
@ -188,10 +187,6 @@ final class S3ProxyHandler extends AbstractHandler {
|
|||
this.virtualHost = requireNonNull(virtualHost);
|
||||
xmlOutputFactory.setProperty("javax.xml.stream.isRepairingNamespaces",
|
||||
Boolean.FALSE);
|
||||
|
||||
fakeBlobMetadata = blobStore.blobBuilder("fake-name")
|
||||
.build()
|
||||
.getMetadata();
|
||||
}
|
||||
|
||||
private static String getBlobStoreType(BlobStore blobStore) {
|
||||
|
@ -1307,7 +1302,7 @@ final class S3ProxyHandler extends AbstractHandler {
|
|||
|
||||
// TODO: how to reconstruct original mpu?
|
||||
MultipartUpload mpu = MultipartUpload.create(containerName,
|
||||
blobName, uploadId, fakeBlobMetadata);
|
||||
blobName, uploadId, createFakeBlobMetadata(blobStore));
|
||||
blobStore.abortMultipartUpload(mpu);
|
||||
response.sendError(HttpServletResponse.SC_NO_CONTENT);
|
||||
}
|
||||
|
@ -1350,7 +1345,7 @@ final class S3ProxyHandler extends AbstractHandler {
|
|||
|
||||
// TODO: how to reconstruct original mpu?
|
||||
MultipartUpload mpu = MultipartUpload.create(containerName,
|
||||
blobName, uploadId, fakeBlobMetadata);
|
||||
blobName, uploadId, createFakeBlobMetadata(blobStore));
|
||||
|
||||
List<MultipartPart> parts = blobStore.listMultipartUpload(mpu);
|
||||
for (MultipartPart part : parts) {
|
||||
|
@ -1456,7 +1451,7 @@ final class S3ProxyHandler extends AbstractHandler {
|
|||
|
||||
// TODO: how to reconstruct original mpu?
|
||||
MultipartUpload mpu = MultipartUpload.create(containerName,
|
||||
blobName, uploadId, fakeBlobMetadata);
|
||||
blobName, uploadId, createFakeBlobMetadata(blobStore));
|
||||
|
||||
try (InputStream is = request.getInputStream()) {
|
||||
Payload payload = Payloads.newInputStreamPayload(is);
|
||||
|
@ -1778,4 +1773,10 @@ final class S3ProxyHandler extends AbstractHandler {
|
|||
xml.writeCharacters(characters);
|
||||
xml.writeEndElement();
|
||||
}
|
||||
|
||||
private static BlobMetadata createFakeBlobMetadata(BlobStore blobStore) {
|
||||
return blobStore.blobBuilder("fake-name")
|
||||
.build()
|
||||
.getMetadata();
|
||||
}
|
||||
}
|
||||
|
|
Ładowanie…
Reference in New Issue