Current section

Files

Jump to
electric_client lib electric client fetch.ex
Raw

lib/electric/client/fetch.ex

defmodule Electric.Client.Fetch do
alias Electric.Client.Fetch.{Request, Response}
alias Electric.Client
@callback fetch(Request.t(), Keyword.t()) ::
{:ok, Response.t()}
| {:error, Response.t() | term()}
@behaviour Electric.Client.Fetch.Pool
def request(client, request, opts \\ [])
@impl Electric.Client.Fetch.Pool
def request(%Client{} = client, %Request{} = request, _opts) do
%{pool: {module, opts}} = client
apply(module, :request, [client, request, opts])
end
end