Mercurial > code > home > repos > light9
changeset 1059:7f5a9958095b
move curvecalc's web server to another file
Ignore-this: 14062bdcc64093acec9f634357100200
author | Drew Perttula <drewp@bigasterisk.com> |
---|---|
date | Mon, 02 Jun 2014 00:10:48 +0000 |
parents | 2d2be076754f |
children | 473db8bebb8f |
files | bin/curvecalc light9/curvecalc/curveedit.py |
diffstat | 2 files changed, 33 insertions(+), 18 deletions(-) [+] |
line wrap: on
line diff
--- a/bin/curvecalc Mon Jun 02 00:10:33 2014 +0000 +++ b/bin/curvecalc Mon Jun 02 00:10:48 2014 +0000 @@ -44,6 +44,7 @@ from light9.rdfdb.patch import Patch from light9.editchoicegtk import EditChoice, Local from light9.observable import Observable +from light9.curvecalc.curveedit import serveCurveEdit class SubtermExists(ValueError): pass @@ -470,24 +471,18 @@ log.debug("quitting now because of --startup-only") return - from twisted.web import server, resource - class Hover(resource.Resource): - isLeaf = True - def render_GET(self, request): - if request.path == '/hoverTime': - results = dispatcher.send("onPlayPause") - times = [t for listener, t in results if t is not None] - if not times: - request.setResponseCode(404) - return "not hovering over any time" - with graph.currentState( - tripleFilter=(session, L9['currentSong'], None)) as g: - song = g.value(session, L9['currentSong']) - return json.dumps({"song": song, "hoverTime" : times[0]}) - raise NotImplementedError() - - reactor.listenTCP(networking.curveCalc.port, - server.Site(Hover())) + def hoverTimeResponse(request): + results = dispatcher.send("onPlayPause") + times = [t for listener, t in results if t is not None] + if not times: + request.setResponseCode(404) + return "not hovering over any time" + with graph.currentState( + tripleFilter=(session, L9['currentSong'], None)) as g: + song = g.value(session, L9['currentSong']) + return json.dumps({"song": song, "hoverTime" : times[0]}) + + serveCurveEdit(networking.curveCalc.port, hoverTimeResponse) def main(): startTime = time.time()
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/light9/curvecalc/curveedit.py Mon Jun 02 00:10:48 2014 +0000 @@ -0,0 +1,20 @@ +""" +this may be split out from curvecalc someday, since it doesn't +need to be tied to a gui """ +from twisted.internet import reactor +from light9 import networking + +def serveCurveEdit(port, hoverTimeResponse): + """ + /hoverTime requests actually are handled by the curvecalc gui + """ + + from twisted.web import server, resource + class Hover(resource.Resource): + isLeaf = True + def render_GET(self, request): + if request.path == '/hoverTime': + return hoverTimeResponse(request) + raise NotImplementedError() + + reactor.listenTCP(port, server.Site(Hover()))