View Source Antikythera.G2gResponse (antikythera v0.5.1)

Summary

Functions

Type-aware getter for body.

Type-aware setter for body.

Type-aware getter for cookies.

Type-aware setter for cookies.

Creates a new version of Antikythera.G2gResponse struct by body decompression and decoding.

Type-aware getter for headers.

Type-aware setter for headers.

Creates a new instance of Antikythera.G2gResponse by using the given dict.

A variant of new/1 which returns t or raise if validation fails.

Type-aware getter for status.

Type-aware setter for status.

Updates an existing instance of Antikythera.G2gResponse with the given dict. The values in the dict are validated by each field's valid?/1 function. Returns {:ok, valid_struct} or {:error, reason}.

A variant of update/2 which returns t or raise if validation fails. In other words, update/2 followed by Croma.Result.get!/1.

Checks if the given value belongs to t/0 or not.

Types

Functions

@spec body(t()) :: Antikythera.Http.Body.t()

Type-aware getter for body.

@spec body(t(), Antikythera.Http.Body.t()) :: t()

Type-aware setter for body.

@spec cookies(t()) :: Antikythera.Http.SetCookiesMap.t()

Type-aware getter for cookies.

@spec cookies(t(), Antikythera.Http.SetCookiesMap.t()) :: t()

Type-aware setter for cookies.

@spec decode_body(t()) :: t()

Creates a new version of Antikythera.G2gResponse struct by body decompression and decoding.

This function decompresses body of g2g response according to content-encoding and then decodes the uncompressed body according to content-type. If decompressed, content-encoding header is removed from the returned Antikythera.G2gResponse.

This function is used internally in G2g.send/{1,2} (i.e. body decoding is done automatically). Basically gear implementations do not need this function. The typical use case of this function (in conjunction with G2g.send_without_decoding/{1,2}) is to avoid unnecessary encoding/decoding when a gear action

  • returns the g2g response as it is, and
  • reads body of the g2g response.
@spec headers(t()) :: Antikythera.Http.Headers.t()

Type-aware getter for headers.

@spec headers(t(), Antikythera.Http.Headers.t()) :: t()

Type-aware setter for headers.

@spec new(term()) :: Croma.Result.t(t())

Creates a new instance of Antikythera.G2gResponse by using the given dict.

Returns {:ok, valid_struct} or {:error, reason}.

The values in the dict are validated by each field's valid?/1 function. If the value was invalid, it will be passed to new/1 of the field

For missing fields, followings will be tried:

  • default/0 of each field type
  • new/1 of each field type, with empty map as input
@spec new!(term()) :: t()

A variant of new/1 which returns t or raise if validation fails.

In other words, new/1 followed by Croma.Result.get!/1.

@spec status(t()) :: Antikythera.Http.Status.Int.t()

Type-aware getter for status.

@spec status(t(), Antikythera.Http.Status.Int.t()) :: t()

Type-aware setter for status.

@spec update(t(), Dict.t()) :: Croma.Result.t(t())

Updates an existing instance of Antikythera.G2gResponse with the given dict. The values in the dict are validated by each field's valid?/1 function. Returns {:ok, valid_struct} or {:error, reason}.

@spec update!(t(), Dict.t()) :: t()

A variant of update/2 which returns t or raise if validation fails. In other words, update/2 followed by Croma.Result.get!/1.

@spec valid?(term()) :: boolean()

Checks if the given value belongs to t/0 or not.