libsaria: Run server based on stored stetting

I have a toggle_state() function to toggle the server and save the state
for the next session.
This commit is contained in:
Bryan Schumaker 2011-06-18 14:09:27 -04:00
parent 868359a4a4
commit f87f5f25cf
2 changed files with 23 additions and 7 deletions

View File

@ -7,10 +7,7 @@ import path
import sources
import controls
server = None
if version.__dev__ == True:
import server
import server
from path import lastfm
#plugin = None
@ -27,8 +24,7 @@ def startup():
def shutdown():
audio.shutdown()
if server != None:
server.shutdown()
server.shutdown()
## import plugin
## plugin.quit()

View File

@ -3,19 +3,39 @@
from BaseHTTPServer import HTTPServer
import threading
from libsaria import prefs
import request
server = None
PREF_KEY="libsaria.server.enabled"
prefs.init(PREF_KEY, False)
def setup_server():
global server
if prefs.get(PREF_KEY) == False:
return
try:
server = HTTPServer(('', 4242), request.Handler)
server.serve_forever()
except Exception,e:
print "Error starting server:", e
threading.Thread(target=setup_server).start()
def startup():
threading.Thread(target=setup_server).start()
startup()
def shutdown():
global server
if server != None:
server.shutdown()
server = None
def get_state():
return prefs.get(PREF_KEY)
def toggle_state(active):
prefs.set(PREF_KEY, active)
if active == True:
startup()
else:
shutdown()