Class JsonResponseHandler<T>

    • Constructor Summary

      Constructors 
      Constructor Description
      JsonResponseHandler​(com.amazonaws.transform.Unmarshaller<T,​com.amazonaws.transform.JsonUnmarshallerContext> responseUnmarshaller, Map<Class<?>,​com.amazonaws.transform.Unmarshaller<?,​com.amazonaws.transform.JsonUnmarshallerContext>> simpleTypeUnmarshallers, com.fasterxml.jackson.core.JsonFactory jsonFactory, boolean needsConnectionLeftOpen, boolean isPayloadJson)
      Constructs a new response handler that will use the specified JSON unmarshaller to unmarshall the service response and uses the specified response element path to find the root of the business data in the service's response.
    • Constructor Detail

      • JsonResponseHandler

        public JsonResponseHandler​(com.amazonaws.transform.Unmarshaller<T,​com.amazonaws.transform.JsonUnmarshallerContext> responseUnmarshaller,
                                   Map<Class<?>,​com.amazonaws.transform.Unmarshaller<?,​com.amazonaws.transform.JsonUnmarshallerContext>> simpleTypeUnmarshallers,
                                   com.fasterxml.jackson.core.JsonFactory jsonFactory,
                                   boolean needsConnectionLeftOpen,
                                   boolean isPayloadJson)
        Constructs a new response handler that will use the specified JSON unmarshaller to unmarshall the service response and uses the specified response element path to find the root of the business data in the service's response.
        Parameters:
        responseUnmarshaller - The JSON unmarshaller to use on the response.
        simpleTypeUnmarshallers - List of unmarshallers to be used for scalar types.
        jsonFactory - the json factory to be used for parsing the response.
    • Method Detail

      • registerAdditionalMetadataExpressions

        protected void registerAdditionalMetadataExpressions​(com.amazonaws.transform.JsonUnmarshallerContext unmarshallerContext)
        Hook for subclasses to override in order to collect additional metadata from service responses.
        Parameters:
        unmarshallerContext - The unmarshaller context used to configure a service's response data.
      • needsConnectionLeftOpen

        public boolean needsConnectionLeftOpen()
        Description copied from interface: HttpResponseHandler
        Indicates if this response handler requires that the underlying HTTP connection not be closed automatically after the response is handled.

        For example, if the object returned by this response handler manually manages the stream of data from the HTTP connection, and doesn't read all the data from the connection in the HttpResponseHandler.handle(HttpResponse) method, this method can be used to prevent the underlying connection from being prematurely closed.

        Response handlers should use this option very carefully, since it means that resource cleanup is no longer handled automatically, and if neglected, can result in the client runtime running out of resources for new HTTP connections.

        Specified by:
        needsConnectionLeftOpen in interface HttpResponseHandler<T>
        Returns:
        True if this response handler requires that the underlying HTTP connection be left open, and not automatically closed, otherwise false.