diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java index 4c69373..fd92001 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java @@ -29,6 +29,7 @@ public class AppProperties { private Boolean allow_multiple_delete = false; private Boolean allow_override_default_search_params = true; private Boolean auto_create_placeholder_reference_targets = false; + private Boolean delete_expunge_enabled = false; private Boolean enable_index_missing_fields = false; private Boolean enable_index_contained_resource = false; private Boolean enable_repository_validating_interceptor = false; @@ -261,6 +262,14 @@ public class AppProperties { this.default_page_size = default_page_size; } + public Boolean getDelete_expunge_enabled() { + return delete_expunge_enabled; + } + + public void setDelete_expunge_enabled(Boolean delete_expunge_enabled) { + this.delete_expunge_enabled = delete_expunge_enabled; + } + public Boolean getEnable_index_missing_fields() { return enable_index_missing_fields; } diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/FhirServerConfigCommon.java b/src/main/java/ca/uhn/fhir/jpa/starter/FhirServerConfigCommon.java index 8777e0a..4ec5912 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/FhirServerConfigCommon.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/FhirServerConfigCommon.java @@ -36,6 +36,7 @@ public class FhirServerConfigCommon { ourLog.info("Server configured to " + (appProperties.getAllow_contains_searches() ? "allow" : "deny") + " contains searches"); ourLog.info("Server configured to " + (appProperties.getAllow_multiple_delete() ? "allow" : "deny") + " multiple deletes"); ourLog.info("Server configured to " + (appProperties.getAllow_external_references() ? "allow" : "deny") + " external references"); + ourLog.info("Server configured to " + (appProperties.getDelete_expunge_enabled() ? "enable" : "disable") + " delete expunges"); ourLog.info("Server configured to " + (appProperties.getExpunge_enabled() ? "enable" : "disable") + " expunges"); ourLog.info("Server configured to " + (appProperties.getAllow_override_default_search_params() ? "allow" : "deny") + " overriding default search params"); ourLog.info("Server configured to " + (appProperties.getAuto_create_placeholder_reference_targets() ? "allow" : "disable") + " auto-creating placeholder references"); @@ -81,6 +82,7 @@ public class FhirServerConfigCommon { retVal.setAllowContainsSearches(appProperties.getAllow_contains_searches()); retVal.setAllowMultipleDelete(appProperties.getAllow_multiple_delete()); retVal.setAllowExternalReferences(appProperties.getAllow_external_references()); + retVal.setDeleteExpungeEnabled(appProperties.getDelete_expunge_enabled()); retVal.setExpungeEnabled(appProperties.getExpunge_enabled()); if(appProperties.getSubscription() != null && appProperties.getSubscription().getEmail() != null) retVal.setEmailFromAddress(appProperties.getSubscription().getEmail().getFrom()); diff --git a/src/main/resources/application.yaml b/src/main/resources/application.yaml index 7be4423..c4c393d 100644 --- a/src/main/resources/application.yaml +++ b/src/main/resources/application.yaml @@ -71,6 +71,7 @@ hapi: # default_encoding: JSON # default_pretty_print: true # default_page_size: 20 +# delete_expunge_enabled: true # enable_repository_validating_interceptor: false # enable_index_missing_fields: false # enable_index_contained_resource: false diff --git a/src/test/resources/application-integrationtest.yaml b/src/test/resources/application-integrationtest.yaml index b19a14b..f311891 100644 --- a/src/test/resources/application-integrationtest.yaml +++ b/src/test/resources/application-integrationtest.yaml @@ -25,6 +25,7 @@ hapi: # default_encoding: JSON # default_pretty_print: true # default_page_size: 20 +# delete_expunge_enabled: true # enable_index_missing_fields: false # enforce_referential_integrity_on_delete: false # enforce_referential_integrity_on_write: false