Class AwsXmlProtocolFactory
- java.lang.Object
-
- software.amazon.awssdk.protocols.xml.AwsXmlProtocolFactory
-
- Direct Known Subclasses:
AwsS3ProtocolFactory
public class AwsXmlProtocolFactory extends Object
Factory to generate the various protocol handlers and generators to be used for communicating with REST/XML services.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAwsXmlProtocolFactory.Builder<SubclassT extends AwsXmlProtocolFactory.Builder>Builder forAwsXmlProtocolFactory.
-
Field Summary
Fields Modifier and Type Field Description static OperationMetadataAttribute<String>ROOT_MARSHALL_LOCATION_ATTRIBUTESome services like Route53 specifies the location for the request shape.static OperationMetadataAttribute<String>XML_NAMESPACE_ATTRIBUTEAttribute for configuring the XML namespace to include in the xmlns attribute of the root element.
-
Method Summary
-
-
-
Field Detail
-
XML_NAMESPACE_ATTRIBUTE
public static final OperationMetadataAttribute<String> XML_NAMESPACE_ATTRIBUTE
Attribute for configuring the XML namespace to include in the xmlns attribute of the root element.
-
ROOT_MARSHALL_LOCATION_ATTRIBUTE
public static final OperationMetadataAttribute<String> ROOT_MARSHALL_LOCATION_ATTRIBUTE
Some services like Route53 specifies the location for the request shape. This should be the root of the generated xml document. Other services Cloudfront, s3 don't specify location param for the request shape. For them, this value will be null.
-
-
Method Detail
-
createProtocolMarshaller
public ProtocolMarshaller<SdkHttpFullRequest> createProtocolMarshaller(OperationInfo operationInfo)
Creates an instance ofXmlProtocolMarshallerto be used for marshalling the request.- Parameters:
operationInfo- Info required to marshall the request
-
createResponseHandler
public <T extends SdkPojo> HttpResponseHandler<T> createResponseHandler(Supplier<SdkPojo> pojoSupplier, XmlOperationMetadata staxOperationMetadata)
-
createResponseHandler
public <T extends SdkPojo> HttpResponseHandler<T> createResponseHandler(Function<SdkHttpFullResponse,SdkPojo> pojoSupplier, XmlOperationMetadata staxOperationMetadata)
-
createResponseTransformer
protected <T extends AwsResponse> Function<AwsXmlUnmarshallingContext,T> createResponseTransformer(Supplier<SdkPojo> pojoSupplier)
-
createErrorTransformer
protected Function<AwsXmlUnmarshallingContext,AwsServiceException> createErrorTransformer()
-
createErrorResponseHandler
public HttpResponseHandler<AwsServiceException> createErrorResponseHandler()
-
createCombinedResponseHandler
public <T extends AwsResponse> HttpResponseHandler<Response<T>> createCombinedResponseHandler(Supplier<SdkPojo> pojoSupplier, XmlOperationMetadata staxOperationMetadata)
-
createGenerator
protected XmlGenerator createGenerator(OperationInfo operationInfo)
-
builder
public static AwsXmlProtocolFactory.Builder builder()
-
-