diff options
-rw-r--r-- | Makefile | 14 | ||||
-rw-r--r-- | client/Makefile | 6 | ||||
-rw-r--r-- | server/Makefile | 5 | ||||
-rw-r--r-- | server/dispatcher.erl | 27 |
4 files changed, 43 insertions, 9 deletions
@@ -8,12 +8,20 @@ COMMON-SRC=$(wildcard common/*.erl) COMMON-BIN=$(COMMON-SRC:.erl=.beam) -.PHONY: all client server clean +.PHONY: all client server clean clean-client clean-server all: client server -clean: - -$(RM) $(CLIENT-BIN) $(SERVER-BIN) $(COMMON-BIN) +clean: clean-client clean-server + +clean-client: clean-common + -$(RM) $(CLIENT-BIN) + +clean-server: clean-common + -$(RM) $(SERVER-BIN) + +clean-common: + -$(RM) $(COMMON-BIN) client: $(CLIENT-BIN) $(COMMON-BIN) diff --git a/client/Makefile b/client/Makefile new file mode 100644 index 0000000..17cc9a0 --- /dev/null +++ b/client/Makefile @@ -0,0 +1,6 @@ +all: + -$(MAKE) -C.. client + +clean: + -$(MAKE) -C.. clean-client + diff --git a/server/Makefile b/server/Makefile new file mode 100644 index 0000000..a1c185b --- /dev/null +++ b/server/Makefile @@ -0,0 +1,5 @@ +all: + -$(MAKE) -C.. server + +clean: + -$(MAKE) -C.. clean-server diff --git a/server/dispatcher.erl b/server/dispatcher.erl index 77e4ab9..e5e0572 100644 --- a/server/dispatcher.erl +++ b/server/dispatcher.erl @@ -2,15 +2,29 @@ -export([start/0, init/0, handle/2]). start() -> + %% load server module from common directory, + %% used form server and client code:purge(server), code:load_abs("../common/server"), - spawn(media, init, []), + %% spawn media backend in seperat process + try spawn(media, init, []) of + _ -> + io:format("Media-Backend started!~n") + catch + _: Why -> + io:format("Error starting media backend: ~w! Exiting.~n", [Why]), + exit(1) + end, - case server:start(dis, dispatcher) of + %% start server (registered as dis) + %% server-module will call handle if message arrives and init to + %% initialize the status + try server:start(dis, dispatcher) of true -> - io:format("Server started... ~n"), - true; + io:format("Server started!~n"), + true + catch _ -> io:format("Error starting server! Exiting.~n"), exit(1) @@ -44,5 +58,6 @@ handle({login, {Node, User, Password}}, Dict) -> handle({'EXIT', _, _}, Dict) -> Dict; -handle(_, Dict) -> - {{error, unknown_command}, Dict}. +handle(Cmd, Dict) -> + %% standard command, to find transmission errors + {{error, {unknown_command, Cmd}}, Dict}. |