Пример #1
0
 def config(self, external_config={}):
     self.location = get_value_from_config(external_config, 'MEDIA_LOCATION', '.')
     self.extractor_directory = get_value_from_config(external_config, 'EXTRACTOR_LOCATION', '.')
     return {
         'MEDIA_LOCATION': self.location,
         'EXTRACTOR_LOCATION': self.extractor_directory
     }
Пример #2
0
 def post(self):
     content = request.get_json(silent=True)
     self.provider.add_canonical_mention(
         content['entity_mention_id'],
         content['child_file'],
         frame_number=get_value_from_config(content, 'frame_number', None),
         frame_time=get_value_from_config(content, 'frame_time', None),
         page_number=get_value_from_config(content, 'page_number', None),
         bounding_box=get_value_from_config(content, 'bounding_box', None),
         is_text=get_value_from_config(content, 'is_text', False),
         user_id=get_jwt_identity())
     return {"status": "ok"}
Пример #3
0
def create_db_app(name, external_config):
    app = Flask(name)
    app.config['SQLALCHEMY_DATABASE_URI'] = get_value_from_config(
        external_config, 'SQLALCHEMY_DATABASE_URI',
        'sqlite:////{}test.db'.format(tempfile.gettempdir()))
    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
    return app
Пример #4
0
    def init(self, app=None, api=None):
        """

        :param app:
        :param api:
        :return:
        @type app: FlaskAppWrapper
        """
        provider = app.get_provider_by_name(IndexStore.__name__)
        extractor = ExtractorFactory.build(**get_value_from_config(
            app.external_config, 'INDEX_KEY_FRAME_EXTRACTOR', {
                "name": "SingleFrameKeyFrameExtractor",
                "parameters": {}
            }))
        api.add_resource(IndexItem,
                         '/index',
                         resource_class_kwargs={
                             'provider': provider,
                             'extractor': extractor
                         })
Пример #5
0
 def post(self):
     content = request.get_json(silent=True)
     if 'id' in content:
         self.provider.update_entity_mention(
             content['id'],
             textoffset_startchar=get_value_from_config(
                 content, 'textoffset_startchar', None),
             textoffset_endchar=get_value_from_config(
                 content, 'textoffset_endchar', None),
             text_string=get_value_from_config(content, 'text_string',
                                               None),
             justification=get_value_from_config(content, 'justification',
                                                 None),
             provenance=get_value_from_config(content, 'provenance', False),
             tree_id=get_value_from_config(content, 'tree_id', False),
             level=get_value_from_config(content, 'level', False),
             kb_id=get_value_from_config(content, 'kb_id', False),
             status=get_value_from_config(content, 'status', False))
         id = content['id']
     else:
         id = self.provider.add_entity_mention(
             content['entity_id'],
             content['provenance'],
             textoffset_startchar=get_value_from_config(
                 content, 'textoffset_startchar', None),
             textoffset_endchar=get_value_from_config(
                 content, 'textoffset_endchar', None),
             text_string=get_value_from_config(content, 'text_string',
                                               None),
             justification=get_value_from_config(content, 'justification',
                                                 None),
             level=get_value_from_config(content, 'level', False))
     return {"status": "ok", "id": id}
Пример #6
0
 def config(self, external_config = {}):
     return {
         'SQLALCHEMY_DATABASE_URI': get_value_from_config(external_config,'SQLALCHEMY_DATABASE_URI','sqlite:////tmp/test.db'),
         'SQLALCHEMY_TRACK_MODIFICATIONS':False
     }