MCPcopy Create free account
hub / github.com/DNAProject/DNA / Start

Method Start

http/websocket/websocket/server.go:88–128  ·  view source on GitHub ↗

start websocket server

()

Source from the content-addressed store, hash-verified

86
87//start websocket server
88func (self *WsServer) Start() error {
89 wsPort := int(cfg.DefConfig.Ws.HttpWsPort)
90 if wsPort == 0 {
91 log.Error("Not configure HttpWsPort port ")
92 return nil
93 }
94 self.registryMethod()
95 self.Upgrader.CheckOrigin = func(r *http.Request) bool {
96 return true
97 }
98
99 tlsFlag := false
100 if tlsFlag || wsPort%1000 == rest.TLS_PORT {
101 var err error
102 self.listener, err = self.initTlsListen()
103 if err != nil {
104 log.Error("Https Cert: ", err.Error())
105 return err
106 }
107 } else {
108 var err error
109 self.listener, err = net.Listen("tcp", ":"+strconv.Itoa(wsPort))
110 if err != nil {
111 log.Fatal("net.Listen: ", err.Error())
112 return err
113 }
114 }
115 var done = make(chan bool)
116 go self.checkSessionsTimeout(done)
117
118 self.server = &http.Server{Handler: http.HandlerFunc(self.webSocketHandler)}
119 err := self.server.Serve(self.listener)
120
121 done <- true
122 if err != nil {
123 log.Fatal("ListenAndServe: ", err.Error())
124 return err
125 }
126 return nil
127
128}
129
130//registry handler method
131func (self *WsServer) registryMethod() {

Callers 1

RestartMethod · 0.95

Calls 6

registryMethodMethod · 0.95
initTlsListenMethod · 0.95
checkSessionsTimeoutMethod · 0.95
ErrorFunction · 0.92
FatalFunction · 0.92
ErrorMethod · 0.65

Tested by

no test coverage detected