org.jets3t.service.impl.rest
Class XmlResponsesSaxParser

java.lang.Object
  extended by org.jets3t.service.impl.rest.XmlResponsesSaxParser

public class XmlResponsesSaxParser
extends java.lang.Object

XML Sax parser to read XML documents returned by S3 via the REST interface, converting these documents into JetS3t objects.


Nested Class Summary
 class XmlResponsesSaxParser.BucketLocationHandler
          Handler for CreateBucketConfiguration response XML documents for a bucket.
 class XmlResponsesSaxParser.BucketLoggingStatusHandler
          Handler for LoggingStatus response XML documents for a bucket.
 class XmlResponsesSaxParser.CopyObjectResultHandler
           
 class XmlResponsesSaxParser.ListAllMyBucketsHandler
          Handler for ListAllMyBuckets response XML documents.
 class XmlResponsesSaxParser.ListBucketHandler
          Handler for ListBucket response XML documents.
 class XmlResponsesSaxParser.ListVersionsResultsHandler
           
 class XmlResponsesSaxParser.RequestPaymentConfigurationHandler
          Handler for RequestPaymentConfiguration response XML documents for a bucket.
 class XmlResponsesSaxParser.VersioningConfigurationHandler
           
 
Constructor Summary
XmlResponsesSaxParser(Jets3tProperties properties, boolean returnGoogleStorageObjects)
          Constructs the XML SAX parser.
 
Method Summary
protected  StorageBucket newBucket()
           
protected  StorageObject newObject()
           
protected  StorageOwner newOwner()
           
 AccessControlListHandler parseAccessControlListResponse(java.io.InputStream inputStream)
          Parses an AccessControlListHandler response XML document from an input stream.
 AccessControlListHandler parseAccessControlListResponse(java.io.InputStream inputStream, AccessControlListHandler handler)
          Parses an AccessControlListHandler response XML document from an input stream.
 java.lang.String parseBucketLocationResponse(java.io.InputStream inputStream)
           
 XmlResponsesSaxParser.CopyObjectResultHandler parseCopyObjectResponse(java.io.InputStream inputStream)
           
 XmlResponsesSaxParser.ListBucketHandler parseListBucketResponse(java.io.InputStream inputStream)
          Parses a ListBucket response XML document from an input stream.
 XmlResponsesSaxParser.ListAllMyBucketsHandler parseListMyBucketsResponse(java.io.InputStream inputStream)
          Parses a ListAllMyBuckets response XML document from an input stream.
 XmlResponsesSaxParser.ListVersionsResultsHandler parseListVersionsResponse(java.io.InputStream inputStream)
           
 XmlResponsesSaxParser.BucketLoggingStatusHandler parseLoggingStatusResponse(java.io.InputStream inputStream)
          Parses a LoggingStatus response XML document for a bucket from an input stream.
 boolean parseRequestPaymentConfigurationResponse(java.io.InputStream inputStream)
           
 S3BucketVersioningStatus parseVersioningConfigurationResponse(java.io.InputStream inputStream)
           
protected  void parseXmlInputStream(DefaultXmlHandler handler, java.io.InputStream inputStream)
          Parses an XML document from an input stream using a document handler.
protected  java.io.InputStream sanitizeXmlDocument(DefaultXmlHandler handler, java.io.InputStream inputStream)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XmlResponsesSaxParser

public XmlResponsesSaxParser(Jets3tProperties properties,
                             boolean returnGoogleStorageObjects)
                      throws ServiceException
Constructs the XML SAX parser.

Parameters:
properties - the JetS3t properties that will be applied when parsing XML documents.
Throws:
S3ServiceException
ServiceException
Method Detail

newBucket

protected StorageBucket newBucket()

newObject

protected StorageObject newObject()

newOwner

protected StorageOwner newOwner()

parseXmlInputStream

protected void parseXmlInputStream(DefaultXmlHandler handler,
                                   java.io.InputStream inputStream)
                            throws ServiceException
Parses an XML document from an input stream using a document handler.

Parameters:
handler - the handler for the XML document
inputStream - an input stream containing the XML document to parse
Throws:
ServiceException - any parsing, IO or other exceptions are wrapped in an ServiceException.

sanitizeXmlDocument

protected java.io.InputStream sanitizeXmlDocument(DefaultXmlHandler handler,
                                                  java.io.InputStream inputStream)
                                           throws ServiceException
Throws:
ServiceException

parseListBucketResponse

public XmlResponsesSaxParser.ListBucketHandler parseListBucketResponse(java.io.InputStream inputStream)
                                                                throws ServiceException
Parses a ListBucket response XML document from an input stream.

Parameters:
inputStream - XML data input stream.
Returns:
the XML handler object populated with data parsed from the XML stream.
Throws:
ServiceException

parseListMyBucketsResponse

public XmlResponsesSaxParser.ListAllMyBucketsHandler parseListMyBucketsResponse(java.io.InputStream inputStream)
                                                                         throws ServiceException
Parses a ListAllMyBuckets response XML document from an input stream.

Parameters:
inputStream - XML data input stream.
Returns:
the XML handler object populated with data parsed from the XML stream.
Throws:
ServiceException

parseAccessControlListResponse

public AccessControlListHandler parseAccessControlListResponse(java.io.InputStream inputStream)
                                                        throws ServiceException
Parses an AccessControlListHandler response XML document from an input stream.

Parameters:
inputStream - XML data input stream.
Returns:
the XML handler object populated with data parsed from the XML stream.
Throws:
ServiceException

parseAccessControlListResponse

public AccessControlListHandler parseAccessControlListResponse(java.io.InputStream inputStream,
                                                               AccessControlListHandler handler)
                                                        throws ServiceException
Parses an AccessControlListHandler response XML document from an input stream.

Parameters:
inputStream - XML data input stream.
handler - the instance of AccessControlListHandler to be used.
Returns:
the XML handler object populated with data parsed from the XML stream.
Throws:
ServiceException

parseLoggingStatusResponse

public XmlResponsesSaxParser.BucketLoggingStatusHandler parseLoggingStatusResponse(java.io.InputStream inputStream)
                                                                            throws ServiceException
Parses a LoggingStatus response XML document for a bucket from an input stream.

Parameters:
inputStream - XML data input stream.
Returns:
the XML handler object populated with data parsed from the XML stream.
Throws:
ServiceException

parseBucketLocationResponse

public java.lang.String parseBucketLocationResponse(java.io.InputStream inputStream)
                                             throws ServiceException
Throws:
ServiceException

parseCopyObjectResponse

public XmlResponsesSaxParser.CopyObjectResultHandler parseCopyObjectResponse(java.io.InputStream inputStream)
                                                                      throws ServiceException
Throws:
ServiceException

parseRequestPaymentConfigurationResponse

public boolean parseRequestPaymentConfigurationResponse(java.io.InputStream inputStream)
                                                 throws ServiceException
Parameters:
inputStream -
Returns:
true if the bucket is configured as Requester Pays, false if it is configured as Owner pays.
Throws:
ServiceException

parseVersioningConfigurationResponse

public S3BucketVersioningStatus parseVersioningConfigurationResponse(java.io.InputStream inputStream)
                                                              throws ServiceException
Parameters:
inputStream -
Returns:
true if the bucket has versioning enabled, false otherwise.
Throws:
ServiceException

parseListVersionsResponse

public XmlResponsesSaxParser.ListVersionsResultsHandler parseListVersionsResponse(java.io.InputStream inputStream)
                                                                           throws ServiceException
Throws:
ServiceException