From 19b84701b8637038e9d214433b69dba6f87f603f Mon Sep 17 00:00:00 2001 From: Ed Page Date: Sat, 26 Feb 2011 16:11:46 -0600 Subject: [PATCH 1/1] Rotating log --- src/WatersOfShiloah.py | 23 ----------------------- src/backend.py | 17 ++++++++++++++++- src/watersofshiloah_gtk.py | 24 ++++++++++++++++++++++++ 3 files changed, 40 insertions(+), 24 deletions(-) diff --git a/src/WatersOfShiloah.py b/src/WatersOfShiloah.py index b649363..79584e0 100755 --- a/src/WatersOfShiloah.py +++ b/src/WatersOfShiloah.py @@ -1,36 +1,13 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -import os import sys -import logging -_moduleLogger = logging.getLogger(__name__) sys.path.append('/opt/WatersOfShiloah/lib') -import constants import watersofshiloah_gtk if __name__ == "__main__": - try: - os.makedirs(constants._data_path_) - except OSError, e: - if e.errno != 17: - raise - - try: - os.makedirs(constants._cache_path_) - except OSError, e: - if e.errno != 17: - raise - - logFormat = '(%(asctime)s) %(levelname)-5s %(threadName)s.%(name)s: %(message)s' - logging.basicConfig(level=logging.DEBUG, filename=constants._user_logpath_, format=logFormat) - _moduleLogger.info("%s %s-%s" % (constants.__app_name__, constants.__version__, constants.__build__)) - _moduleLogger.info("OS: %s" % (os.uname()[0], )) - _moduleLogger.info("Kernel: %s (%s) for %s" % os.uname()[2:]) - _moduleLogger.info("Hostname: %s" % os.uname()[1]) - watersofshiloah_gtk.run() diff --git a/src/backend.py b/src/backend.py index 00efca6..d87054b 100755 --- a/src/backend.py +++ b/src/backend.py @@ -116,9 +116,24 @@ class Backend(object): items = tree.find("chapters") return self._process_list(items, ["title", "url"]) + CONFERENCE_SEARCH = 1 + MAGAZINE_SEARCH = 2 + VIDEO_SEARCH = 8 + SEARCH_ALL = 11 + + def search(self, langId, phrase, content): + tree = self._get_page_with_validation( + action="lds.search", + languageID=langId, + phrase=phrase, + content=content, + ) + return tree + def _get_page_with_validation(self, **params): encodedParams = urllib.urlencode(params) - page = self._browser.download("http://tech.lds.org/radio?%s" % encodedParams) + url = "http://tech.lds.org/radio?%s" % encodedParams + page = self._browser.download(url) if not page: raise RuntimeError("Blank page") tree = ElementTree.fromstring(page) diff --git a/src/watersofshiloah_gtk.py b/src/watersofshiloah_gtk.py index ad25b6c..94c2121 100755 --- a/src/watersofshiloah_gtk.py +++ b/src/watersofshiloah_gtk.py @@ -10,6 +10,7 @@ from __future__ import with_statement import os import gc import logging +import logging.handlers import ConfigParser import gobject @@ -143,6 +144,29 @@ class WatersOfShiloahProgram(hildonize.get_app_class()): def run(): + try: + os.makedirs(constants._data_path_) + except OSError, e: + if e.errno != 17: + raise + + try: + os.makedirs(constants._cache_path_) + except OSError, e: + if e.errno != 17: + raise + + logFormat = '(%(relativeCreated)5d) %(levelname)-5s %(threadName)s.%(name)s.%(funcName)s: %(message)s' + logging.basicConfig(level=logging.DEBUG, format=logFormat) + rotating = logging.handlers.RotatingFileHandler(constants._user_logpath_, maxBytes=512*1024, backupCount=1) + rotating.setFormatter(logging.Formatter(logFormat)) + root = logging.getLogger() + root.addHandler(rotating) + _moduleLogger.info("%s %s-%s" % (constants.__app_name__, constants.__version__, constants.__build__)) + _moduleLogger.info("OS: %s" % (os.uname()[0], )) + _moduleLogger.info("Kernel: %s (%s) for %s" % os.uname()[2:]) + _moduleLogger.info("Hostname: %s" % os.uname()[1]) + gobject.threads_init() gtk.gdk.threads_init() l = dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) -- 1.7.9.5