ExRets v0.1.1 ExRets.CapabilityUris View Source

URIs for issuing RETS requests.

Link to this section Summary

Types

t()

URIs for issuing RETS requests.

Functions

Parses a capability URL list returned as part of a login response.

Link to this section Types

Link to this type

t()

View Source (since 0.1.0)
t() :: %ExRets.CapabilityUris{
  action: URI.t() | nil,
  change_password: URI.t() | nil,
  get_metadata: URI.t() | nil,
  get_object: URI.t() | nil,
  get_payload_list: URI.t() | nil,
  login: URI.t() | nil,
  login_complete: URI.t() | nil,
  logout: URI.t() | nil,
  post_object: URI.t() | nil,
  search: URI.t() | nil,
  update: URI.t() | nil
}

URIs for issuing RETS requests.

Link to this section Functions

Link to this function

parse(key_value_body, login_uri)

View Source (since 0.1.0)

Parses a capability URL list returned as part of a login response.

Uses host information from the login URI if a returned capability URL does not include host information.

Examples

iex> login_uri = URI.parse("https://example.com/login")
iex> ExRets.CapabilityUris.parse("Login = /login\nSearch = /search", login_uri)
%ExRets.CapabilityUris{
  login: %URI{
    authority: "example.com",
    host: "example.com",
    path: "/login",
    port: 443,
    scheme: "https"
  },
  search: %URI{
    authority: "example.com",
    host: "example.com",
    path: "/search",
    port: 443,
    scheme: "https"
  }
}

iex> login_uri = URI.parse("https://example.com/login")
iex> ExRets.CapabilityUris.parse("Search = http://different.example.com/search", login_uri)
%ExRets.CapabilityUris{
  search: %URI{
    authority: "different.example.com",
    host: "different.example.com",
    path: "/search",
    port: 80,
    scheme: "http"
  }
}