https://github.com/vectorhacker/mediator
Simple mediator implementation for Go
https://github.com/vectorhacker/mediator
Last synced: 5 months ago
JSON representation
Simple mediator implementation for Go
- Host: GitHub
- URL: https://github.com/vectorhacker/mediator
- Owner: vectorhacker
- License: mit
- Created: 2021-12-30T23:07:11.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-12-31T15:39:55.000Z (over 4 years ago)
- Last Synced: 2024-06-20T13:41:01.964Z (almost 2 years ago)
- Language: Go
- Size: 11.7 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# mediator
Simple mediator implementation for Go
[](https://goreportcard.com/report/github.com/vectorhacker/mediator)

[](https://github.com/vectorhacker/mediator/actions/workflows/go.yml)
Example
```go
type MessageHandler struct{}
type Message struct {
Foo string
}
type Response struct {
Result string
}
func (h MessageHandler) Handle(ctx context.Context, msg *Message) (Response, error) {
return Response{ msg.Foo + " bar "}, nil
}
m, err := mediator.New(mediator.WithHandler(&MessageHandler{}))
r, err := m.Send(context.Background(), &Message{ "foo" })
// ...
```