diff --git a/src/main/java/org/gaul/s3proxy/S3ProxyHandler.java b/src/main/java/org/gaul/s3proxy/S3ProxyHandler.java index ba2fa96..824d2df 100644 --- a/src/main/java/org/gaul/s3proxy/S3ProxyHandler.java +++ b/src/main/java/org/gaul/s3proxy/S3ProxyHandler.java @@ -464,17 +464,7 @@ final class S3ProxyHandler extends AbstractHandler { xml.writeStartElement("AccessControlPolicy"); xml.writeDefaultNamespace(AWS_XMLNS); - xml.writeStartElement("Owner"); - - xml.writeStartElement("ID"); - xml.writeCharacters(FAKE_OWNER_ID); - xml.writeEndElement(); - - xml.writeStartElement("DisplayName"); - xml.writeCharacters(FAKE_OWNER_DISPLAY_NAME); - xml.writeEndElement(); - - xml.writeEndElement(); + writeOwnerStanza(xml); xml.writeStartElement("AccessControlList"); @@ -573,19 +563,10 @@ final class S3ProxyHandler extends AbstractHandler { xml.writeStartElement("AccessControlPolicy"); xml.writeDefaultNamespace(AWS_XMLNS); - xml.writeStartElement("Owner"); - - xml.writeStartElement("ID"); - xml.writeCharacters(FAKE_OWNER_ID); - xml.writeEndElement(); - - xml.writeStartElement("DisplayName"); - xml.writeCharacters(FAKE_OWNER_DISPLAY_NAME); - xml.writeEndElement(); - - xml.writeEndElement(); + writeOwnerStanza(xml); xml.writeStartElement("AccessControlList"); + xml.writeStartElement("Grant"); xml.writeStartElement("Grantee"); @@ -673,17 +654,7 @@ final class S3ProxyHandler extends AbstractHandler { xml.writeStartElement("ListAllMyBucketsResult"); xml.writeDefaultNamespace(AWS_XMLNS); - xml.writeStartElement("Owner"); - - xml.writeStartElement("ID"); - xml.writeCharacters(FAKE_OWNER_ID); - xml.writeEndElement(); - - xml.writeStartElement("DisplayName"); - xml.writeCharacters(FAKE_OWNER_DISPLAY_NAME); - xml.writeEndElement(); - - xml.writeEndElement(); + writeOwnerStanza(xml); xml.writeStartElement("Buckets"); for (StorageMetadata metadata : blobStore.list()) { @@ -983,17 +954,7 @@ final class S3ProxyHandler extends AbstractHandler { xml.writeCharacters("STANDARD"); xml.writeEndElement(); - xml.writeStartElement("Owner"); - - xml.writeStartElement("ID"); - xml.writeCharacters(FAKE_OWNER_ID); - xml.writeEndElement(); - - xml.writeStartElement("DisplayName"); - xml.writeCharacters(FAKE_OWNER_DISPLAY_NAME); - xml.writeEndElement(); - - xml.writeEndElement(); + writeOwnerStanza(xml); xml.writeEndElement(); } @@ -1489,17 +1450,7 @@ final class S3ProxyHandler extends AbstractHandler { xml.writeEndElement(); - xml.writeStartElement("Owner"); - - xml.writeStartElement("ID"); - xml.writeCharacters(FAKE_OWNER_ID); - xml.writeEndElement(); - - xml.writeStartElement("DisplayName"); - xml.writeCharacters(FAKE_OWNER_DISPLAY_NAME); - xml.writeEndElement(); - - xml.writeEndElement(); + writeOwnerStanza(xml); xml.writeStartElement("StorageClass"); xml.writeCharacters("STANDARD"); @@ -1873,6 +1824,22 @@ final class S3ProxyHandler extends AbstractHandler { } } + // TODO: bogus values + private static void writeOwnerStanza(XMLStreamWriter xml) + throws XMLStreamException { + xml.writeStartElement("Owner"); + + xml.writeStartElement("ID"); + xml.writeCharacters(FAKE_OWNER_ID); + xml.writeEndElement(); + + xml.writeStartElement("DisplayName"); + xml.writeCharacters(FAKE_OWNER_DISPLAY_NAME); + xml.writeEndElement(); + + xml.writeEndElement(); + } + static final class MultiBlobByteSource extends ByteSource { private final BlobStore blobStore; private final String containerName;