def singlesearchRelation(start_id, end_id):
    cli = client.Client(current_app.config['GREMLIN_DATABASE_URI'], 'g')
    query_string = f"shortestPath(g,{start_id} , {end_id})"
    result_set = cli.submit(query_string, request_options={'evaluationTimeout': 100000})
    future_results = result_set.all()
    cli.close()
    path = future_results.result()
    return path
def Adoption(parent1_id, parent2_id, child_id):
    cli = client.Client(current_app.config['GREMLIN_DATABASE_URI'], 'g')
    query_string = f"adoption(g,{parent1_id} , {parent2_id}, {child_id}, [\"Father_lastname\":true])"
    result_set = cli.submit(query_string, request_options={'evaluationTimeout': 1000})
    future_results = result_set.all()
    cli.close()
    try:
        results = future_results.result()
        return True
    except:
        return False
def marriage(Person1_id, Person2_id):
    cli = client.Client(current_app.config['GREMLIN_DATABASE_URI'], 'g')
    query_string = f"marriage(g,{Person1_id} , {Person2_id})"
    result_set = cli.submit(query_string, request_options={'evaluationTimeout': 1000})
    future_results = result_set.all()
    cli.close()
    try:
        results = future_results.result()
        return True
    except:
        return False
Beispiel #4
0
def modify_person(person: Person, ID):
    cli = client.Client('ws://localhost:8182/gremlin', 'g')
    place = False
    query_string = f"g.V({ID})"
    for item in person.convert_to_gremlin_node().items():
        query_string = query_string + f".property('{item[0]}','{item[1]}')"
        if 'Place' in item[0]:
            place = True
    result_set = cli.submit(query_string,
                            request_options={'evaluationTimeout': 5000})
    future_results = result_set.all()
    results = future_results.result()
    if place:
        relator.relate_locations(ID, person)
        print('Added Location vertex')

    return True