def init_app(self, app): """Flask application initialization.""" self.init_config(app) self.create_resources() self.init_views(app) app.extensions['sonar'] = self if app.config['SONAR_APP_ENABLE_CORS']: from flask_cors import CORS CORS(app) Bootstrap(app) Wiki(app) app.context_processor(utility_processor) # Connect to signal sent when a user is created in Flask-Security. user_registered.connect(user_registered_handler, weak=False) # Connect to signal sent when a file is uploaded or deleted file_uploaded.connect(file_uploaded_listener, weak=False) file_deleted.connect(file_deleted_listener, weak=False) # Add user's full name before record index before_record_index.connect(add_full_name, weak=False)
def init_app(self, app): """Flask application initialization.""" self.init_config(app) app.extensions['sonar_app'] = self if app.config['SONAR_APP_ENABLE_CORS']: from flask_cors import CORS CORS(app) Bootstrap(app) Wiki(app) # Register assets for sonar-ui assets = Environment(app) assets.register( 'sonar_ui_js', Bundle('sonar-ui/runtime.js', 'sonar-ui/polyfills.js', 'sonar-ui/main.js', output='sonar_ui.%(version)s.js')) app.context_processor(utility_processor) # Connect to signal sent when a user is created in Flask-Security. user_registered.connect(user_registered_handler, weak=False) # Connect to signal sent when a file is uploaded or deleted file_uploaded.connect(file_uploaded_listener, weak=False) file_deleted.connect(file_deleted_listener, weak=False)
def register_signals(self): """Register signals.""" file_uploaded.connect(file_uploaded_listener) file_processed.connect(file_processed_listener) file_deleted.connect(file_deleted_listener) after_record_delete.connect(record_deleted_listener) before_record_index.connect(index_file_content)
def test_signals(app, client, headers, bucket, permissions): """Test file_uploaded and file_deleted signals.""" login_user(client, permissions['bucket']) key = 'myfile.txt' data = b'content of my file' object_url = url_for('invenio_files_rest.object_api', bucket_id=bucket.id, key=key) calls = [] def upload_listener(obj): calls.append("file-uploaded") def delete_listener(obj): calls.append("file-deleted") file_uploaded.connect(upload_listener, weak=False) file_deleted.connect(delete_listener, weak=False) try: client.put(object_url, input_stream=BytesIO(data), headers={'Content-Type': 'application/octet-stream'}) client.delete(object_url) assert calls == ["file-uploaded", "file-deleted"] finally: file_uploaded.disconnect(upload_listener) file_deleted.disconnect(delete_listener)
def _register_signals(self, app): """Register signals.""" before_record_index.dynamic_connect(indexer.indexer_receiver, sender=app, index="records-record-v1.0.0") file_deleted.connect(update_record_files_async, weak=False) file_uploaded.connect(update_record_files_async, weak=False)
def _register_signals(self, app): """Register signals.""" before_record_index.dynamic_connect(before_record_index_hook, sender=app, weak=False, index='records-record-v1.0.0') file_deleted.connect(update_record_files_async, weak=False) file_uploaded.connect(update_record_files_async, weak=False)
def register_files_signals(): """Register files signal.""" file_deleted.connect(on_file_changed, weak=False) file_uploaded.connect(on_file_changed, weak=False)