def __call__(self, environ, start_response): with session_scope(self.dsn) as sesh: urls = db_raster_catalog(sesh, self.config['ensemble'], self.config['root_url']) res = Response( body=dumps(urls, indent=4), content_type='application/json', charset='utf-8') return res(environ, start_response)
def raster_conf(dsn, global_config, ensemble_name, data_base=None): if data_base is None: data_base = '/' + ensemble_name root_url = global_config['data_root'].rstrip('/') + data_base + '/' with session_scope(dsn) as sesh: conf = db_raster_configurator( sesh, "Download Data", 0.1, 0, ensemble_name, root_url=root_url ) return conf
def __init__(self, conn_params): ''' :param conn_params: :type conn_params: dict ''' self.colors = {} with session_scope(conn_params) as sesh: q = sesh.query(Network.name, Network.color) for net, col in q: self.colors[net.lower()] = col
def raster_conf(dsn, global_config, ensemble_name, data_base=None): if data_base is None: data_base = '/' + ensemble_name root_url = global_config['data_root'].rstrip('/') + data_base + '/' with session_scope(dsn) as sesh: conf = db_raster_configurator(sesh, "Download Data", 0.1, 0, ensemble_name, root_url=root_url) return conf
def __call__(self, environ, start_response): '''An override of Pydap's __call__ which overrides catalog requests, but defers to pydap for data requests''' req = Request(environ) if req.path_info == '/catalog.json': with session_scope(self.dsn) as sesh: urls = db_raster_catalog(sesh, self.config['ensemble'], self.config['root_url']) res = Response( body=dumps(urls, indent=4), content_type='application/json', charset='utf-8') return res(environ, start_response) else: return super(RasterServer, self).__call__(environ, start_response)
def session_scope_factory(): return session_scope(conn_params)
def session_scope_factory(): return session_scope(dsn)
def session_scope_factory(): return session_scope(kwargs['conn_params'])