From d148f458e0e07dad1ee2ce55c79b07bc3f612aad Mon Sep 17 00:00:00 2001 From: Arbaaz Muslim Date: Tue, 9 Aug 2022 16:31:49 -0700 Subject: [PATCH 1/2] bulk data instrumentation included --- src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java | 9 +++++++++ .../ca/uhn/fhir/jpa/starter/BaseJpaRestfulServer.java | 8 ++++++++ src/main/resources/application.yaml | 2 ++ 3 files changed, 19 insertions(+) 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 af8be7c..27bb715 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java @@ -46,6 +46,7 @@ public class AppProperties { private Boolean graphql_enabled = false; private Boolean binary_storage_enabled = false; private Boolean bulk_export_enabled = false; + private Boolean bulk_import_enabled = false; private Boolean default_pretty_print = true; private Integer default_page_size = 20; private Integer max_binary_size = null; @@ -402,6 +403,14 @@ public class AppProperties { this.bulk_export_enabled = bulk_export_enabled; } + public Boolean getBulk_import_enabled() { + return bulk_import_enabled; + } + + public void setBulk_import_enabled(Boolean bulk_import_enabled) { + this.bulk_import_enabled = bulk_import_enabled; + } + public EncodingEnum getDefault_encoding() { return default_encoding; } diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/BaseJpaRestfulServer.java b/src/main/java/ca/uhn/fhir/jpa/starter/BaseJpaRestfulServer.java index 6ec6bc1..5a45702 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/BaseJpaRestfulServer.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/BaseJpaRestfulServer.java @@ -1,5 +1,6 @@ package ca.uhn.fhir.jpa.starter; +import ca.uhn.fhir.batch2.jobs.imprt.BulkDataImportProvider; import ca.uhn.fhir.batch2.jobs.reindex.ReindexProvider; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirVersionEnum; @@ -78,6 +79,8 @@ public class BaseJpaRestfulServer extends RestfulServer { @Autowired BulkDataExportProvider bulkDataExportProvider; @Autowired + BulkDataImportProvider bulkDataImportProvider; + @Autowired PartitionManagementProvider partitionManagementProvider; @Autowired @@ -364,6 +367,11 @@ public class BaseJpaRestfulServer extends RestfulServer { registerProvider(bulkDataExportProvider); } + //Bulk Import + if (appProperties.getBulk_import_enabled()) { + registerProvider(bulkDataImportProvider); + } + // valueSet Operations i.e $expand registerProvider(myValueSetOperationProvider); diff --git a/src/main/resources/application.yaml b/src/main/resources/application.yaml index 8a18d87..c822263 100644 --- a/src/main/resources/application.yaml +++ b/src/main/resources/application.yaml @@ -96,6 +96,8 @@ hapi: ### !!Extended Lucene/Elasticsearch Indexing is still a experimental feature, expect some features (e.g. _total=accurate) to not work as expected!! ### more information here: https://hapifhir.io/hapi-fhir/docs/server_jpa/elastic.html advanced_lucene_indexing: false + bulk_export_enabled: true + bulk_import_enabled: true # enforce_referential_integrity_on_delete: false # This is an experimental feature, and does not fully support _total and other FHIR features. # enforce_referential_integrity_on_delete: false From c617f4e395957b72c4eba9cbfe58843436705307 Mon Sep 17 00:00:00 2001 From: Arbaaz Muslim Date: Tue, 9 Aug 2022 16:48:22 -0700 Subject: [PATCH 2/2] bulk data instrumentation turned off by default --- src/main/resources/application.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/resources/application.yaml b/src/main/resources/application.yaml index c822263..cb9c9a3 100644 --- a/src/main/resources/application.yaml +++ b/src/main/resources/application.yaml @@ -96,8 +96,8 @@ hapi: ### !!Extended Lucene/Elasticsearch Indexing is still a experimental feature, expect some features (e.g. _total=accurate) to not work as expected!! ### more information here: https://hapifhir.io/hapi-fhir/docs/server_jpa/elastic.html advanced_lucene_indexing: false - bulk_export_enabled: true - bulk_import_enabled: true + bulk_export_enabled: false + bulk_import_enabled: false # enforce_referential_integrity_on_delete: false # This is an experimental feature, and does not fully support _total and other FHIR features. # enforce_referential_integrity_on_delete: false