From 08263df1107c94324cc7a00e8fd146791f7e9774 Mon Sep 17 00:00:00 2001 From: Helmut Merz Date: Wed, 7 Jun 2023 17:37:39 +0200 Subject: [PATCH] move HandleMsg() to lib --- app/app.go | 3 +-- lib/core/core.go | 2 +- lib/lib.go | 7 ++++++- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/app.go b/app/app.go index 089a600..351c493 100644 --- a/app/app.go +++ b/app/app.go @@ -8,7 +8,6 @@ import ( "git.sr.ht/~cco/go-scopes/config" "git.sr.ht/~cco/go-scopes/lib" - "git.sr.ht/~cco/go-scopes/lib/context" "git.sr.ht/~cco/go-scopes/lib/message" ) @@ -49,7 +48,7 @@ func step(ctx lib.Context, sig <-chan os.Signal) bool { //ctx.LogInfo("Dispatcher stopped", m.Map{}) return false } - return context.HandleMsg(ctx, msg) + return lib.HandleMsg(ctx, msg) case <-ctx.Done(): return false } diff --git a/lib/core/core.go b/lib/core/core.go index eb8358b..51cdd88 100644 --- a/lib/core/core.go +++ b/lib/core/core.go @@ -23,7 +23,7 @@ func Step(ctx lib.Context) (loop bool) { //defer ctx.LogCatch("Step") select { case msg := <-ctx.Mailbox(): - loop = ctx.HandleMsg(msg) + loop = lib.HandleMsg(ctx, msg) case <-ctx.Done(): loop = false } diff --git a/lib/lib.go b/lib/lib.go index 1ad6241..dfc60fe 100644 --- a/lib/lib.go +++ b/lib/lib.go @@ -4,6 +4,7 @@ package lib import ( stdlib_context "context" + "fmt" "sync" ) @@ -41,7 +42,6 @@ type Context interface { State() ContextState WithState(ContextState) Context Mailbox() chan Message - HandleMsg(Message) bool WaitGroup() *sync.WaitGroup Stop() } @@ -79,6 +79,11 @@ func RunCtx(ctx Context, fct Proc) { }() } +func HandleMsg(ctx Context, msg Message) bool { + fmt.Println("context.HandleMsg ", msg) + return ctx.Config().MessageHandler()(ctx, msg) +} + func Send(ctx Context, addr Address, msg Message) { if srv, ok := ctx.Services()[addr.Service()]; ok { srv.Mailbox() <- msg