x/registry/listener.go
2022-04-04 12:44:35 +08:00

27 lines
526 B
Go

package registry
import (
"github.com/go-gost/core/listener"
"github.com/go-gost/core/logger"
)
type NewListener func(opts ...listener.Option) listener.Listener
type listenerRegistry struct {
registry
}
func (r *listenerRegistry) Register(name string, v NewListener) error {
if err := r.registry.Register(name, v); err != nil {
logger.Default().Fatal(err)
}
return nil
}
func (r *listenerRegistry) Get(name string) NewListener {
if v := r.registry.Get(name); v != nil {
return v.(NewListener)
}
return nil
}