def rastertile(datagranule_id): from namo_app.db.access import SqaAccess from namo_app.config import Config, get_env from namo_app.db.models import init_mapper, Mask, RasterTile, DataGranule, DataFormat from flask import request #q {"filters":[{"name":"datagranule_id","op":"==","val":"3"}]} config = Config(env=get_env()) init_mapper(config.sqa_connection_string()) mask = request.args.get('mask', None) with SqaAccess(conn_str=config.sqa_connection_string()) as sqa: tileObjs = sqa.all(RasterTile, filterr={'datagranule_id': datagranule_id}) response = flask.json.dumps({"tiles": tileObjs}) return response
return result def post_get_single(result=None, search_params=None, **kw): json_result = geojson_encoder.default(result) return json_result #add cross domain headers def add_cors_headers(response): response.headers['Access-Control-Allow-Origin'] = '*' response.headers['Access-Control-Allow-Credentials'] = 'true' return response config = Config(env=get_env()) app = Flask(__name__) app.after_request(add_cors_headers) app.config['DEBUG'] = config.debug app.config['SQLALCHEMY_DATABASE_URI'] = config.sqa_connection_string() app.json_encoder = GeoJSONEncoder db = flask.ext.sqlalchemy.SQLAlchemy(app) engine = create_engine(config.sqa_connection_string()) insp = reflection.Inspector.from_engine(engine) #discover table names in public schema using flask restless inspector table_names = insp.get_table_names()
def get_ingest_files(files_dir, wildcard="*"): data_dir = Config(env=get_env()).datadir pattern = os.path.join(data_dir, files_dir, wildcard) return glob.glob(pattern)