Skip to content

Commit

Permalink
Merge pull request #24 from biyooon-ex/bugfix_config_namespace
Browse files Browse the repository at this point in the history
fix Config alias
  • Loading branch information
takasehideki authored Feb 10, 2025
2 parents b2eb969 + 89895f2 commit 2a51a73
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 24 deletions.
6 changes: 3 additions & 3 deletions lib/giocci_relay/application.ex
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ defmodule GiocciRelay.Application do
@moduledoc false

use Application
alias GiocciRelay.Config
alias GiocciRelay.Config, as: RelayConfig

@impl true
def start(_type, _args) do
Expand All @@ -21,8 +21,8 @@ defmodule GiocciRelay.Application do

# # TODO: EngineのリストはDotenvyから読み込むようにする
# engines = ["engine1", "engine2", "engine3", "engine4", "engine5"]
engines = Config.engine_node_name()
client = Config.client_node_name()
engines = RelayConfig.engine_node_name()
client = RelayConfig.client_node_name()

giocci_relay_zenoh_engine_childlen =
for engine <- engines do
Expand Down
16 changes: 8 additions & 8 deletions lib/giocci_relay/client_session_node.ex
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
defmodule GiocciRelay.ClientSessionNode do
use GenServer
alias GiocciRelay.Config
alias GiocciRelay.Config, as: RelayConfig
require Logger

def start_link(client_name) do
relay_name = Config.my_node_name()
relay_name = RelayConfig.my_node_name()
Logger.info("(GiocciRelay) Start GenServer ID: " <> client_name <> relay_name)
## RelayのZenohセッションを起動
{:ok, session} = Zenohex.open()
Expand All @@ -13,23 +13,23 @@ defmodule GiocciRelay.ClientSessionNode do
{:ok, subscriber} =
Zenohex.Session.declare_subscriber(
session,
Config.key_prefix() <> "giocci/client_to_relay/" <> client_name <> "/" <> relay_name
RelayConfig.key_prefix() <> "giocci/client_to_relay/" <> client_name <> "/" <> relay_name
)

Logger.info(
"(GiocciRelay) Start subscriber (client to relay) :" <>
Config.key_prefix() <> "giocci/client_to_relay/" <> client_name <> "/" <> relay_name
RelayConfig.key_prefix() <> "giocci/client_to_relay/" <> client_name <> "/" <> relay_name
)

{:ok, publisher} =
Zenohex.Session.declare_publisher(
session,
Config.key_prefix() <> "giocci/relay_to_client/" <> relay_name <> "/" <> client_name
RelayConfig.key_prefix() <> "giocci/relay_to_client/" <> relay_name <> "/" <> client_name
)

Logger.info(
"(GiocciRelay) Start publisher (relay to client) :" <>
Config.key_prefix() <> "giocci/relay_to_client/" <> relay_name <> "/" <> client_name
RelayConfig.key_prefix() <> "giocci/relay_to_client/" <> relay_name <> "/" <> client_name
)

id_string = client_name <> relay_name
Expand All @@ -55,9 +55,9 @@ defmodule GiocciRelay.ClientSessionNode do
## Clientから送られたデータを解析して、やりたい動作ごとに割り振るコールバック関数
def callback_from_client(_state, message) do
message_value = Map.get(message, :value)
relay_name = Config.my_node_name()
relay_name = RelayConfig.my_node_name()

engine_name_tosend = Config.engine_name_tosend()
engine_name_tosend = RelayConfig.engine_name_tosend()

## msgをバイナリからlistにもどす
message_readable =
Expand Down
21 changes: 10 additions & 11 deletions lib/giocci_relay/engine_session_node.ex
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
defmodule GiocciRelay.EngineSessionNode do
use GenServer
alias GiocciRelay.Config
alias GiocciRelay.ClientSessionNode
alias GiocciRelay.Config, as: RelayConfig
require Logger

def start_link(engine_name) do
relay_name = Config.my_node_name()
relay_name = RelayConfig.my_node_name()
Logger.info("(GiocciRelay) Start GenServer ID:" <> relay_name <> engine_name)

## RelayのZenohセッションを起動
Expand All @@ -15,24 +14,24 @@ defmodule GiocciRelay.EngineSessionNode do
{:ok, subscriber} =
Zenohex.Session.declare_subscriber(
session,
Config.key_prefix() <> "giocci/engine_to_relay/" <> engine_name <> "/" <> relay_name
RelayConfig.key_prefix() <> "giocci/engine_to_relay/" <> engine_name <> "/" <> relay_name
)

Logger.info(
"(GiocciRelay) Start subscriber(engine to relay) :" <>
Config.key_prefix() <> "giocci/engine_to_relay/" <> engine_name <> "/" <> relay_name
RelayConfig.key_prefix() <> "giocci/engine_to_relay/" <> engine_name <> "/" <> relay_name
)

## pubキーをたてる
{:ok, publisher} =
Zenohex.Session.declare_publisher(
session,
Config.key_prefix() <> "giocci/relay_to_engine/" <> relay_name <> "/" <> engine_name
RelayConfig.key_prefix() <> "giocci/relay_to_engine/" <> relay_name <> "/" <> engine_name
)

Logger.info(
"(GiocciRelay) Start publisher (relay to engine) :" <>
Config.key_prefix() <> "giocci/relay_to_engine/" <> relay_name <> "/" <> engine_name
RelayConfig.key_prefix() <> "giocci/relay_to_engine/" <> relay_name <> "/" <> engine_name
)

id_string = relay_name <> engine_name
Expand All @@ -59,9 +58,9 @@ defmodule GiocciRelay.EngineSessionNode do
def callback_from_engine(_state, message) do
message_value = Map.get(message, :value)

relay_name = Config.my_node_name()
relay_name = RelayConfig.my_node_name()

client_name_tosend = Config.client_name_tosend()
client_name_tosend = RelayConfig.client_name_tosend()

id = (client_name_tosend <> relay_name) |> String.to_atom()
## publisherをセッションから作成しpublishする
Expand All @@ -81,12 +80,12 @@ defmodule GiocciRelay.EngineSessionNode do
{:noreply, state}
end

defp create_session([]) do
def create_session([]) do
:ok
end

## セッションを作る関数
defp create_session(engine_list) do
def create_session(engine_list) do
[engine_name | tail] = engine_list
start_link(engine_name)
create_session(tail)
Expand Down
6 changes: 4 additions & 2 deletions lib/giocci_relay_zenoh.ex
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
defmodule GiocciRelayZenoh do
alias GiocciRelay.Config, as: RelayConfig

@moduledoc """
## Examples
Expand All @@ -10,7 +12,7 @@ defmodule GiocciRelayZenoh do
"""
# @deprecated
def setup_relay() do
ClientSessionNode.start_link(Config.client_node_name())
EngineSessionNode.create_session(Config.engine_node_name())
GiocciRelay.ClientSessionNode.start_link(RelayConfig.client_node_name())
GiocciRelay.EngineSessionNode.create_session(RelayConfig.engine_node_name())
end
end

0 comments on commit 2a51a73

Please sign in to comment.