Ejemplo n.º 1
0
def blackboard_load():
    global local_config
    logger = logging.getLogger('application')
    logger.setLevel(level=logging.DEBUG)
    logger.error('Loading blackboard...')
    """Deliver all of the information we have about a blackboard given an id."""
    try:
        board_id = request.form.get('id')
        global collection_location

        condition = "id='{}'".format(board_id)
        rows = fetch_table_entries(collection_location, 'blackboards',
                                   condition)

        query = json.loads(rows[0][3])
        construction_graph = json.loads(rows[0][4])

        # Contact Neo4j to get the large graph of this backboard
        database = KnowledgeGraph(local_config['clientHost'])
        graph = database.getNodesByLabel(board_id)

        return jsonify({'graph': graph,\
            'query': query,\
            'constructionGraph': construction_graph})

    except Exception as ex:
        print(ex)
        raise InvalidUsage("Unspecified exception {0}".format(ex), 410)
    except:
        raise InvalidUsage('Failed to load blackboard.', 410)