revert change for Listener
This commit is contained in:
parent
2e40afe535
commit
20e7528b25
@ -14,7 +14,7 @@ var (
|
|||||||
// Listener is a server listener, just like a net.Listener.
|
// Listener is a server listener, just like a net.Listener.
|
||||||
type Listener interface {
|
type Listener interface {
|
||||||
Init(metadata.Metadata) error
|
Init(metadata.Metadata) error
|
||||||
Accept() (net.Conn, metadata.Metadata, error)
|
Accept() (net.Conn, error)
|
||||||
Addr() net.Addr
|
Addr() net.Addr
|
||||||
Close() error
|
Close() error
|
||||||
}
|
}
|
||||||
|
@ -57,10 +57,10 @@ func (l *rtcpListener) Init(md md.Metadata) (err error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *rtcpListener) Accept() (conn net.Conn, md md.Metadata, err error) {
|
func (l *rtcpListener) Accept() (conn net.Conn, err error) {
|
||||||
select {
|
select {
|
||||||
case <-l.closed:
|
case <-l.closed:
|
||||||
return nil, nil, net.ErrClosed
|
return nil, net.ErrClosed
|
||||||
default:
|
default:
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -70,7 +70,7 @@ func (l *rtcpListener) Accept() (conn net.Conn, md md.Metadata, err error) {
|
|||||||
connector.MuxBindOption(true),
|
connector.MuxBindOption(true),
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, listener.NewAcceptError(err)
|
return nil, listener.NewAcceptError(err)
|
||||||
}
|
}
|
||||||
l.ln = metrics.WrapListener(l.options.Service, l.ln)
|
l.ln = metrics.WrapListener(l.options.Service, l.ln)
|
||||||
}
|
}
|
||||||
@ -78,7 +78,7 @@ func (l *rtcpListener) Accept() (conn net.Conn, md md.Metadata, err error) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
l.ln.Close()
|
l.ln.Close()
|
||||||
l.ln = nil
|
l.ln = nil
|
||||||
return nil, nil, listener.NewAcceptError(err)
|
return nil, listener.NewAcceptError(err)
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -57,10 +57,10 @@ func (l *rudpListener) Init(md md.Metadata) (err error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *rudpListener) Accept() (conn net.Conn, md md.Metadata, err error) {
|
func (l *rudpListener) Accept() (conn net.Conn, err error) {
|
||||||
select {
|
select {
|
||||||
case <-l.closed:
|
case <-l.closed:
|
||||||
return nil, nil, net.ErrClosed
|
return nil, net.ErrClosed
|
||||||
default:
|
default:
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -73,14 +73,14 @@ func (l *rudpListener) Accept() (conn net.Conn, md md.Metadata, err error) {
|
|||||||
connector.UDPDataQueueSizeBindOption(l.md.readQueueSize),
|
connector.UDPDataQueueSizeBindOption(l.md.readQueueSize),
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, listener.NewAcceptError(err)
|
return nil, listener.NewAcceptError(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
conn, err = l.ln.Accept()
|
conn, err = l.ln.Accept()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
l.ln.Close()
|
l.ln.Close()
|
||||||
l.ln = nil
|
l.ln = nil
|
||||||
return nil, nil, listener.NewAcceptError(err)
|
return nil, listener.NewAcceptError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if pc, ok := conn.(net.PacketConn); ok {
|
if pc, ok := conn.(net.PacketConn); ok {
|
||||||
|
@ -47,9 +47,8 @@ func (l *tcpListener) Init(md md.Metadata) (err error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *tcpListener) Accept() (conn net.Conn, md md.Metadata, err error) {
|
func (l *tcpListener) Accept() (conn net.Conn, err error) {
|
||||||
conn, err = l.ln.Accept()
|
return l.ln.Accept()
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *tcpListener) Addr() net.Addr {
|
func (l *tcpListener) Addr() net.Addr {
|
||||||
|
@ -51,9 +51,8 @@ func (l *tlsListener) Init(md md.Metadata) (err error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *tlsListener) Accept() (conn net.Conn, md md.Metadata, err error) {
|
func (l *tlsListener) Accept() (conn net.Conn, err error) {
|
||||||
conn, err = l.ln.Accept()
|
return l.ln.Accept()
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *tlsListener) Addr() net.Addr {
|
func (l *tlsListener) Addr() net.Addr {
|
||||||
|
@ -60,9 +60,8 @@ func (l *udpListener) Init(md md.Metadata) (err error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *udpListener) Accept() (conn net.Conn, md md.Metadata, err error) {
|
func (l *udpListener) Accept() (conn net.Conn, err error) {
|
||||||
conn, err = l.ln.Accept()
|
return l.ln.Accept()
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *udpListener) Addr() net.Addr {
|
func (l *udpListener) Addr() net.Addr {
|
||||||
|
@ -6,6 +6,10 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type Metadatable interface {
|
||||||
|
GetMetadata() Metadata
|
||||||
|
}
|
||||||
|
|
||||||
type Metadata interface {
|
type Metadata interface {
|
||||||
IsExists(key string) bool
|
IsExists(key string) bool
|
||||||
Set(key string, value any)
|
Set(key string, value any)
|
||||||
|
@ -71,7 +71,7 @@ func (s *service) Serve() error {
|
|||||||
|
|
||||||
var tempDelay time.Duration
|
var tempDelay time.Duration
|
||||||
for {
|
for {
|
||||||
conn, md, e := s.listener.Accept()
|
conn, e := s.listener.Accept()
|
||||||
if e != nil {
|
if e != nil {
|
||||||
if ne, ok := e.(net.Error); ok && ne.Temporary() {
|
if ne, ok := e.(net.Error); ok && ne.Temporary() {
|
||||||
if tempDelay == 0 {
|
if tempDelay == 0 {
|
||||||
@ -111,7 +111,6 @@ func (s *service) Serve() error {
|
|||||||
if err := s.handler.Handle(
|
if err := s.handler.Handle(
|
||||||
context.Background(),
|
context.Background(),
|
||||||
conn,
|
conn,
|
||||||
handler.MetadataHandleOption(md),
|
|
||||||
); err != nil {
|
); err != nil {
|
||||||
s.options.logger.Error(err)
|
s.options.logger.Error(err)
|
||||||
metrics.HandlerErrors(s.name).Inc()
|
metrics.HandlerErrors(s.name).Inc()
|
||||||
|
Loading…
Reference in New Issue
Block a user