Crosswake.Bridge.Contract (crosswake v0.1.0)

View Source

Typed, versioned, request/reply-only contract for the bounded Phase 3 bridge.

Summary

Functions

command_supported?(command)

@spec command_supported?(String.t()) :: boolean()

commands()

@spec commands() :: [String.t()]

deny_reply(request, denial)

@spec deny_reply(Crosswake.Bridge.Contract.Request.t(), Crosswake.Bridge.Denial.t()) ::
  Crosswake.Bridge.Contract.Reply.t()

new_reply(attrs)

@spec new_reply(keyword()) :: Crosswake.Bridge.Contract.Reply.t()

new_request(attrs)

@spec new_request(keyword()) :: Crosswake.Bridge.Contract.Request.t()

ok_reply(request, payload \\ %{})

@spec ok_reply(Crosswake.Bridge.Contract.Request.t(), map()) ::
  Crosswake.Bridge.Contract.Reply.t()

protocol()

@spec protocol() :: String.t()

to_map(request)

@spec to_map(
  Crosswake.Bridge.Contract.Request.t()
  | Crosswake.Bridge.Contract.Reply.t()
) :: map()

version()

@spec version() :: String.t()