diff --git a/pom.xml b/pom.xml
index 218d077..20b3fc7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -15,7 +15,7 @@
ca.uhn.hapi.fhir
hapi-fhir
- 5.4.0-PRE1-SNAPSHOT
+ 5.4.0-PRE2-SNAPSHOT
hapi-fhir-jpaserver-starter
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 888be76..8a00b71 100644
--- a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java
+++ b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java
@@ -31,6 +31,7 @@ public class AppProperties {
private Boolean allow_placeholder_references = true;
private Boolean auto_create_placeholder_reference_targets = false;
private Boolean enable_index_missing_fields = false;
+ private Boolean enable_index_contained_resource = false;
private Boolean enable_repository_validating_interceptor = false;
private Boolean enforce_referential_integrity_on_delete = true;
private Boolean enforce_referential_integrity_on_write = true;
@@ -276,6 +277,14 @@ public class AppProperties {
this.enable_index_missing_fields = enable_index_missing_fields;
}
+ public Boolean getEnable_index_contained_resource() {
+ return enable_index_contained_resource;
+ }
+
+ public void setEnable_index_contained_resource(Boolean enable_index_contained_resource) {
+ this.enable_index_contained_resource = enable_index_contained_resource;
+ }
+
public Boolean getEnable_repository_validating_interceptor() {
return enable_repository_validating_interceptor;
}
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 8154714..95708e7 100644
--- a/src/main/java/ca/uhn/fhir/jpa/starter/BaseJpaRestfulServer.java
+++ b/src/main/java/ca/uhn/fhir/jpa/starter/BaseJpaRestfulServer.java
@@ -384,5 +384,7 @@ public class BaseJpaRestfulServer extends RestfulServer {
}
daoConfig.getModelConfig().setNormalizedQuantitySearchLevel(appProperties.getNormalized_quantity_search_level());
+
+ daoConfig.getModelConfig().setIndexOnContainedResources(appProperties.getEnable_index_contained_resource());
}
}
diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/EnvironmentHelper.java b/src/main/java/ca/uhn/fhir/jpa/starter/EnvironmentHelper.java
index 2efe064..75db0f8 100644
--- a/src/main/java/ca/uhn/fhir/jpa/starter/EnvironmentHelper.java
+++ b/src/main/java/ca/uhn/fhir/jpa/starter/EnvironmentHelper.java
@@ -183,4 +183,4 @@ public class EnvironmentHelper {
aBase.put(entry.getKey(), entry.getValue());
}
}
-}
+}
\ No newline at end of file
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 e73ce18..55eae25 100644
--- a/src/main/java/ca/uhn/fhir/jpa/starter/FhirServerConfigCommon.java
+++ b/src/main/java/ca/uhn/fhir/jpa/starter/FhirServerConfigCommon.java
@@ -61,6 +61,10 @@ public class FhirServerConfigCommon {
if (appProperties.getSubscription().getEmail() != null) {
ourLog.info("Email subscriptions enabled");
}
+
+ if (appProperties.getEnable_index_contained_resource() == Boolean.TRUE) {
+ ourLog.info("Indexed on contained resource enabled");
+ }
}
/**
@@ -163,6 +167,8 @@ public class FhirServerConfigCommon {
}
modelConfig.setNormalizedQuantitySearchLevel(appProperties.getNormalized_quantity_search_level());
+
+ modelConfig.setIndexOnContainedResources(appProperties.getEnable_index_contained_resource());
return modelConfig;
}
diff --git a/src/main/resources/application.yaml b/src/main/resources/application.yaml
index f46cacf..f1b021d 100644
--- a/src/main/resources/application.yaml
+++ b/src/main/resources/application.yaml
@@ -74,6 +74,7 @@ hapi:
# default_page_size: 20
# enable_repository_validating_interceptor: false
# enable_index_missing_fields: false
+# enable_index_contained_resource: false
# enforce_referential_integrity_on_delete: false
# enforce_referential_integrity_on_write: false
# etag_support_enabled: true
diff --git a/src/test/java/ca/uhn/fhir/jpa/starter/ElasticsearchLastNR4IT.java b/src/test/java/ca/uhn/fhir/jpa/starter/ElasticsearchLastNR4IT.java
index 902abbe..2dcf32d 100644
--- a/src/test/java/ca/uhn/fhir/jpa/starter/ElasticsearchLastNR4IT.java
+++ b/src/test/java/ca/uhn/fhir/jpa/starter/ElasticsearchLastNR4IT.java
@@ -60,7 +60,7 @@ public class ElasticsearchLastNR4IT {
private IGenericClient ourClient;
private FhirContext ourCtx;
- private static final String ELASTIC_VERSION = "7.10.1";
+ private static final String ELASTIC_VERSION = "7.10.2";
private static final String ELASTIC_IMAGE = "docker.elastic.co/elasticsearch/elasticsearch:" + ELASTIC_VERSION;
private static ElasticsearchContainer embeddedElastic;