···11+defmodule SowerAgent do
22+ @moduledoc """
33+ Documentation for `SowerAgent`.
44+ """
55+66+ @doc """
77+ Hello world.
88+99+ ## Examples
1010+1111+ iex> SowerAgent.hello()
1212+ :world
1313+1414+ """
1515+ def hello do
1616+ :world
1717+ end
1818+end
+8
agent/test/sower_agent_test.exs
···11+defmodule SowerAgentTest do
22+ use ExUnit.Case
33+ doctest SowerAgent
44+55+ test "greets the world" do
66+ assert SowerAgent.hello() == :world
77+ end
88+end
client-elixir/.formatter.exs
agent/.formatter.exs
+1-1
client-elixir/.gitignore
agent/.gitignore
···1717*.ez
18181919# Ignore package tarball (built via "mix hex.build").
2020-sower_client-*.tar
2020+sower_agent-*.tar
21212222# Temporary files, for example, from tests.
2323/tmp/
+4-4
client-elixir/README.md
agent/README.md
···11-# SowerClient
11+# SowerAgent
2233**TODO: Add description**
4455## Installation
6677If [available in Hex](https://hex.pm/docs/publish), the package can be installed
88-by adding `sower_client` to your list of dependencies in `mix.exs`:
88+by adding `sower_agent` to your list of dependencies in `mix.exs`:
991010```elixir
1111def deps do
1212 [
1313- {:sower_client, "~> 0.1.0"}
1313+ {:sower_agent, "~> 0.1.0"}
1414 ]
1515end
1616```
17171818Documentation can be generated with [ExDoc](https://github.com/elixir-lang/ex_doc)
1919and published on [HexDocs](https://hexdocs.pm). Once published, the docs can
2020-be found at <https://hexdocs.pm/sower_client>.
2020+be found at <https://hexdocs.pm/sower_agent>.
2121
···11-defmodule SowerClient.Application do
11+defmodule SowerAgent.Application do
22 # See https://hexdocs.pm/elixir/Application.html
33 # for more information on OTP Applications
44 @moduledoc false
···88 @impl true
99 def start(_type, _args) do
1010 children = [
1111- # Starts a worker by calling: SowerClient.Worker.start_link(arg)
1212- {SowerClient.SocketClient, []}
1111+ # Starts a worker by calling: SowerAgent.Worker.start_link(arg)
1212+ {SowerAgent.SocketClient, []}
1313 ]
14141515 # See https://hexdocs.pm/elixir/Supervisor.html
1616 # for other strategies and supported options
1717- opts = [strategy: :one_for_one, name: SowerClient.Supervisor]
1717+ opts = [strategy: :one_for_one, name: SowerAgent.Supervisor]
1818 Supervisor.start_link(children, opts)
1919 end
2020end
···11-defmodule SowerClient.SocketClient do
11+defmodule SowerAgent.SocketClient do
22 use Slipstream
3344 require Logger
···36363737 @impl Slipstream
3838 def init(_args) do
3939- config = Application.fetch_env!(:sower_client, __MODULE__)
3939+ config = Application.fetch_env!(:sower_agent, __MODULE__)
40404141 case connect(config) do
4242 {:ok, socket} ->
+3-3
client-elixir/mix.exs
agent/mix.exs
···11-defmodule SowerClient.MixProject do
11+defmodule SowerAgent.MixProject do
22 use Mix.Project
3344 def project do
55 [
66- app: :sower_client,
66+ app: :sower_agent,
77 version: "0.1.0",
88 elixir: "~> 1.18",
99 start_permanent: Mix.env() == :prod,
···1515 def application do
1616 [
1717 extra_applications: [:logger],
1818- mod: {SowerClient.Application, []}
1818+ mod: {SowerAgent.Application, []}
1919 ]
2020 end
2121
client-elixir/mix.lock
agent/mix.lock
-8
client-elixir/test/sower_client_test.exs
···11-defmodule SowerClientTest do
22- use ExUnit.Case
33- doctest SowerClient
44-55- test "greets the world" do
66- assert SowerClient.hello() == :world
77- end
88-end