Skip to content

Commit

Permalink
add open
Browse files Browse the repository at this point in the history
  • Loading branch information
liujianping committed Jan 13, 2024
1 parent 6bfdeef commit 7da2479
Showing 1 changed file with 16 additions and 2 deletions.
18 changes: 16 additions & 2 deletions tcpserver.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ type Server struct {
events trace.EventLog
listener net.Listener
tls *tls.Config
openned *event.Event
stopped *event.Event
serving *event.Event
wgroup sync.WaitGroup
Expand Down Expand Up @@ -97,6 +98,7 @@ func New(opts ...ServerOpt) *Server {
serv := &Server{
name: "tcpserver",
network: "tcp",
openned: event.New(),
serving: event.New(),
stopped: event.New(),
}
Expand Down Expand Up @@ -128,8 +130,10 @@ func (srv *Server) errorf(format string, a ...interface{}) {
glog.Errorf(format, a...)
}

// Serve tcpserver serving
func (srv *Server) Serve(ctx context.Context) error {
func (srv *Server) Open() error {
if srv.openned.HasFired() {
return nil
}
if srv.handler == nil {
return fmt.Errorf("tcpserver.Handler required")
}
Expand All @@ -144,6 +148,16 @@ func (srv *Server) Serve(ctx context.Context) error {
if srv.tls != nil {
srv.listener = tls.NewListener(srv.listener, srv.tls)
}

srv.openned.Fire()
return nil
}

// Serve tcpserver serving
func (srv *Server) Serve(ctx context.Context) error {
if err := srv.Open(); err != nil {
return err
}
defer srv.listener.Close()
//flags
defer srv.stopped.Fire()
Expand Down

0 comments on commit 7da2479

Please sign in to comment.