MCPcopy
hub / github.com/iBaa/PlexConnect / Run

Function Run

WebServer.py:281–322  ·  view source on GitHub ↗
(cmdPipe, param)

Source from the content-addressed store, hash-verified

279
280
281def Run(cmdPipe, param):
282 if not __name__ == '__main__':
283 signal.signal(signal.SIGINT, signal.SIG_IGN)
284
285 dinit(__name__, param) # init logging, WebServer process
286
287 cfg_IP_WebServer = param['IP_self']
288 cfg_Port_WebServer = param['CSettings'].getSetting('port_webserver')
289 try:
290 server = ThreadedHTTPServer((cfg_IP_WebServer,int(cfg_Port_WebServer)), MyHandler)
291 server.timeout = 1
292 except Exception, e:
293 dprint(__name__, 0, "Failed to connect to HTTP on {0} port {1}: {2}", cfg_IP_WebServer, cfg_Port_WebServer, e)
294 sys.exit(1)
295
296 socketinfo = server.socket.getsockname()
297
298 dprint(__name__, 0, "***")
299 dprint(__name__, 0, "WebServer: Serving HTTP on {0} port {1}.", socketinfo[0], socketinfo[1])
300 dprint(__name__, 0, "***")
301
302 setParams(param)
303 XMLConverter.setParams(param)
304 XMLConverter.setATVSettings(param['CATVSettings'])
305
306 try:
307 while True:
308 # check command
309 if cmdPipe.poll():
310 cmd = cmdPipe.recv()
311 if cmd=='shutdown':
312 break
313
314 # do your work (with timeout)
315 server.handle_request()
316
317 except KeyboardInterrupt:
318 signal.signal(signal.SIGINT, signal.SIG_IGN) # we heard you!
319 dprint(__name__, 0,"^C received.")
320 finally:
321 dprint(__name__, 0, "Shutting down (HTTP).")
322 server.socket.close()
323
324
325

Callers 1

WebServer.pyFile · 0.70

Calls 5

dinitFunction · 0.85
ThreadedHTTPServerClass · 0.85
dprintFunction · 0.85
setParamsFunction · 0.70
getSettingMethod · 0.45

Tested by

no test coverage detected