Class: Response

Represents an HTTP response.

Methods

getEntity

Gets the Entity associated with the response.

setEntity

Sets the provided Entity to the response.

hasHeader

Checks whether the requested header key exists in the header map.

getHeader

Returns the value of the specified header.

addHeader

Adds the specified header to the response.

getHeaders

Gets all the header values to which the specified header key maps to.

setHeader

Sets the specified header to the response.

removeHeader

Removes the specified header from the response.

removeAllHeaders

Removes all the headers from the response.

getHeaderNames

Gets all the names of the headers of the response.

setContentType

Sets the content-type header to the response.

getContentType

Gets the type of the payload of the response (i.e., the content-type header value).

getJsonPayload

Extract json payload from the response.

getXmlPayload

Extracts xml payload from the response.

getTextPayload

Extracts text payload from the response.

getByteStream

Gets the response payload as a stream of byte[], except in the case of multiparts.

getBinaryPayload

Gets the response payload as a byte[].

getBodyParts

Extracts body parts from the response.

setETag

Sets the etag header for the given payload.

setLastModified

Sets the current time as the last-modified header.

setJsonPayload

Sets a json as the payload.

setXmlPayload

Sets an xml as the payload

setTextPayload

Sets a string as the payload.

setBinaryPayload

Sets a byte[] as the payload.

setBodyParts

Set multiparts as the payload.

setFileAsPayload

Sets the content of the specified file as the entity body of the response.

setByteStream

Sets a Stream as the payload.

setPayload

Sets the response payload.

addCookie

Adds the cookie to response.

removeCookiesFromRemoteStore

Deletes the cookies in the client's cookie store.

getCookies

Gets cookies from the response.

Fields

  • statusCode int(default 200)
  • The response status code

  • reasonPhrase string(default "")
  • The status code reason phrase

  • server string(default "")
  • The server header

  • resolvedRequestedURI string(default "")
  • The ultimate request URI that was made to receive the response when redirect is on

  • cacheControl ResponseCacheControl?(default ())
  • The cache-control directives for the response. This needs to be explicitly initialized if intending on utilizing HTTP caching. For incoming responses, this will already be populated if the response was sent with cache-control directives

getEntity

function getEntity() returns Entity | ClientError
Isolated Function

Gets the Entity associated with the response.

Return Type

(Entity | ClientError)

The Entity of the response. An http:ClientError is returned, if entity construction fails

setEntity

function setEntity(Entity e)
Isolated Function

Sets the provided Entity to the response.

Parameters

  • e Entity
  • The Entity to be set to the response

hasHeader

function hasHeader(string headerName, HeaderPosition position) returns boolean
Isolated Function

Checks whether the requested header key exists in the header map.

Parameters

  • headerName string
  • The header name

  • position HeaderPosition (default LEADING)
  • Represents the position of the header as an optional parameter

Return Type

(boolean)

true if the specified header key exists

getHeader

function getHeader(string headerName, HeaderPosition position) returns string | HeaderNotFoundError
Isolated Function

Returns the value of the specified header. If the specified header key maps to multiple values, the first of these values is returned.

Parameters

  • headerName string
  • The header name

  • position HeaderPosition (default LEADING)
  • Represents the position of the header as an optional parameter. If the position is http:TRAILING, the entity-body of the Response must be accessed initially.

Return Type

(string | HeaderNotFoundError)

The first header value for the specified header name or the HeaderNotFoundError if the header is not found.

addHeader

function addHeader(string headerName, string headerValue, HeaderPosition position)
Isolated Function

Adds the specified header to the response. Existing header values are not replaced. Panic if an illegal header is passed.

Parameters

  • headerName string
  • The header name

  • headerValue string
  • The header value

  • position HeaderPosition (default LEADING)
  • Represents the position of the header as an optional parameter. If the position is http:TRAILING, the entity-body of the Response must be accessed initially.

getHeaders

function getHeaders(string headerName, HeaderPosition position) returns string[ ] | HeaderNotFoundError
Isolated Function

Gets all the header values to which the specified header key maps to.

Parameters

  • headerName string
  • The header name

  • position HeaderPosition (default LEADING)
  • Represents the position of the header as an optional parameter. If the position is http:TRAILING, the entity-body of the Response must be accessed initially.

Return Type

(string[ ] | HeaderNotFoundError)

The header values the specified header key maps to or the HeaderNotFoundError if the header is not found.

setHeader

function setHeader(string headerName, string headerValue, HeaderPosition position)
Isolated Function

Sets the specified header to the response. If a mapping already exists for the specified header key, the existing header value is replaced with the specified header value. Panic if an illegal header is passed.

Parameters

  • headerName string
  • The header name

  • headerValue string
  • The header value

  • position HeaderPosition (default LEADING)
  • Represents the position of the header as an optional parameter. If the position is http:TRAILING, the entity-body of the Response must be accessed initially.

removeHeader

function removeHeader(string headerName, HeaderPosition position)
Isolated Function

Removes the specified header from the response.

Parameters

  • headerName string
  • The header name

  • position HeaderPosition (default LEADING)
  • Represents the position of the header as an optional parameter. If the position is http:TRAILING, the entity-body of the Response must be accessed initially.

removeAllHeaders

function removeAllHeaders(HeaderPosition position)
Isolated Function

Removes all the headers from the response.

Parameters

  • position HeaderPosition (default LEADING)
  • Represents the position of the header as an optional parameter. If the position is http:TRAILING, the entity-body of the Response must be accessed initially.

getHeaderNames

function getHeaderNames(HeaderPosition position) returns string[ ]
Isolated Function

Gets all the names of the headers of the response.

Parameters

  • position HeaderPosition (default LEADING)
  • Represents the position of the header as an optional parameter. If the position is http:TRAILING, the entity-body of the Response must be accessed initially.

Return Type

(string[ ])

An array of all the header names

setContentType

function setContentType(string contentType) returns error?
Isolated Function

Sets the content-type header to the response.

Parameters

  • contentType string
  • Content type value to be set as the content-type header

Return Type

(error?)

Nil if successful, error in case of invalid content-type

getContentType

function getContentType() returns string
Isolated Function

Gets the type of the payload of the response (i.e., the content-type header value).

Return Type

(string)

The content-type header value as a string

getJsonPayload

function getJsonPayload() returns json | ClientError
Isolated Function

Extract json payload from the response. If the content type is not JSON, an http:ClientError is returned.

Return Type

(json | ClientError)

The json payload or http:ClientError in case of errors

getXmlPayload

function getXmlPayload() returns xml | ClientError
Isolated Function

Extracts xml payload from the response.

Return Type

(xml | ClientError)

The xml payload or http:ClientError in case of errors

getTextPayload

function getTextPayload() returns string | ClientError
Isolated Function

Extracts text payload from the response.

Return Type

(string | ClientError)

The string representation of the message payload or http:ClientError in case of errors

getByteStream

function getByteStream(int arraySize) returns stream<byte[ ], Error?> | ClientError
Isolated Function

Gets the response payload as a stream of byte[], except in the case of multiparts. To retrieve multiparts, use Response.getBodyParts().

Parameters

  • arraySize int (default 8196)
  • A defaultable parameter to state the size of the byte array. Default size is 8KB

Return Type

(stream<byte[ ], Error?> | ClientError)

A byte stream from which the message payload can be read or http:ClientError in case of errors

getBinaryPayload

function getBinaryPayload() returns byte[ ] | ClientError
Isolated Function

Gets the response payload as a byte[].

Return Type

(byte[ ] | ClientError)

The byte[] representation of the message payload or http:ClientError in case of errors

getBodyParts

function getBodyParts() returns Entity[ ] | ClientError
Isolated Function

Extracts body parts from the response. If the content type is not a composite media type, an error is returned.

Return Type

(Entity[ ] | ClientError)

The body parts as an array of entities or else an http:ClientError if there were any errors in constructing the body parts from the response

setETag

function setETag(json | xml | string | byte[ ] payload)
Isolated Function

Sets the etag header for the given payload. The ETag is generated using a CRC32 hash isolated function.

Parameters

  • payload json | xml | string | byte[ ]
  • The payload for which the ETag should be set

setLastModified

function setLastModified()
Isolated Function

Sets the current time as the last-modified header.

setJsonPayload

function setJsonPayload(json payload, string contentType)
Isolated Function

Sets a json as the payload.

Parameters

  • payload json
  • The json payload

  • contentType string (default "application/json")
  • The content type of the payload. Set this to override the default content-type header value for json

setXmlPayload

function setXmlPayload(xml payload, string contentType)
Isolated Function

Sets an xml as the payload

Parameters

  • payload xml
  • The xml payload

  • contentType string (default "application/xml")
  • The content type of the payload. Set this to override the default content-type header value for xml

setTextPayload

function setTextPayload(string payload, string contentType)
Isolated Function

Sets a string as the payload.

Parameters

  • payload string
  • The string payload

  • contentType string (default "text/plain")
  • The content type of the payload. Set this to override the default content-type header value for string

setBinaryPayload

function setBinaryPayload(byte[ ] payload, string contentType)
Isolated Function

Sets a byte[] as the payload.

Parameters

  • payload byte[ ]
  • The byte[] payload

  • contentType string (default "application/octet-stream")
  • The content type of the payload. Set this to override the default content-type header value for byte[]

setBodyParts

function setBodyParts(Entity[ ] bodyParts, string contentType)
Isolated Function

Set multiparts as the payload.

Parameters

  • bodyParts Entity[ ]
  • The entities which make up the message body

  • contentType string (default "multipart/form-data")
  • The content type of the top level message. Set this to override the default content-type header value

setFileAsPayload

function setFileAsPayload(string filePath, string contentType)
Isolated Function

Sets the content of the specified file as the entity body of the response.

Parameters

  • filePath string
  • Path to the file to be set as the payload

  • contentType string (default "application/octet-stream")
  • The content type of the specified file. Set this to override the default content-type header value

setByteStream

function setByteStream(stream<byte[ ], Error?> byteStream, string contentType)
Isolated Function

Sets a Stream as the payload. This method overrides any existing content-type headers with the default content-type, which is application/octet-stream. This default value can be overridden by passing the content-type as an optional parameter.

Parameters

  • byteStream stream<byte[ ], Error?>
  • Byte stream, which needs to be set to the request

  • contentType string (default "application/octet-stream")
  • Content-type to be used with the payload. This is an optional parameter. The application/octet-stream is the default value

setPayload

function setPayload(string | xml | json | byte[ ] | Entity[ ] | stream<byte[ ], Error?> payload)
Isolated Function

Sets the response payload.

Parameters

  • payload string | xml | json | byte[ ] | Entity[ ] | stream<byte[ ], Error?>
  • Payload can be of type string, xml, json, byte[], stream<byte[], io:Error?> or Entity[] (i.e: a set of body parts)

addCookie

function addCookie(Cookie cookie)
Isolated Function

Adds the cookie to response.

Parameters

  • cookie Cookie
  • The cookie, which is added to response

removeCookiesFromRemoteStore

function removeCookiesFromRemoteStore(Cookie... cookiesToRemove)
Isolated Function

Deletes the cookies in the client's cookie store.

Parameters

  • cookiesToRemove Cookie...
  • Cookies to be deleted

getCookies

function getCookies() returns Cookie[ ]
Isolated Function

Gets cookies from the response.

Return Type

(Cookie[ ])

An array of cookie objects, which are included in the response