def remove_entity(entity): """ Handles remote requests to databayes for removing entities Translation: rm ent e -> /rm/ent/e :return: JSON response indicating status of action & output """ try: return Response( json.dumps([view_switch('remove_entity', {'entity': entity})]), mimetype='application/json') except Exception as e: log.error(e.message) return Response( json.dumps([ERR_MSG_BADLY_FORMED_REQUEST]), mimetype='application/json')
def list_entity(pattern): """ Handles remote requests to databayes for listing entities Translation: lst ent regex -> /lst/ent/regex :return: JSON response indicating status of action & output """ try: return Response( json.dumps([view_switch('list_entity', {'pattern': pattern})]), mimetype='application/json') except Exception as e: log.error(e.message) return Response( json.dumps([ERR_MSG_BADLY_FORMED_REQUEST]), mimetype='application/json')
def define_entity(entity): """ Handles remote requests to databayes for entity definition Translation: def e(<f1>_<t1>, <f2>_<t2>, ...) -> /def/e?fields=f1,f2,...&types=t1,t2,... :return: JSON response indicating status of action & output """ try: return Response( json.dumps([view_switch('define_entity', {'entity': entity})]), mimetype='application/json') except Exception as e: log.error(e.message) return Response( json.dumps([ERR_MSG_BADLY_FORMED_REQUEST]), mimetype='application/json')
def list_relation(entity_1, entity_2): """ Handles remote requests to databayes for listing relations Translation: lst rel regex1 regex2 -> /lst/ent/regex1/regex2 :return: JSON response indicating status of action & output """ try: return Response( json.dumps( [view_switch('list_relation', {'entity_1': entity_1, 'entity_2': entity_2})]), mimetype='application/json') except Exception as e: log.error(e.message) return Response( json.dumps([ERR_MSG_BADLY_FORMED_REQUEST]), mimetype='application/json')
def generate(entity_1, entity_2): """ Handles remote requests to databayes for generating samples Translation: gen e1(<f1_1>_<v1_1>,...) constrain e2(<f2_1>_<v2_1>,...) -> /gen/e1/e2?fields1=f1_1,...&types1=t1_1,...&fields2=f2_1,...&types2=t2_1,... :return: JSON response indicating status of action & output """ try: return Response( json.dumps( [view_switch('generate', {'entity_1': entity_1, 'entity_2': entity_2})]), mimetype='application/json') except Exception as e: log.error(e.message) return Response( json.dumps([ERR_MSG_BADLY_FORMED_REQUEST]), mimetype='application/json')
def remove_relation(entity_1, entity_2): """ Handles remote requests to databayes for removing relations Translation: rm rel e1(<f1_1>_<v1_1>,...) e2(<f2_1>_<v2_1>,...) -> /rm/rel/e1/e2?fields1=f1_1,...&values1=t1_1,...&fields2=f2_1, ...&values2=t2_1,... :return: JSON response indicating status of action & output """ try: return Response( json.dumps( [view_switch('remove_relation', {'entity_1': entity_1, 'entity_2': entity_2})]), mimetype='application/json') except Exception as e: log.error(e.message) return Response( json.dumps([ERR_MSG_BADLY_FORMED_REQUEST]), mimetype='application/json')