https://github.com/thetardigrade/golang-events
This Go package allows you to set handler functions that run when named events occur.
https://github.com/thetardigrade/golang-events
event-management event-manager events go golang
Last synced: 4 months ago
JSON representation
This Go package allows you to set handler functions that run when named events occur.
- Host: GitHub
- URL: https://github.com/thetardigrade/golang-events
- Owner: theTardigrade
- License: gpl-2.0
- Created: 2022-02-05T20:24:51.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-02-14T12:23:17.000Z (over 2 years ago)
- Last Synced: 2024-12-31T17:49:45.508Z (5 months ago)
- Topics: event-management, event-manager, events, go, golang
- Language: Go
- Homepage:
- Size: 33.2 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# golang-events
This Go package allows you to set handler functions that run when named events occur.
[](https://pkg.go.dev/github.com/theTardigrade/golang-events) [](https://goreportcard.com/report/github.com/theTardigrade/golang-events)
## Example
```golang
package mainimport (
"fmt"
"time"events "github.com/theTardigrade/golang-events"
)func main() {
manager := events.NewManager()manager.Add(events.AddOptions{
Handler: func() {
fmt.Println("THIS HANDLER IS CALLED WHEN EVENT ONE RUNS")
},
Name: "one",
ShouldWaitTillDone: true,
})manager.Add(events.AddOptions{
Handler: func() {
fmt.Println("THIS HANDLER IS CALLED WHEN EVENT TWO RUNS")
},
Name: "two",
ShouldWaitTillDone: true,
})manager.Add(events.AddOptions{
Handler: func() {
fmt.Println("THIS HANDLER IS CALLED WHEN EITHER EVENT ONE OR EVENT TWO RUNS")
},
Names: []string{"one", "two"},
ShouldWaitTillDone: true,
})fmt.Println("***")
manager.Run("one")
fmt.Println("***")
manager.Run("two")
fmt.Println("***")
manager.Run("one", "two")
fmt.Println("***")
manager.RunAll()
fmt.Println("***")
}
```## Support
If you use this package, or find any value in it, please consider donating:
[](https://ko-fi.com/S6S2EIRL0)