replace new() with initialize() (#490)

This commit is contained in:
Alessandro Ros
2023-12-26 12:48:35 +01:00
committed by GitHub
parent e77b281395
commit 2d0c530d97
37 changed files with 464 additions and 521 deletions

View File

@@ -81,33 +81,24 @@ type ServerConn struct {
done chan struct{}
}
func newServerConn(
s *Server,
nconn net.Conn,
) *ServerConn {
ctx, ctxCancel := context.WithCancel(s.ctx)
func (sc *ServerConn) initialize() {
ctx, ctxCancel := context.WithCancel(sc.s.ctx)
if s.TLSConfig != nil {
nconn = tls.Server(nconn, s.TLSConfig)
if sc.s.TLSConfig != nil {
sc.nconn = tls.Server(sc.nconn, sc.s.TLSConfig)
}
sc := &ServerConn{
s: s,
nconn: nconn,
bc: bytecounter.New(nconn, nil, nil),
ctx: ctx,
ctxCancel: ctxCancel,
remoteAddr: nconn.RemoteAddr().(*net.TCPAddr),
chReadRequest: make(chan readReq),
chReadError: make(chan error),
chRemoveSession: make(chan *ServerSession),
done: make(chan struct{}),
}
sc.bc = bytecounter.New(sc.nconn, nil, nil)
sc.ctx = ctx
sc.ctxCancel = ctxCancel
sc.remoteAddr = sc.nconn.RemoteAddr().(*net.TCPAddr)
sc.chReadRequest = make(chan readReq)
sc.chReadError = make(chan error)
sc.chRemoveSession = make(chan *ServerSession)
sc.done = make(chan struct{})
s.wg.Add(1)
sc.s.wg.Add(1)
go sc.run()
return sc
}
// Close closes the ServerConn.
@@ -159,7 +150,10 @@ func (sc *ServerConn) run() {
}
sc.conn = conn.NewConn(sc.bc)
cr := newServerConnReader(sc)
cr := &serverConnReader{
sc: sc,
}
cr.initialize()
err := sc.runInner()