mirror of
https://github.com/ScuroNeko/mtg.git
synced 2026-09-01 10:14:01 +03:00
Add event stream module
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
package mtglib
|
||||
|
||||
import (
|
||||
"net"
|
||||
"time"
|
||||
)
|
||||
|
||||
type eventBase struct {
|
||||
CreatedAt time.Time
|
||||
ConnID string
|
||||
}
|
||||
|
||||
func (e eventBase) ConnectionID() string {
|
||||
return e.ConnID
|
||||
}
|
||||
|
||||
type EventStart struct {
|
||||
eventBase
|
||||
|
||||
RemoteIP net.IP
|
||||
}
|
||||
|
||||
type EventFinish struct {
|
||||
eventBase
|
||||
}
|
||||
@@ -19,10 +19,21 @@ type Network interface {
|
||||
|
||||
type AntiReplayCache interface {
|
||||
SeenBefore(data []byte) bool
|
||||
Shutdown()
|
||||
}
|
||||
|
||||
type IPBlocklist interface {
|
||||
Contains(net.IP) bool
|
||||
Shutdown()
|
||||
}
|
||||
|
||||
type Event interface {
|
||||
ConnectionID() string
|
||||
}
|
||||
|
||||
type EventStream interface {
|
||||
Send(context.Context, Event)
|
||||
Shutdown()
|
||||
}
|
||||
|
||||
type Logger interface {
|
||||
|
||||
Reference in New Issue
Block a user