@impl true
def handle_continue({:registered, registrations}, state),
- do: {:noreply, %{state | registrations: registrations}}
+ do: {:noreply, add_regs(state, registrations)}
@impl true
def terminate(_reason, %{
end)
end
- def do_init(_opts), do: %{client_name: nil}
+ def do_init(_opts), do: %{client_name: nil, registrations: nil}
def handle_invocation_block({:ok, al, kw, state}, id) do
Client.yield(state.client_name, %Yield{request_id: id, arg_list: al, arg_kw: kw})
state
end
+ defp add_regs(state, regs) when is_struct(state) do
+ struct(state, %{registrations: regs})
+ end
+
+ defp add_regs(state, regs), do: Map.put(state, :registrations, regs)
+
defp add_client(state, cn) when is_struct(state) do
struct(state, %{client_name: cn})
end