# HG changeset patch # User Drew Perttula # Date 2014-06-02 00:19:38 # Node ID 473db8bebb8f7c5a48e512042a19dda35787df66 # Parent 7f5a9958095b2b22873f7cd2d20ef44c6b819b5e install a copy of cycloneerr.py Ignore-this: cd8b94a251fff5cd9412775258a1f2cf diff --git a/bin/effecteval b/bin/effecteval --- a/bin/effecteval +++ b/bin/effecteval @@ -16,9 +16,7 @@ from light9.effecteval.effect import Eff from light9.greplin_cyclone import StatsForCyclone from greplin import scales -sys.path.append("/my/proj/homeauto/lib") -sys.path.append("/home/drewp/projects/homeauto/lib") -from cycloneerr import PrettyErrorHandler +from lib.cycloneerr import PrettyErrorHandler class EffectEdit(PrettyErrorHandler, cyclone.web.RequestHandler): def get(self): diff --git a/bin/rdfdb b/bin/rdfdb --- a/bin/rdfdb +++ b/bin/rdfdb @@ -127,13 +127,7 @@ from twisted.internet.inotify import INo from run_local import log log.setLevel(logging.DEBUG) -try: - import sys - sys.path.append("../homeauto/lib") - from cycloneerr import PrettyErrorHandler -except ImportError: - class PrettyErrorHandler(object): - pass +from lib.cycloneerr import PrettyErrorHandler class Client(object): """ diff --git a/bin/subserver b/bin/subserver --- a/bin/subserver +++ b/bin/subserver @@ -15,13 +15,7 @@ from light9.rdfdb.patch import Patch from light9.namespaces import L9, DCTERMS from light9 import networking, showconfig -try: - sys.path.append("../homeauto/lib") - sys.path.append("/home/drewp/projects/homeauto/lib") - from cycloneerr import PrettyErrorHandler -except ImportError: - class PrettyErrorHandler(object): - pass +from lib.cycloneerr import PrettyErrorHandler liveClients = set() def sendToLiveClients(d=None, asJson=None): diff --git a/lib/cycloneerr.py b/lib/cycloneerr.py new file mode 100644 --- /dev/null +++ b/lib/cycloneerr.py @@ -0,0 +1,17 @@ +import httplib, cgi + +class PrettyErrorHandler(object): + """ + mix-in to improve cyclone.web.RequestHandler + """ + def get_error_html(self, status_code, **kwargs): + try: + tb = kwargs['exception'].getTraceback() + except AttributeError: + tb = "" + return "%(code)d: %(message)s" \ + "%(code)d: %(message)s
%(tb)s
" % { + "code": status_code, + "message": httplib.responses[status_code], + "tb" : cgi.escape(tb), + } diff --git a/light9/ascoltami/webapp.py b/light9/ascoltami/webapp.py --- a/light9/ascoltami/webapp.py +++ b/light9/ascoltami/webapp.py @@ -7,13 +7,7 @@ from rdflib import URIRef from web.contrib.template import render_genshi render = render_genshi([sibpath(__file__, ".")], auto_reload=True) -try: - import sys - sys.path.append("../homeauto/lib") - from cycloneerr import PrettyErrorHandler -except ImportError: - class PrettyErrorHandler(object): - pass +from lib.cycloneerr import PrettyErrorHandler _songUris = {} # locationUri : song def songLocation(graph, songUri):