Esempio n. 1
0
 def query(self,stmt='') :
     db_session = db.get_session(self.db_name)
     resp = ''
     fields = None
     if len(stmt) > 0 :
         if any([k in stmt.lower() for k in ('update','insert','delete')]) :
             resp = 'illegal SQL statment'
         else :
             try :
                 fields = re.search('select(.*?)from',stmt.lower()).group(1)
                 fields = [f.strip() for f in fields.split(',')]
                 recs = db_session.query(*fields).from_statement(stmt)
                 resp = [dict((f,getattr(r,f)) for f in fields) for r in recs]
             except Exception, e :
                 cherrypy.log('exception: %s'%e)
                 resp = str(e.args)
Esempio n. 2
0
    def __init__(self) :

        # get a database connection and look for genes
        self.db_name = db_name = resource_filename('adipo_sight','data/adipo_sight.db')
        cherrypy.log('loading db session from %s'%self.db_name)
        self.db_session = db.get_session(db_name)

        loader = PackageLoader('adipo_sight','data/tmpl')
        self.template_env = Environment(loader=loader)
        self.template_env.filters['dictofdictsort'] = dictofdictsort
        self.template_env.globals['repr'] = repr
        self.template_env.globals['zip'] = zip

        self.args = {}

        self.threads = defaultdict(AdipoThread)

        self.sessions = MySessions()
Esempio n. 3
0
 def f(self,*args) :
     try :
         self.db_session.query(db.RegionSet).first() # this will fail if the session is invalid
     except :
         self.db_session = db.get_session(self.db_name)
     return fn(self,*args)