tile38/internal/endpoint/local.go

35 lines
741 B
Go
Raw Normal View History

2018-08-14 03:05:30 +03:00
package endpoint
// LocalPublisher is used to publish local notifications
2018-08-14 03:05:30 +03:00
type LocalPublisher interface {
Publish(channel string, message ...string) int
}
// LocalConn is an endpoint connection
type LocalConn struct {
ep Endpoint
publisher LocalPublisher
}
func newLocalConn(ep Endpoint, publisher LocalPublisher) *LocalConn {
return &LocalConn{
ep: ep,
publisher: publisher,
}
}
// Expired returns true if the connection has expired
func (conn *LocalConn) Expired() bool {
return false
}
2022-09-25 16:28:17 +03:00
// ExpireNow forces the connection to expire
func (conn *LocalConn) ExpireNow() {
}
2018-08-14 03:05:30 +03:00
// Send sends a message
func (conn *LocalConn) Send(msg string) error {
conn.publisher.Publish(conn.ep.Local.Channel, msg)
return nil
}