View Source GRPC.Server.Adapters.Cowboy (grpc v0.9.0)

A server (b:GRPC.Server.Adapter) adapter using :cowboy.

Cowboy requests will be stored in the :payload field of the GRPC.Server.Stream.

Summary

Functions

Link to this function

child_spec(endpoint, servers, port, opts)

View Source
@spec child_spec(
  atom(),
  %{required(String.t()) => [module()]},
  non_neg_integer(),
  Keyword.t()
) ::
  Supervisor.child_spec()

Return a child_spec to start server. See GRPC.Server.Adapters.Cowboy.start/4 for a list of supported options.

@spec read_body(GRPC.Server.Adapter.state()) :: {:ok, binary()}
@spec reading_stream(GRPC.Server.Adapter.state()) :: Enumerable.t()
Link to this function

send_trailers(map, trailers)

View Source
Link to this function

set_compressor(map, compressor)

View Source
Link to this function

set_headers(map, headers)

View Source
Link to this function

set_resp_trailers(map, trailers)

View Source
Link to this function

start(endpoint, servers, port, opts)

View Source

Starts a Cowboy server. Only used in starting a server manually using GRPC.Server.start(servers). Otherwise GRPC.Server.Adapters.Cowboy.child_spec/4 is used.

The available options below are a subset of ranch_tcp's options.

Options

  • :net - If using :inet (IPv4 only - the default) or :inet6 (IPv6)
  • :ip - The IP to bind the server to. Must be either a tuple in the format {a, b, c, d} with each value in 0..255 for IPv4, or a tuple in the format {a, b, c, d, e, f, g, h} with each value in 0..65535 for IPv6, or a tuple in the format {:local, path} for a unix socket at the given path. If both :net and :ip options are given, make sure they are compatible (i.e. give a IPv4 for :inet and IPv6 for :inet6). The default is to listen on all interfaces.
  • :ipv6_v6only - If true, only bind on IPv6 addresses (default: false).
Link to this function

start_link(scheme, endpoint, servers, arg)

View Source
@spec start_link(atom(), atom(), %{required(String.t()) => [module()]}, any()) ::
  {:ok, pid()} | {:error, any()}