Net::Amazon::S3::Response(3pm)

Net::Amazon::S3::Response3pm

Behaviour common to most s3 responses.

Usage

        package Command::Response;
        extends 'Net::Amazon::S3::Response';
        ...
        my $response = Command::Response->new (
                http_response => $http_response,
        );

Version

version 0.991

Overview

Response handler base class providing functionality common to most S3 responses.

Extending

Net::Amazon::S3::Response provides methods to cache response data.

_data

Read-only accessor initialized by "_build_data"

_build_data

Data builder, by default calls "_parse_data" if response is success and provides valid XML document.

_parse_data

Abstract (undefined in parent) method to be implemented by children.

Methods

Constructor

Constructor accepts only one (required) parameter - "http_response". It should act like HTTP::Response.

Response classification methods

is_success

True if response is a success response, false otherwise.

Successful response may contain invalid XML.

is_redirect

True if response is a redirect.

is_error

True if response is an error response, false otherwise.

Response is considered to be an error either when response code is an HTTP error (4xx or 5xx) or response content is an error XML document.

See also "S3 Error Response" <https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html> for more details.

is_internal_response

True if response is generated by user agent itself (eg: Cannot connect)

is_xml_content

True if response data is a valid XML document

Error handling

Apart error classifition Net::Amazon::S3::Response provides also common error data accessors.

Error data are available only in case of error response.

error_code

Either content of "Error/Code" XML element or HTTP response code.

error_message

Either content of "Error/Message" XML element or HTTP response message.

error_request_id

Content of "Error/RequestId" XML element if available, "x-amz-request-id" header if available, empty list otherwise.

error_resource

Content of c<Error/Resource> if available, request uri otherwise.

Common Response Headers

See "S3 Common Response Headers" <https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonResponseHeaders.html> for more details.

content_length
content_type
connection
etag

ETag with trimmed leading/trailing quotes.

server
delete_marker
request_id
id_2
version_id

XML Document parsing

xml_document

Lazy built instance of XML::LibXML.

Available only if response is XML response and contains valid XML document.

xpath_context

Lazy built instance of XML::LibXML::XPathContext.

Available only if response is XML response and contains valid XML document

HTTP Response methods

Further methods delegated to "http_response". Refer HTTP::Response for description.

code
message
status_line
content
decoded_content
header
headers
header_field_names

Releases

3 releases since Debian 11 (Bullseye); the text changed 1 time.

  1. 11
  2. 12–13

Author

Branislav Zahradník <[email protected]>

Author

Branislav Zahradník <[email protected]>

From libnet-amazon-s3-perl 0.991-1 in Debian 13 (Trixie). Parsed by carta from the page's man source.