class WebsightService: def __init__(self): db = database.init() Base.metadata.bind = db DBSession = sessionmaker(bind=db) self.session = DBSession() self.node_dao = NodeDao(self.session) self.watcher_dao = WatcherDao(self.session) self.node_watcher_dao = NodeWatcherDao(self.session) def register_node_watcher(self, url, email): print "begin register_node_watcher" node_id = self.node_dao.create(url) watcher_id = self.watcher_dao.create(email) self.node_watcher_dao.create(node_id, watcher_id) def loop_through_nodes(self): print "*** begin loop_through_nodes ***" nodes = self.node_dao.get_nodes() for node in nodes: # TODO Should be in different threads try: self.check_site(node) except Exception, e: self.notify_watchers(node, str(e)) print "*** end loop_through_nodes ***"
def __init__(self): db = database.init() Base.metadata.bind = db DBSession = sessionmaker(bind=db) self.session = DBSession() self.node_dao = NodeDao(self.session) self.watcher_dao = WatcherDao(self.session) self.node_watcher_dao = NodeWatcherDao(self.session)