defmodule <%= inspect @module %> do @moduledoc false use Agent alias <%= inspect @module %>.State def start_link(_opts \\ []) do Agent.start_link(fn -> State.new() end) end def set_greeting(server, greeting) do Agent.update(server, &State.set_greeting(&1, greeting)) end def get_greeting(server) do Agent.get(server, &State.get_greeting(&1)) end <%= if @simulator.options.response_stubs? do %> def get_response_stub(server, route_id) do Agent.get(server, &State.get_response_stub(&1, route_id)) end def stub_response(server, route_id, response_id) do Agent.update(server, &State.stub_response(&1, route_id, response_id)) end def clear_stubbed_responses(server, route_id) do Agent.update(server, &State.clear_stubbed_responses(&1, route_id)) end <% end %> end