diff --git a/src/schema/schema_constants.py b/src/schema/schema_constants.py index e3cfd1a5..acd160fc 100644 --- a/src/schema/schema_constants.py +++ b/src/schema/schema_constants.py @@ -6,6 +6,7 @@ class SchemaConstants(object): ENTITY_API_APP = 'entity-api' COMPONENT_DATASET = 'component-dataset' INGEST_PIPELINE_APP = 'ingest-pipeline' + INGEST_UI = 'ingest-ui' HUBMAP_APP_HEADER = 'X-Hubmap-Application' LOCKED_ENTITY_UPDATE_HEADER = 'X-HuBMAP-Update-Override' INTERNAL_TRIGGER = 'X-Internal-Trigger' diff --git a/src/schema/schema_validators.py b/src/schema/schema_validators.py index a3c56492..802a47d9 100644 --- a/src/schema/schema_validators.py +++ b/src/schema/schema_validators.py @@ -41,6 +41,7 @@ def validate_application_header_before_entity_create(options_dict): applications_allowed = [ SchemaConstants.INGEST_API_APP, SchemaConstants.INGEST_PIPELINE_APP, + SchemaConstants.INGEST_UI, SchemaConstants.ENTITY_API_APP ] @@ -348,6 +349,7 @@ def validate_application_header_before_property_update(property_key, normalized_ applications_allowed = [ SchemaConstants.INGEST_API_APP, SchemaConstants.INGEST_PIPELINE_APP, + SchemaConstants.INGEST_UI, SchemaConstants.ENTITY_API_APP ] @@ -906,12 +908,12 @@ def _validate_application_header(applications_allowed, request_headers): if not app_header: msg = f"Unable to proceed due to missing {SchemaConstants.HUBMAP_APP_HEADER} header from request" - raise MissingApplicationHeaderException(msg) + raise schema_errors.MissingApplicationHeaderException(msg) # Use lowercase for comparing the application header value against the yaml if app_header.lower() not in applications_allowed: msg = f"Unable to proceed due to invalid {SchemaConstants.HUBMAP_APP_HEADER} header value: {app_header}" - raise InvalidApplicationHeaderException(msg) + raise schema_errors.InvalidApplicationHeaderException(msg) """ Indicate if the entity meets a criteria to lock out modification updates