code cleanup (#2986)

* failed attempt to get it to work

* Use simplified FhirContext.forCached methods

* Update hapi-fhir-base/src/main/java/ca/uhn/fhir/context/FhirContext.java

Co-authored-by: James Agnew <jamesagnew@gmail.com>

Co-authored-by: James Agnew <jamesagnew@gmail.com>
This commit is contained in:
Ken Stevens 2021-09-12 23:09:18 -04:00 committed by GitHub
parent 5554431146
commit eee7d7e455
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
68 changed files with 305 additions and 313 deletions

View File

@ -225,6 +225,14 @@ public class FhirContext {
} }
/**
* @since 5.6.0
*/
public static FhirContext forDstu2Cached() {
return forCached(FhirVersionEnum.DSTU2);
}
/** /**
* @since 5.5.0 * @since 5.5.0
*/ */

View File

@ -54,4 +54,8 @@ public class PartitionedUrl implements IModelJson {
public void setRequestPartitionId(RequestPartitionId theRequestPartitionId) { public void setRequestPartitionId(RequestPartitionId theRequestPartitionId) {
myRequestPartitionId = theRequestPartitionId; myRequestPartitionId = theRequestPartitionId;
} }
public boolean isPartitioned() {
return myRequestPartitionId != null && !myRequestPartitionId.isDefaultPartition();
}
} }

View File

@ -1,16 +1,15 @@
package ca.uhn.fhir.jpa.bulk; package ca.uhn.fhir.jpa.bulk;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.api.IInterceptorBroadcaster; import ca.uhn.fhir.interceptor.api.IInterceptorBroadcaster;
import ca.uhn.fhir.rest.api.server.bulk.BulkDataExportOptions;
import ca.uhn.fhir.jpa.bulk.export.api.IBulkDataExportSvc; import ca.uhn.fhir.jpa.bulk.export.api.IBulkDataExportSvc;
import ca.uhn.fhir.jpa.bulk.export.model.BulkExportResponseJson;
import ca.uhn.fhir.jpa.bulk.export.model.BulkExportJobStatusEnum; import ca.uhn.fhir.jpa.bulk.export.model.BulkExportJobStatusEnum;
import ca.uhn.fhir.jpa.bulk.export.model.BulkExportResponseJson;
import ca.uhn.fhir.jpa.bulk.export.provider.BulkDataExportProvider; import ca.uhn.fhir.jpa.bulk.export.provider.BulkDataExportProvider;
import ca.uhn.fhir.jpa.model.util.JpaConstants; import ca.uhn.fhir.jpa.model.util.JpaConstants;
import ca.uhn.fhir.rest.api.Constants; import ca.uhn.fhir.rest.api.Constants;
import ca.uhn.fhir.rest.api.server.RequestDetails; import ca.uhn.fhir.rest.api.server.RequestDetails;
import ca.uhn.fhir.rest.api.server.bulk.BulkDataExportOptions;
import ca.uhn.fhir.rest.client.apache.ResourceEntity; import ca.uhn.fhir.rest.client.apache.ResourceEntity;
import ca.uhn.fhir.rest.server.RestfulServer; import ca.uhn.fhir.rest.server.RestfulServer;
import ca.uhn.fhir.rest.server.exceptions.ResourceNotFoundException; import ca.uhn.fhir.rest.server.exceptions.ResourceNotFoundException;
@ -55,11 +54,8 @@ import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.notNullValue; import static org.hamcrest.Matchers.notNullValue;
import static org.hamcrest.Matchers.nullValue; import static org.hamcrest.Matchers.nullValue;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean; import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.isNull;
import static org.mockito.ArgumentMatchers.nullable; import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Mockito.eq; import static org.mockito.Mockito.eq;
import static org.mockito.Mockito.times; import static org.mockito.Mockito.times;
@ -74,7 +70,7 @@ public class BulkDataExportProviderTest {
private static final String GROUP_ID = "Group/G2401"; private static final String GROUP_ID = "Group/G2401";
private static final String G_JOB_ID = "0000000-GGGGGG"; private static final String G_JOB_ID = "0000000-GGGGGG";
private Server myServer; private Server myServer;
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
private int myPort; private int myPort;
@Mock @Mock
private IBulkDataExportSvc myBulkDataExportSvc; private IBulkDataExportSvc myBulkDataExportSvc;
@ -478,7 +474,7 @@ public class BulkDataExportProviderTest {
when(myBulkDataExportSvc.submitJob(any(), any(), nullable(RequestDetails.class))).thenReturn(jobInfo); when(myBulkDataExportSvc.submitJob(any(), any(), nullable(RequestDetails.class))).thenReturn(jobInfo);
String url = "http://localhost:" + myPort + "/" + "Group/123/" +JpaConstants.OPERATION_EXPORT String url = "http://localhost:" + myPort + "/" + "Group/123/" +JpaConstants.OPERATION_EXPORT
+ "?" + JpaConstants.PARAM_EXPORT_OUTPUT_FORMAT + "=" + UrlUtil.escapeUrlParam(Constants.CT_FHIR_NDJSON);; + "?" + JpaConstants.PARAM_EXPORT_OUTPUT_FORMAT + "=" + UrlUtil.escapeUrlParam(Constants.CT_FHIR_NDJSON);
HttpGet get = new HttpGet(url); HttpGet get = new HttpGet(url);
get.addHeader(Constants.HEADER_PREFER, Constants.HEADER_PREFER_RESPOND_ASYNC); get.addHeader(Constants.HEADER_PREFER, Constants.HEADER_PREFER_RESPOND_ASYNC);

View File

@ -1,19 +1,18 @@
package ca.uhn.fhir.jpa.dao; package ca.uhn.fhir.jpa.dao;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.parser.DataFormatException; import ca.uhn.fhir.parser.DataFormatException;
import ca.uhn.fhir.parser.LenientErrorHandler; import ca.uhn.fhir.parser.LenientErrorHandler;
import org.hl7.fhir.r4.model.Observation; import org.hl7.fhir.r4.model.Observation;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.containsString;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.hamcrest.MatcherAssert.assertThat;
public class TolerantJsonParserR4Test { public class TolerantJsonParserR4Test {
private FhirContext myFhirContext = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myFhirContext = FhirContext.forR4Cached();
@Test @Test
public void testParseInvalidNumeric_LeadingDecimal() { public void testParseInvalidNumeric_LeadingDecimal() {

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.dao; package ca.uhn.fhir.jpa.dao;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.executor.InterceptorService; import ca.uhn.fhir.interceptor.executor.InterceptorService;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.api.dao.DaoRegistry; import ca.uhn.fhir.jpa.api.dao.DaoRegistry;
@ -123,7 +122,7 @@ public class TransactionProcessorTest {
@Bean @Bean
public FhirContext fhirContext() { public FhirContext fhirContext() {
return FhirContext.forCached(FhirVersionEnum.R4); return FhirContext.forR4Cached();
} }
@Bean @Bean

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.dao.r4; package ca.uhn.fhir.jpa.dao.r4;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.context.RuntimeResourceDefinition; import ca.uhn.fhir.context.RuntimeResourceDefinition;
import ca.uhn.fhir.context.RuntimeSearchParam; import ca.uhn.fhir.context.RuntimeSearchParam;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
@ -32,7 +31,7 @@ public class FhirResourceDaoSearchParameterR4Test {
@BeforeEach @BeforeEach
public void before() { public void before() {
myCtx = FhirContext.forCached(FhirVersionEnum.R4); myCtx = FhirContext.forR4Cached();
myDao = new FhirResourceDaoSearchParameterR4(); myDao = new FhirResourceDaoSearchParameterR4();
myDao.setContext(myCtx); myDao.setContext(myCtx);

View File

@ -1,24 +1,33 @@
package ca.uhn.fhir.jpa.dao.r4; package ca.uhn.fhir.jpa.dao.r4;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.api.dao.IFhirSystemDao; import ca.uhn.fhir.jpa.api.dao.IFhirSystemDao;
import ca.uhn.fhir.jpa.config.TestR4ConfigWithElasticsearchClient; import ca.uhn.fhir.jpa.config.TestR4ConfigWithElasticsearchClient;
import ca.uhn.fhir.jpa.dao.ObservationLastNIndexPersistSvc; import ca.uhn.fhir.jpa.dao.ObservationLastNIndexPersistSvc;
import ca.uhn.fhir.jpa.model.entity.ResourceTable; import ca.uhn.fhir.jpa.model.entity.ResourceTable;
import ca.uhn.fhir.jpa.model.util.CodeSystemHash;
import ca.uhn.fhir.jpa.search.lastn.ElasticsearchSvcImpl; import ca.uhn.fhir.jpa.search.lastn.ElasticsearchSvcImpl;
import ca.uhn.fhir.jpa.search.lastn.json.CodeJson; import ca.uhn.fhir.jpa.search.lastn.json.CodeJson;
import ca.uhn.fhir.jpa.search.lastn.json.ObservationJson; import ca.uhn.fhir.jpa.search.lastn.json.ObservationJson;
import ca.uhn.fhir.jpa.searchparam.SearchParameterMap; import ca.uhn.fhir.jpa.searchparam.SearchParameterMap;
import ca.uhn.fhir.parser.IParser; import ca.uhn.fhir.parser.IParser;
import ca.uhn.fhir.rest.param.*; import ca.uhn.fhir.rest.param.ReferenceAndListParam;
import ca.uhn.fhir.rest.param.ReferenceOrListParam;
import ca.uhn.fhir.rest.param.ReferenceParam;
import ca.uhn.fhir.rest.param.TokenAndListParam;
import ca.uhn.fhir.rest.param.TokenOrListParam;
import ca.uhn.fhir.rest.param.TokenParam;
import ca.uhn.fhir.test.utilities.docker.RequiresDocker; import ca.uhn.fhir.test.utilities.docker.RequiresDocker;
import com.google.common.base.Charsets; import com.google.common.base.Charsets;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.aspectj.lang.annotation.Before; import org.hl7.fhir.r4.model.Bundle;
import org.hl7.fhir.r4.model.*; import org.hl7.fhir.r4.model.CodeableConcept;
import org.hl7.fhir.r4.model.Coding;
import org.hl7.fhir.r4.model.DateTimeType;
import org.hl7.fhir.r4.model.IdType;
import org.hl7.fhir.r4.model.Meta;
import org.hl7.fhir.r4.model.Observation;
import org.hl7.fhir.r4.model.Reference;
import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.MethodOrderer; import org.junit.jupiter.api.MethodOrderer;
@ -31,14 +40,18 @@ import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit.jupiter.SpringExtension; import org.springframework.test.context.junit.jupiter.SpringExtension;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import javax.persistence.EntityManager; import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext; import javax.persistence.PersistenceContext;
import javax.persistence.PersistenceContextType; import javax.persistence.PersistenceContextType;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.util.*; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicInteger;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
@ -411,7 +424,7 @@ public class PersistObservationIndexedSearchParamLastNR4IT {
@Order(1) @Order(1)
@Test @Test
public void testSampleBundleInTransaction() throws IOException { public void testSampleBundleInTransaction() throws IOException {
FhirContext myFhirCtx = FhirContext.forCached(FhirVersionEnum.R4); FhirContext myFhirCtx = FhirContext.forR4Cached();
PathMatchingResourcePatternResolver provider = new PathMatchingResourcePatternResolver(); PathMatchingResourcePatternResolver provider = new PathMatchingResourcePatternResolver();
final Resource[] bundleResources; final Resource[] bundleResources;

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.dao.r4; package ca.uhn.fhir.jpa.dao.r4;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.context.RuntimeResourceDefinition; import ca.uhn.fhir.context.RuntimeResourceDefinition;
import ca.uhn.fhir.context.RuntimeSearchParam; import ca.uhn.fhir.context.RuntimeSearchParam;
import ca.uhn.fhir.context.phonetic.IPhoneticEncoder; import ca.uhn.fhir.context.phonetic.IPhoneticEncoder;
@ -61,7 +60,7 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
public class SearchParamExtractorR4Test { public class SearchParamExtractorR4Test {
private static final Logger ourLog = LoggerFactory.getLogger(SearchParamExtractorR4Test.class); private static final Logger ourLog = LoggerFactory.getLogger(SearchParamExtractorR4Test.class);
private static FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.R4); private static final FhirContext ourCtx = FhirContext.forR4Cached();
private MySearchParamRegistry mySearchParamRegistry; private MySearchParamRegistry mySearchParamRegistry;
private PartitionSettings myPartitionSettings; private PartitionSettings myPartitionSettings;
@ -398,7 +397,7 @@ public class SearchParamExtractorR4Test {
private static class MySearchParamRegistry implements ISearchParamRegistry, ISearchParamRegistryController { private static class MySearchParamRegistry implements ISearchParamRegistry, ISearchParamRegistryController {
private List<RuntimeSearchParam> myExtraSearchParams = new ArrayList<>(); private final List<RuntimeSearchParam> myExtraSearchParams = new ArrayList<>();
@Override @Override
public void forceRefresh() { public void forceRefresh() {

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.dao.r4; package ca.uhn.fhir.jpa.dao.r4;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.searchparam.SearchParameterMap; import ca.uhn.fhir.jpa.searchparam.SearchParameterMap;
import ca.uhn.fhir.rest.param.HasParam; import ca.uhn.fhir.rest.param.HasParam;
import ca.uhn.fhir.test.BaseTest; import ca.uhn.fhir.test.BaseTest;
@ -11,7 +10,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
public class SearchParameterMapTest extends BaseTest { public class SearchParameterMapTest extends BaseTest {
private FhirContext myContext = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myContext = FhirContext.forR4Cached();
@Test @Test
public void toNormalizedQueryStringTest() { public void toNormalizedQueryStringTest() {

View File

@ -185,7 +185,7 @@ public class NpmR4Test extends BaseJpaR4Test {
assertEquals("Nictiz NL package of FHIR STU3 conformance resources for MedMij information standard Questionnaires. Includes dependency on Zib2017 and SDC.\\n\\nHCIMs: https://zibs.nl/wiki/HCIM_Release_2017(EN)", pkg.description()); assertEquals("Nictiz NL package of FHIR STU3 conformance resources for MedMij information standard Questionnaires. Includes dependency on Zib2017 and SDC.\\n\\nHCIMs: https://zibs.nl/wiki/HCIM_Release_2017(EN)", pkg.description());
// Fetch resource by URL // Fetch resource by URL
FhirContext fhirContext = FhirContext.forCached(FhirVersionEnum.DSTU3); FhirContext fhirContext = FhirContext.forDstu3Cached();
runInTransaction(() -> { runInTransaction(() -> {
IBaseResource asset = myPackageCacheManager.loadPackageAssetByUrl(FhirVersionEnum.DSTU3, "http://nictiz.nl/fhir/StructureDefinition/vl-QuestionnaireResponse"); IBaseResource asset = myPackageCacheManager.loadPackageAssetByUrl(FhirVersionEnum.DSTU3, "http://nictiz.nl/fhir/StructureDefinition/vl-QuestionnaireResponse");
assertThat(fhirContext.newJsonParser().encodeResourceToString(asset), containsString("\"url\":\"http://nictiz.nl/fhir/StructureDefinition/vl-QuestionnaireResponse\",\"version\":\"1.0.1\"")); assertThat(fhirContext.newJsonParser().encodeResourceToString(asset), containsString("\"url\":\"http://nictiz.nl/fhir/StructureDefinition/vl-QuestionnaireResponse\",\"version\":\"1.0.1\""));

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.packages; package ca.uhn.fhir.jpa.packages;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import org.hl7.fhir.r4.model.Enumerations; import org.hl7.fhir.r4.model.Enumerations;
import org.hl7.fhir.r4.model.SearchParameter; import org.hl7.fhir.r4.model.SearchParameter;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
@ -11,7 +10,7 @@ import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertTrue;
class PackageInstallerSvcImplTest { class PackageInstallerSvcImplTest {
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
private PackageInstallerSvcImpl mySvc; private PackageInstallerSvcImpl mySvc;

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.partition; package ca.uhn.fhir.jpa.partition;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.entity.PartitionEntity; import ca.uhn.fhir.jpa.entity.PartitionEntity;
import ca.uhn.fhir.rest.client.api.IGenericClient; import ca.uhn.fhir.rest.client.api.IGenericClient;
import ca.uhn.fhir.rest.client.interceptor.LoggingInterceptor; import ca.uhn.fhir.rest.client.interceptor.LoggingInterceptor;
@ -43,7 +42,7 @@ import static org.mockito.Mockito.when;
public class PartitionManagementProviderTest { public class PartitionManagementProviderTest {
private static final Logger ourLog = LoggerFactory.getLogger(PartitionManagementProviderTest.class); private static final Logger ourLog = LoggerFactory.getLogger(PartitionManagementProviderTest.class);
private static FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.R4); private static final FhirContext ourCtx = FhirContext.forR4Cached();
@RegisterExtension @RegisterExtension
public static RestfulServerExtension ourServerRule = new RestfulServerExtension(ourCtx); public static RestfulServerExtension ourServerRule = new RestfulServerExtension(ourCtx);
@MockBean @MockBean

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.patch; package ca.uhn.fhir.jpa.patch;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException; import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException;
import org.hl7.fhir.instance.model.api.IBase; import org.hl7.fhir.instance.model.api.IBase;
import org.hl7.fhir.instance.model.api.IBaseResource; import org.hl7.fhir.instance.model.api.IBaseResource;
@ -24,7 +23,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
public class FhirPatchApplyR4Test { public class FhirPatchApplyR4Test {
private static final FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.R4); private static final FhirContext ourCtx = FhirContext.forR4Cached();
private static final Logger ourLog = LoggerFactory.getLogger(FhirPatchApplyR4Test.class); private static final Logger ourLog = LoggerFactory.getLogger(FhirPatchApplyR4Test.class);
@Test @Test

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.patch; package ca.uhn.fhir.jpa.patch;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.test.BaseTest; import ca.uhn.fhir.test.BaseTest;
import ca.uhn.fhir.util.ClasspathUtil; import ca.uhn.fhir.util.ClasspathUtil;
import ca.uhn.fhir.util.XmlUtil; import ca.uhn.fhir.util.XmlUtil;
@ -51,10 +50,10 @@ public class FhirPatchCoreTest extends BaseTest {
public static List<Object[]> parameters() throws TransformerException, SAXException, IOException { public static List<Object[]> parameters() throws TransformerException, SAXException, IOException {
String testSpecR4 = "/org/hl7/fhir/testcases/r4/patch/fhir-path-tests.xml"; String testSpecR4 = "/org/hl7/fhir/testcases/r4/patch/fhir-path-tests.xml";
Collection<Object[]> retValR4 = loadTestSpec(FhirContext.forCached(FhirVersionEnum.R4), testSpecR4); Collection<Object[]> retValR4 = loadTestSpec(FhirContext.forR4Cached(), testSpecR4);
String testSpecR5 = "/org/hl7/fhir/testcases/r5/patch/fhir-path-tests.xml"; String testSpecR5 = "/org/hl7/fhir/testcases/r5/patch/fhir-path-tests.xml";
Collection<Object[]> retValR5 = loadTestSpec(FhirContext.forCached(FhirVersionEnum.R5), testSpecR5); Collection<Object[]> retValR5 = loadTestSpec(FhirContext.forR5Cached(), testSpecR5);
ArrayList<Object[]> retVal = new ArrayList<>(); ArrayList<Object[]> retVal = new ArrayList<>();
retVal.addAll(retValR4); retVal.addAll(retValR4);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.patch; package ca.uhn.fhir.jpa.patch;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import org.hl7.fhir.instance.model.api.IBase; import org.hl7.fhir.instance.model.api.IBase;
import org.hl7.fhir.r4.model.BooleanType; import org.hl7.fhir.r4.model.BooleanType;
import org.hl7.fhir.r4.model.DateTimeType; import org.hl7.fhir.r4.model.DateTimeType;
@ -22,7 +21,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
public class FhirPatchDiffR4Test { public class FhirPatchDiffR4Test {
private static final Logger ourLog = LoggerFactory.getLogger(FhirPatchDiffR4Test.class); private static final Logger ourLog = LoggerFactory.getLogger(FhirPatchDiffR4Test.class);
private static final FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.R4); private static final FhirContext ourCtx = FhirContext.forR4Cached();
@Test @Test
public void testReplaceIdentifier() { public void testReplaceIdentifier() {

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.provider; package ca.uhn.fhir.jpa.provider;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.rest.annotation.OptionalParam; import ca.uhn.fhir.rest.annotation.OptionalParam;
import ca.uhn.fhir.rest.annotation.Search; import ca.uhn.fhir.rest.annotation.Search;
import ca.uhn.fhir.rest.api.Constants; import ca.uhn.fhir.rest.api.Constants;
@ -31,7 +30,6 @@ import org.hl7.fhir.r4.model.Patient;
import org.hl7.fhir.r4.model.Resource; import org.hl7.fhir.r4.model.Resource;
import org.hl7.fhir.utilities.graphql.Argument; import org.hl7.fhir.utilities.graphql.Argument;
import org.hl7.fhir.utilities.graphql.IGraphQLStorageServices; import org.hl7.fhir.utilities.graphql.IGraphQLStorageServices;
import org.hl7.fhir.utilities.graphql.Value;
import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
@ -40,7 +38,6 @@ import org.junit.jupiter.api.Test;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.LinkedList;
import java.util.List; import java.util.List;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -55,7 +52,7 @@ public class JpaGraphQLR4ProviderTest {
public static final String DATA_PREFIX = "{\"data\": "; public static final String DATA_PREFIX = "{\"data\": ";
public static final String DATA_SUFFIX = "}"; public static final String DATA_SUFFIX = "}";
private static CloseableHttpClient ourClient; private static CloseableHttpClient ourClient;
private static FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.R4); private static final FhirContext ourCtx = FhirContext.forR4Cached();
private static int ourPort; private static int ourPort;
private static Server ourServer; private static Server ourServer;
@ -252,7 +249,7 @@ public class JpaGraphQLR4ProviderTest {
Patient patient = new Patient(); Patient patient = new Patient();
patient.addName(new HumanName().setFamily("FAMILY")); patient.addName(new HumanName().setFamily("FAMILY"));
patient.getIdElement().setValue("Patient/" + i); patient.getIdElement().setValue("Patient/" + i);
retVal.add((Patient) patient); retVal.add(patient);
} }
return retVal; return retVal;
} }

View File

@ -1,25 +1,30 @@
package ca.uhn.fhir.jpa.provider; package ca.uhn.fhir.jpa.provider;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotEquals;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.rest.api.SearchContainedModeEnum;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.Test;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.jpa.searchparam.SearchParameterMap; import ca.uhn.fhir.jpa.searchparam.SearchParameterMap;
import ca.uhn.fhir.jpa.searchparam.SearchParameterMap.EverythingModeEnum; import ca.uhn.fhir.jpa.searchparam.SearchParameterMap.EverythingModeEnum;
import ca.uhn.fhir.model.api.Include; import ca.uhn.fhir.model.api.Include;
import ca.uhn.fhir.rest.api.SearchContainedModeEnum;
import ca.uhn.fhir.rest.api.SortOrderEnum; import ca.uhn.fhir.rest.api.SortOrderEnum;
import ca.uhn.fhir.rest.api.SortSpec; import ca.uhn.fhir.rest.api.SortSpec;
import ca.uhn.fhir.rest.param.*; import ca.uhn.fhir.rest.param.DateAndListParam;
import ca.uhn.fhir.util.TestUtil; import ca.uhn.fhir.rest.param.DateOrListParam;
import ca.uhn.fhir.rest.param.DateParam;
import ca.uhn.fhir.rest.param.ParamPrefixEnum;
import ca.uhn.fhir.rest.param.StringAndListParam;
import ca.uhn.fhir.rest.param.StringOrListParam;
import ca.uhn.fhir.rest.param.StringParam;
import ca.uhn.fhir.rest.param.TokenAndListParam;
import ca.uhn.fhir.rest.param.TokenOrListParam;
import ca.uhn.fhir.rest.param.TokenParam;
import ca.uhn.fhir.util.UrlUtil; import ca.uhn.fhir.util.UrlUtil;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotEquals;
public class SearchParameterMapTest { public class SearchParameterMapTest {
private static FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.DSTU3); private static final FhirContext ourCtx = FhirContext.forDstu3Cached();
@Test @Test

View File

@ -1,15 +1,22 @@
package ca.uhn.fhir.jpa.provider; package ca.uhn.fhir.jpa.provider;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.dao.dstu2.BaseJpaDstu2Test; import ca.uhn.fhir.jpa.dao.dstu2.BaseJpaDstu2Test;
import ca.uhn.fhir.jpa.rp.dstu2.*; import ca.uhn.fhir.jpa.rp.dstu2.BinaryResourceProvider;
import ca.uhn.fhir.model.dstu2.resource.*; import ca.uhn.fhir.jpa.rp.dstu2.DiagnosticOrderResourceProvider;
import ca.uhn.fhir.jpa.rp.dstu2.DiagnosticReportResourceProvider;
import ca.uhn.fhir.jpa.rp.dstu2.LocationResourceProvider;
import ca.uhn.fhir.jpa.rp.dstu2.ObservationResourceProvider;
import ca.uhn.fhir.jpa.rp.dstu2.OrganizationResourceProvider;
import ca.uhn.fhir.jpa.rp.dstu2.PatientResourceProvider;
import ca.uhn.fhir.jpa.rp.dstu2.PractitionerResourceProvider;
import ca.uhn.fhir.model.dstu2.resource.Bundle;
import ca.uhn.fhir.model.dstu2.resource.OperationDefinition;
import ca.uhn.fhir.model.dstu2.resource.OperationOutcome;
import ca.uhn.fhir.model.dstu2.resource.Patient;
import ca.uhn.fhir.model.dstu2.valueset.BundleTypeEnum; import ca.uhn.fhir.model.dstu2.valueset.BundleTypeEnum;
import ca.uhn.fhir.model.dstu2.valueset.HTTPVerbEnum; import ca.uhn.fhir.model.dstu2.valueset.HTTPVerbEnum;
import ca.uhn.fhir.model.primitive.DecimalDt;
import ca.uhn.fhir.model.primitive.IdDt; import ca.uhn.fhir.model.primitive.IdDt;
import ca.uhn.fhir.model.primitive.StringDt;
import ca.uhn.fhir.rest.api.EncodingEnum; import ca.uhn.fhir.rest.api.EncodingEnum;
import ca.uhn.fhir.rest.client.api.IGenericClient; import ca.uhn.fhir.rest.client.api.IGenericClient;
import ca.uhn.fhir.rest.server.FifoMemoryPagingProvider; import ca.uhn.fhir.rest.server.FifoMemoryPagingProvider;
@ -17,8 +24,8 @@ import ca.uhn.fhir.rest.server.RestfulServer;
import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException; import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException;
import ca.uhn.fhir.rest.server.exceptions.ResourceGoneException; import ca.uhn.fhir.rest.server.exceptions.ResourceGoneException;
import ca.uhn.fhir.rest.server.interceptor.ResponseHighlighterInterceptor; import ca.uhn.fhir.rest.server.interceptor.ResponseHighlighterInterceptor;
import ca.uhn.fhir.test.utilities.JettyUtil;
import ca.uhn.fhir.util.BundleUtil; import ca.uhn.fhir.util.BundleUtil;
import ca.uhn.fhir.util.TestUtil;
import com.google.common.base.Charsets; import com.google.common.base.Charsets;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.CloseableHttpResponse;
@ -30,14 +37,11 @@ import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.servlet.ServletHolder;
import org.hl7.fhir.instance.model.api.IIdType;
import org.hl7.fhir.r4.model.IdType; import org.hl7.fhir.r4.model.IdType;
import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
@ -45,10 +49,13 @@ import java.nio.charset.StandardCharsets;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.*; import static org.hamcrest.Matchers.containsString;
import static org.junit.jupiter.api.Assertions.*; import static org.hamcrest.Matchers.not;
import static org.hamcrest.Matchers.startsWith;
import ca.uhn.fhir.test.utilities.JettyUtil; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.junit.jupiter.api.Assertions.fail;
public class SystemProviderDstu2Test extends BaseJpaDstu2Test { public class SystemProviderDstu2Test extends BaseJpaDstu2Test {
@ -104,7 +111,7 @@ public class SystemProviderDstu2Test extends BaseJpaDstu2Test {
servletHolder.setServlet(restServer); servletHolder.setServlet(restServer);
proxyHandler.addServlet(servletHolder, "/fhir/context/*"); proxyHandler.addServlet(servletHolder, "/fhir/context/*");
ourCtx = FhirContext.forCached(FhirVersionEnum.DSTU2); ourCtx = FhirContext.forDstu2Cached();
restServer.setFhirContext(ourCtx); restServer.setFhirContext(ourCtx);
ourServer.setHandler(proxyHandler); ourServer.setHandler(proxyHandler);
@ -396,7 +403,6 @@ public class SystemProviderDstu2Test extends BaseJpaDstu2Test {
assertEquals(200, http.getStatusLine().getStatusCode()); assertEquals(200, http.getStatusLine().getStatusCode());
} finally { } finally {
IOUtils.closeQuietly(http); IOUtils.closeQuietly(http);
;
} }
} }

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.provider; package ca.uhn.fhir.jpa.provider;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.dao.dstu2.BaseJpaDstu2Test; import ca.uhn.fhir.jpa.dao.dstu2.BaseJpaDstu2Test;
import ca.uhn.fhir.jpa.rp.dstu2.ObservationResourceProvider; import ca.uhn.fhir.jpa.rp.dstu2.ObservationResourceProvider;
@ -82,7 +81,7 @@ public class SystemProviderTransactionSearchDstu2Test extends BaseJpaDstu2Test {
servletHolder.setServlet(restServer); servletHolder.setServlet(restServer);
proxyHandler.addServlet(servletHolder, "/fhir/context/*"); proxyHandler.addServlet(servletHolder, "/fhir/context/*");
ourCtx = FhirContext.forCached(FhirVersionEnum.DSTU2); ourCtx = FhirContext.forDstu2Cached();
restServer.setFhirContext(ourCtx); restServer.setFhirContext(ourCtx);
ourServer.setHandler(proxyHandler); ourServer.setHandler(proxyHandler);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.provider; package ca.uhn.fhir.jpa.provider;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException; import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException;
import ca.uhn.fhir.test.BaseTest; import ca.uhn.fhir.test.BaseTest;
import org.hl7.fhir.r4.model.CodeSystem; import org.hl7.fhir.r4.model.CodeSystem;
@ -13,7 +12,7 @@ public class TerminologyUploaderProviderTest extends BaseTest {
@Test @Test
public void testCanonicalizeR3() { public void testCanonicalizeR3() {
TerminologyUploaderProvider provider = new TerminologyUploaderProvider(); TerminologyUploaderProvider provider = new TerminologyUploaderProvider();
provider.setContext(FhirContext.forCached(FhirVersionEnum.DSTU3)); provider.setContext(FhirContext.forDstu3Cached());
org.hl7.fhir.dstu3.model.CodeSystem input = new org.hl7.fhir.dstu3.model.CodeSystem(); org.hl7.fhir.dstu3.model.CodeSystem input = new org.hl7.fhir.dstu3.model.CodeSystem();
input.addConcept().setCode("FOO").setDisplay("Foo"); input.addConcept().setCode("FOO").setDisplay("Foo");
@ -26,7 +25,7 @@ public class TerminologyUploaderProviderTest extends BaseTest {
@Test @Test
public void testCanonicalizeR4() { public void testCanonicalizeR4() {
TerminologyUploaderProvider provider = new TerminologyUploaderProvider(); TerminologyUploaderProvider provider = new TerminologyUploaderProvider();
provider.setContext(FhirContext.forCached(FhirVersionEnum.R4)); provider.setContext(FhirContext.forR4Cached());
org.hl7.fhir.r4.model.CodeSystem input = new org.hl7.fhir.r4.model.CodeSystem(); org.hl7.fhir.r4.model.CodeSystem input = new org.hl7.fhir.r4.model.CodeSystem();
input.addConcept().setCode("FOO").setDisplay("Foo"); input.addConcept().setCode("FOO").setDisplay("Foo");
@ -39,7 +38,7 @@ public class TerminologyUploaderProviderTest extends BaseTest {
@Test @Test
public void testCanonicalizeR5() { public void testCanonicalizeR5() {
TerminologyUploaderProvider provider = new TerminologyUploaderProvider(); TerminologyUploaderProvider provider = new TerminologyUploaderProvider();
provider.setContext(FhirContext.forCached(FhirVersionEnum.R5)); provider.setContext(FhirContext.forR5Cached());
org.hl7.fhir.r5.model.CodeSystem input = new org.hl7.fhir.r5.model.CodeSystem(); org.hl7.fhir.r5.model.CodeSystem input = new org.hl7.fhir.r5.model.CodeSystem();
input.addConcept().setCode("FOO").setDisplay("Foo"); input.addConcept().setCode("FOO").setDisplay("Foo");
@ -52,7 +51,7 @@ public class TerminologyUploaderProviderTest extends BaseTest {
@Test @Test
public void testCanonicalizeR5_WrongType() { public void testCanonicalizeR5_WrongType() {
TerminologyUploaderProvider provider = new TerminologyUploaderProvider(); TerminologyUploaderProvider provider = new TerminologyUploaderProvider();
provider.setContext(FhirContext.forCached(FhirVersionEnum.R5)); provider.setContext(FhirContext.forR5Cached());
org.hl7.fhir.r5.model.Patient input = new org.hl7.fhir.r5.model.Patient(); org.hl7.fhir.r5.model.Patient input = new org.hl7.fhir.r5.model.Patient();

View File

@ -1,12 +1,20 @@
package ca.uhn.fhir.jpa.provider.dstu3; package ca.uhn.fhir.jpa.provider.dstu3;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.dao.dstu3.FhirResourceDaoDstu3TerminologyTest; import ca.uhn.fhir.jpa.dao.dstu3.FhirResourceDaoDstu3TerminologyTest;
import ca.uhn.fhir.jpa.term.TermReindexingSvcImpl; import ca.uhn.fhir.jpa.term.TermReindexingSvcImpl;
import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException; import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException;
import ca.uhn.fhir.rest.server.exceptions.ResourceNotFoundException; import ca.uhn.fhir.rest.server.exceptions.ResourceNotFoundException;
import org.hl7.fhir.dstu3.model.*; import org.hl7.fhir.dstu3.model.BooleanType;
import org.hl7.fhir.dstu3.model.CodeSystem;
import org.hl7.fhir.dstu3.model.CodeType;
import org.hl7.fhir.dstu3.model.Coding;
import org.hl7.fhir.dstu3.model.Parameters;
import org.hl7.fhir.dstu3.model.Questionnaire;
import org.hl7.fhir.dstu3.model.QuestionnaireResponse;
import org.hl7.fhir.dstu3.model.StringType;
import org.hl7.fhir.dstu3.model.UriType;
import org.hl7.fhir.dstu3.model.ValueSet;
import org.hl7.fhir.instance.model.api.IBaseOperationOutcome; import org.hl7.fhir.instance.model.api.IBaseOperationOutcome;
import org.hl7.fhir.instance.model.api.IBaseResource; import org.hl7.fhir.instance.model.api.IBaseResource;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
@ -22,7 +30,7 @@ import static org.junit.jupiter.api.Assertions.fail;
public class ResourceProviderDstu3CodeSystemTest extends BaseResourceProviderDstu3Test { public class ResourceProviderDstu3CodeSystemTest extends BaseResourceProviderDstu3Test {
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(ResourceProviderDstu3CodeSystemTest.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(ResourceProviderDstu3CodeSystemTest.class);
public static FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.DSTU3); public static FhirContext ourCtx = FhirContext.forDstu3Cached();
@BeforeEach @BeforeEach
@Transactional @Transactional

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.provider.dstu3; package ca.uhn.fhir.jpa.provider.dstu3;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.dao.dstu3.BaseJpaDstu3Test; import ca.uhn.fhir.jpa.dao.dstu3.BaseJpaDstu3Test;
import ca.uhn.fhir.jpa.rp.dstu3.ObservationResourceProvider; import ca.uhn.fhir.jpa.rp.dstu3.ObservationResourceProvider;
@ -13,7 +12,6 @@ import ca.uhn.fhir.rest.client.api.IGenericClient;
import ca.uhn.fhir.rest.client.interceptor.SimpleRequestHeaderInterceptor; import ca.uhn.fhir.rest.client.interceptor.SimpleRequestHeaderInterceptor;
import ca.uhn.fhir.rest.server.RestfulServer; import ca.uhn.fhir.rest.server.RestfulServer;
import ca.uhn.fhir.test.utilities.JettyUtil; import ca.uhn.fhir.test.utilities.JettyUtil;
import ca.uhn.fhir.util.TestUtil;
import com.google.common.base.Charsets; import com.google.common.base.Charsets;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.CloseableHttpResponse;
@ -34,10 +32,10 @@ import org.hl7.fhir.dstu3.model.Bundle.HTTPVerb;
import org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender; import org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender;
import org.hl7.fhir.dstu3.model.Patient; import org.hl7.fhir.dstu3.model.Patient;
import org.hl7.fhir.instance.model.api.IIdType; import org.hl7.fhir.instance.model.api.IIdType;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.ArrayList; import java.util.ArrayList;
@ -102,7 +100,7 @@ public class SystemProviderTransactionSearchDstu3Test extends BaseJpaDstu3Test {
servletHolder.setServlet(restServer); servletHolder.setServlet(restServer);
proxyHandler.addServlet(servletHolder, "/fhir/context/*"); proxyHandler.addServlet(servletHolder, "/fhir/context/*");
ourCtx = FhirContext.forCached(FhirVersionEnum.DSTU3); ourCtx = FhirContext.forDstu3Cached();
restServer.setFhirContext(ourCtx); restServer.setFhirContext(ourCtx);
ourServer.setHandler(proxyHandler); ourServer.setHandler(proxyHandler);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.provider.r4; package ca.uhn.fhir.jpa.provider.r4;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.dao.r4.BaseJpaR4Test; import ca.uhn.fhir.jpa.dao.r4.BaseJpaR4Test;
import ca.uhn.fhir.jpa.rp.r4.ObservationResourceProvider; import ca.uhn.fhir.jpa.rp.r4.ObservationResourceProvider;
@ -12,7 +11,6 @@ import ca.uhn.fhir.rest.client.api.IGenericClient;
import ca.uhn.fhir.rest.client.interceptor.SimpleRequestHeaderInterceptor; import ca.uhn.fhir.rest.client.interceptor.SimpleRequestHeaderInterceptor;
import ca.uhn.fhir.rest.server.RestfulServer; import ca.uhn.fhir.rest.server.RestfulServer;
import ca.uhn.fhir.test.utilities.JettyUtil; import ca.uhn.fhir.test.utilities.JettyUtil;
import ca.uhn.fhir.util.TestUtil;
import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder; import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
@ -20,10 +18,10 @@ import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.servlet.ServletHolder;
import org.hl7.fhir.r4.model.Observation; import org.hl7.fhir.r4.model.Observation;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
@ -76,7 +74,7 @@ public class EmptyIndexesR4Test extends BaseJpaR4Test {
servletHolder.setServlet(restServer); servletHolder.setServlet(restServer);
proxyHandler.addServlet(servletHolder, "/fhir/context/*"); proxyHandler.addServlet(servletHolder, "/fhir/context/*");
ourCtx = FhirContext.forCached(FhirVersionEnum.R4); ourCtx = FhirContext.forR4Cached();
restServer.setFhirContext(ourCtx); restServer.setFhirContext(ourCtx);
ourServer.setHandler(proxyHandler); ourServer.setHandler(proxyHandler);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.provider.r4; package ca.uhn.fhir.jpa.provider.r4;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.api.Hook; import ca.uhn.fhir.interceptor.api.Hook;
import ca.uhn.fhir.interceptor.api.Pointcut; import ca.uhn.fhir.interceptor.api.Pointcut;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
@ -161,7 +160,7 @@ public class SystemProviderR4Test extends BaseJpaR4Test {
servletHolder.setServlet(restServer); servletHolder.setServlet(restServer);
proxyHandler.addServlet(servletHolder, "/fhir/context/*"); proxyHandler.addServlet(servletHolder, "/fhir/context/*");
ourCtx = FhirContext.forCached(FhirVersionEnum.R4); ourCtx = FhirContext.forR4Cached();
restServer.setFhirContext(ourCtx); restServer.setFhirContext(ourCtx);
ourServer.setHandler(proxyHandler); ourServer.setHandler(proxyHandler);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.provider.r4; package ca.uhn.fhir.jpa.provider.r4;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.dao.r4.BaseJpaR4Test; import ca.uhn.fhir.jpa.dao.r4.BaseJpaR4Test;
import ca.uhn.fhir.jpa.rp.r4.MedicationRequestResourceProvider; import ca.uhn.fhir.jpa.rp.r4.MedicationRequestResourceProvider;
@ -17,7 +16,6 @@ import ca.uhn.fhir.rest.param.ReferenceParam;
import ca.uhn.fhir.rest.param.TokenOrListParam; import ca.uhn.fhir.rest.param.TokenOrListParam;
import ca.uhn.fhir.rest.server.RestfulServer; import ca.uhn.fhir.rest.server.RestfulServer;
import ca.uhn.fhir.test.utilities.JettyUtil; import ca.uhn.fhir.test.utilities.JettyUtil;
import ca.uhn.fhir.util.TestUtil;
import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder; import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
@ -34,8 +32,8 @@ import org.hl7.fhir.r4.model.Medication;
import org.hl7.fhir.r4.model.MedicationRequest; import org.hl7.fhir.r4.model.MedicationRequest;
import org.hl7.fhir.r4.model.Patient; import org.hl7.fhir.r4.model.Patient;
import org.hl7.fhir.r4.model.Reference; import org.hl7.fhir.r4.model.Reference;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
@ -44,10 +42,10 @@ import java.util.List;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.*; import static org.hamcrest.Matchers.contains;
import static org.junit.jupiter.api.Assertions.*; import static org.hamcrest.Matchers.not;
import static org.hamcrest.Matchers.nullValue;
import ca.uhn.fhir.test.utilities.JettyUtil; import static org.junit.jupiter.api.Assertions.assertEquals;
public class SystemProviderTransactionSearchR4Test extends BaseJpaR4Test { public class SystemProviderTransactionSearchR4Test extends BaseJpaR4Test {
@ -103,7 +101,7 @@ public class SystemProviderTransactionSearchR4Test extends BaseJpaR4Test {
servletHolder.setServlet(restServer); servletHolder.setServlet(restServer);
proxyHandler.addServlet(servletHolder, "/fhir/context/*"); proxyHandler.addServlet(servletHolder, "/fhir/context/*");
ourCtx = FhirContext.forCached(FhirVersionEnum.R4); ourCtx = FhirContext.forR4Cached();
restServer.setFhirContext(ourCtx); restServer.setFhirContext(ourCtx);
ourServer.setHandler(proxyHandler); ourServer.setHandler(proxyHandler);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.search; package ca.uhn.fhir.jpa.search;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.api.IInterceptorBroadcaster; import ca.uhn.fhir.interceptor.api.IInterceptorBroadcaster;
import ca.uhn.fhir.interceptor.model.RequestPartitionId; import ca.uhn.fhir.interceptor.model.RequestPartitionId;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
@ -87,7 +86,7 @@ import static org.mockito.Mockito.when;
public class SearchCoordinatorSvcImplTest { public class SearchCoordinatorSvcImplTest {
private static final Logger ourLog = LoggerFactory.getLogger(SearchCoordinatorSvcImplTest.class); private static final Logger ourLog = LoggerFactory.getLogger(SearchCoordinatorSvcImplTest.class);
private static FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.DSTU3); private static final FhirContext ourCtx = FhirContext.forDstu3Cached();
@Mock @Mock
private IFhirResourceDao<?> myCallingDao; private IFhirResourceDao<?> myCallingDao;
@Mock @Mock
@ -667,7 +666,7 @@ public class SearchCoordinatorSvcImplTest {
public static class FailAfterNIterator extends BaseIterator<ResourcePersistentId> implements IResultIterator { public static class FailAfterNIterator extends BaseIterator<ResourcePersistentId> implements IResultIterator {
private int myCount; private int myCount;
private IResultIterator myWrap; private final IResultIterator myWrap;
FailAfterNIterator(IResultIterator theWrap, int theCount) { FailAfterNIterator(IResultIterator theWrap, int theCount) {
myWrap = theWrap; myWrap = theWrap;
@ -768,10 +767,10 @@ public class SearchCoordinatorSvcImplTest {
private static final Logger ourLog = LoggerFactory.getLogger(SlowIterator.class); private static final Logger ourLog = LoggerFactory.getLogger(SlowIterator.class);
private final IResultIterator myResultIteratorWrap; private final IResultIterator myResultIteratorWrap;
private int myDelay; private final int myDelay;
private Iterator<ResourcePersistentId> myWrap; private final Iterator<ResourcePersistentId> myWrap;
private List<ResourcePersistentId> myReturnedValues = new ArrayList<>(); private final List<ResourcePersistentId> myReturnedValues = new ArrayList<>();
private AtomicInteger myCountReturned = new AtomicInteger(0); private final AtomicInteger myCountReturned = new AtomicInteger(0);
SlowIterator(Iterator<ResourcePersistentId> theWrap, int theDelay) { SlowIterator(Iterator<ResourcePersistentId> theWrap, int theDelay) {
myWrap = theWrap; myWrap = theWrap;

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.search.builder.sql; package ca.uhn.fhir.jpa.search.builder.sql;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.model.RequestPartitionId; import ca.uhn.fhir.interceptor.model.RequestPartitionId;
import ca.uhn.fhir.jpa.config.HibernatePropertiesProvider; import ca.uhn.fhir.jpa.config.HibernatePropertiesProvider;
import ca.uhn.fhir.jpa.model.config.PartitionSettings; import ca.uhn.fhir.jpa.model.config.PartitionSettings;
@ -43,7 +42,7 @@ public class SearchQueryBuilderTest {
@BeforeEach @BeforeEach
public void before() { public void before() {
myFhirContext = FhirContext.forCached(FhirVersionEnum.R4); myFhirContext = FhirContext.forR4Cached();
myModelConfig = new ModelConfig(); myModelConfig = new ModelConfig();
myPartitionSettings = new PartitionSettings(); myPartitionSettings = new PartitionSettings();
myRequestPartitionId = RequestPartitionId.allPartitions(); myRequestPartitionId = RequestPartitionId.allPartitions();

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.search.lastn; package ca.uhn.fhir.jpa.search.lastn;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.model.config.PartitionSettings; import ca.uhn.fhir.jpa.model.config.PartitionSettings;
import ca.uhn.fhir.jpa.search.lastn.config.TestElasticsearchContainerHelper; import ca.uhn.fhir.jpa.search.lastn.config.TestElasticsearchContainerHelper;
import ca.uhn.fhir.jpa.search.lastn.json.CodeJson; import ca.uhn.fhir.jpa.search.lastn.json.CodeJson;
@ -61,7 +60,7 @@ public class LastNElasticsearchSvcMultipleObservationsIT {
private static ObjectMapper ourMapperNonPrettyPrint; private static ObjectMapper ourMapperNonPrettyPrint;
private static boolean indexLoaded = false; private static boolean indexLoaded = false;
private final Map<String, Map<String, List<Date>>> createdPatientObservationMap = new HashMap<>(); private final Map<String, Map<String, List<Date>>> createdPatientObservationMap = new HashMap<>();
private final FhirContext myFhirContext = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myFhirContext = FhirContext.forR4Cached();
private ElasticsearchSvcImpl elasticsearchSvc; private ElasticsearchSvcImpl elasticsearchSvc;
@BeforeEach @BeforeEach

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.search.lastn; package ca.uhn.fhir.jpa.search.lastn;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.model.config.PartitionSettings; import ca.uhn.fhir.jpa.model.config.PartitionSettings;
import ca.uhn.fhir.jpa.model.util.CodeSystemHash; import ca.uhn.fhir.jpa.model.util.CodeSystemHash;
import ca.uhn.fhir.jpa.search.lastn.config.TestElasticsearchContainerHelper; import ca.uhn.fhir.jpa.search.lastn.config.TestElasticsearchContainerHelper;
@ -27,23 +26,17 @@ import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith; import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit.jupiter.SpringExtension; import org.springframework.test.context.junit.jupiter.SpringExtension;
import org.testcontainers.elasticsearch.ElasticsearchContainer; import org.testcontainers.elasticsearch.ElasticsearchContainer;
import org.testcontainers.junit.jupiter.Container; import org.testcontainers.junit.jupiter.Container;
import org.testcontainers.junit.jupiter.Testcontainers; import org.testcontainers.junit.jupiter.Testcontainers;
import java.io.IOException; import java.io.IOException;
import java.time.Duration;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.UUID; import java.util.UUID;
import static java.time.temporal.ChronoUnit.SECONDS;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertTrue;
@ -85,7 +78,7 @@ public class LastNElasticsearchSvcSingleObservationIT {
final String CODEFIRSTCODINGSYSTEM = "http://mycodes.org/fhir/observation-code"; final String CODEFIRSTCODINGSYSTEM = "http://mycodes.org/fhir/observation-code";
final String CODEFIRSTCODINGCODE = "test-code"; final String CODEFIRSTCODINGCODE = "test-code";
final String CODEFIRSTCODINGDISPLAY = "test-code display"; final String CODEFIRSTCODINGDISPLAY = "test-code display";
final FhirContext myFhirContext = FhirContext.forCached(FhirVersionEnum.R4); final FhirContext myFhirContext = FhirContext.forR4Cached();
ElasticsearchSvcImpl elasticsearchSvc; ElasticsearchSvcImpl elasticsearchSvc;

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.search.reindex; package ca.uhn.fhir.jpa.search.reindex;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.api.dao.DaoRegistry; import ca.uhn.fhir.jpa.api.dao.DaoRegistry;
import ca.uhn.fhir.jpa.api.dao.IFhirResourceDao; import ca.uhn.fhir.jpa.api.dao.IFhirResourceDao;
@ -56,7 +55,7 @@ import static org.mockito.Mockito.when;
@ExtendWith(MockitoExtension.class) @ExtendWith(MockitoExtension.class)
public class ResourceReindexingSvcImplTest extends BaseJpaTest { public class ResourceReindexingSvcImplTest extends BaseJpaTest {
private static final FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.R4); private static final FhirContext ourCtx = FhirContext.forR4Cached();
@Mock @Mock
private PlatformTransactionManager myTxManager; private PlatformTransactionManager myTxManager;

View File

@ -1,14 +1,13 @@
package ca.uhn.fhir.jpa.searchparam; package ca.uhn.fhir.jpa.searchparam;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.context.RuntimeResourceDefinition; import ca.uhn.fhir.context.RuntimeResourceDefinition;
import ca.uhn.fhir.jpa.config.TestDstu3Config; import ca.uhn.fhir.jpa.config.TestDstu3Config;
import ca.uhn.fhir.jpa.dao.BaseJpaTest; import ca.uhn.fhir.jpa.dao.BaseJpaTest;
import ca.uhn.fhir.rest.server.util.ISearchParamRegistry;
import ca.uhn.fhir.jpa.searchparam.util.Dstu3DistanceHelper; import ca.uhn.fhir.jpa.searchparam.util.Dstu3DistanceHelper;
import ca.uhn.fhir.rest.param.QuantityParam; import ca.uhn.fhir.rest.param.QuantityParam;
import ca.uhn.fhir.rest.param.ReferenceParam; import ca.uhn.fhir.rest.param.ReferenceParam;
import ca.uhn.fhir.rest.server.util.ISearchParamRegistry;
import org.hl7.fhir.dstu3.model.Condition; import org.hl7.fhir.dstu3.model.Condition;
import org.hl7.fhir.dstu3.model.Location; import org.hl7.fhir.dstu3.model.Location;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
@ -30,7 +29,7 @@ import static org.mockito.Mockito.when;
@ContextConfiguration(classes = {TestDstu3Config.class}) @ContextConfiguration(classes = {TestDstu3Config.class})
public class MatchUrlServiceTest extends BaseJpaTest { public class MatchUrlServiceTest extends BaseJpaTest {
private static FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.DSTU3); private static final FhirContext ourCtx = FhirContext.forDstu3Cached();
@Autowired @Autowired
MatchUrlService myMatchUrlService; MatchUrlService myMatchUrlService;

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.stresstest; package ca.uhn.fhir.jpa.stresstest;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.api.IInterceptorBroadcaster; import ca.uhn.fhir.interceptor.api.IInterceptorBroadcaster;
import ca.uhn.fhir.interceptor.executor.InterceptorService; import ca.uhn.fhir.interceptor.executor.InterceptorService;
import ca.uhn.fhir.interceptor.model.ReadPartitionIdRequestDetails; import ca.uhn.fhir.interceptor.model.ReadPartitionIdRequestDetails;
@ -110,7 +109,7 @@ import static org.mockito.Mockito.when;
public class GiantTransactionPerfTest { public class GiantTransactionPerfTest {
private static final Logger ourLog = LoggerFactory.getLogger(GiantTransactionPerfTest.class); private static final Logger ourLog = LoggerFactory.getLogger(GiantTransactionPerfTest.class);
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
private FhirSystemDaoR4 mySystemDao; private FhirSystemDaoR4 mySystemDao;
private IInterceptorBroadcaster myInterceptorSvc; private IInterceptorBroadcaster myInterceptorSvc;
private TransactionProcessor myTransactionProcessor; private TransactionProcessor myTransactionProcessor;

View File

@ -1,10 +1,8 @@
package ca.uhn.fhir.jpa.stresstest; package ca.uhn.fhir.jpa.stresstest;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.test.BaseTest; import ca.uhn.fhir.test.BaseTest;
import ca.uhn.fhir.util.StopWatch; import ca.uhn.fhir.util.StopWatch;
import org.hl7.fhir.instance.model.api.IBaseResource;
import org.hl7.fhir.r4.model.Bundle; import org.hl7.fhir.r4.model.Bundle;
import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
@ -24,7 +22,7 @@ public class StressTestParserTest extends BaseTest {
@Test @Test
@Disabled @Disabled
public void test() throws IOException { public void test() throws IOException {
FhirContext ctx = FhirContext.forCached(FhirVersionEnum.R4); FhirContext ctx = FhirContext.forR4Cached();
String input = loadResource("/org/hl7/fhir/r4/model/valueset/valuesets.xml"); String input = loadResource("/org/hl7/fhir/r4/model/valueset/valuesets.xml");
Bundle parsed = ctx.newXmlParser().parseResource(Bundle.class, input); Bundle parsed = ctx.newXmlParser().parseResource(Bundle.class, input);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.subscription; package ca.uhn.fhir.jpa.subscription;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.provider.r5.BaseResourceProviderR5Test; import ca.uhn.fhir.jpa.provider.r5.BaseResourceProviderR5Test;
import ca.uhn.fhir.jpa.subscription.channel.impl.LinkedBlockingChannel; import ca.uhn.fhir.jpa.subscription.channel.impl.LinkedBlockingChannel;
@ -225,7 +224,7 @@ public abstract class BaseSubscriptionsR5Test extends BaseResourceProviderR5Test
@BeforeAll @BeforeAll
public static void startListenerServer() throws Exception { public static void startListenerServer() throws Exception {
RestfulServer ourListenerRestServer = new RestfulServer(FhirContext.forCached(FhirVersionEnum.R5)); RestfulServer ourListenerRestServer = new RestfulServer(FhirContext.forR5Cached());
ObservationListener obsListener = new ObservationListener(); ObservationListener obsListener = new ObservationListener();
ourListenerRestServer.setResourceProviders(obsListener); ourListenerRestServer.setResourceProviders(obsListener);

View File

@ -1,11 +1,9 @@
package ca.uhn.fhir.jpa.subscription; package ca.uhn.fhir.jpa.subscription;
import ca.uhn.fhir.context.FhirVersionEnum;
import org.hl7.fhir.instance.model.api.IBaseResource;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.rest.api.MethodOutcome; import ca.uhn.fhir.rest.api.MethodOutcome;
import ca.uhn.fhir.rest.client.api.IGenericClient; import ca.uhn.fhir.rest.client.api.IGenericClient;
import org.hl7.fhir.instance.model.api.IBaseResource;
public class FhirServiceUtil { public class FhirServiceUtil {
@ -16,12 +14,12 @@ public class FhirServiceUtil {
public static final String REST_HOOK_ENDPOINT = "http://localhost:10080/rest-hook"; public static final String REST_HOOK_ENDPOINT = "http://localhost:10080/rest-hook";
public static IGenericClient getFhirDstu3Client() { public static IGenericClient getFhirDstu3Client() {
FhirContext ctx = FhirContext.forCached(FhirVersionEnum.DSTU3); FhirContext ctx = FhirContext.forDstu3Cached();
return ctx.newRestfulGenericClient(FHIR_DSTU3_URL); return ctx.newRestfulGenericClient(FHIR_DSTU3_URL);
} }
public static IGenericClient getFhirDstu2Client() { public static IGenericClient getFhirDstu2Client() {
FhirContext ctx = FhirContext.forCached(FhirVersionEnum.DSTU2); FhirContext ctx = FhirContext.forDstu2Cached();
return ctx.newRestfulGenericClient(FHIR_DSTU2_URL); return ctx.newRestfulGenericClient(FHIR_DSTU2_URL);
} }

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.subscription; package ca.uhn.fhir.jpa.subscription;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.dao.DaoRegistry; import ca.uhn.fhir.jpa.api.dao.DaoRegistry;
import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionStrategyEvaluator; import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionStrategyEvaluator;
import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionCanonicalizer; import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionCanonicalizer;
@ -26,7 +25,7 @@ public class SubscriptionValidatingInterceptorTest {
@Mock @Mock
public DaoRegistry myDaoRegistry; public DaoRegistry myDaoRegistry;
private SubscriptionValidatingInterceptor mySvc; private SubscriptionValidatingInterceptor mySvc;
private FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
@Mock @Mock
private SubscriptionStrategyEvaluator mySubscriptionStrategyEvaluator; private SubscriptionStrategyEvaluator mySubscriptionStrategyEvaluator;

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.subscription.resthook; package ca.uhn.fhir.jpa.subscription.resthook;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.provider.r4.BaseResourceProviderR4Test; import ca.uhn.fhir.jpa.provider.r4.BaseResourceProviderR4Test;
import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil; import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil;
import ca.uhn.fhir.jpa.subscription.submit.interceptor.SubscriptionMatcherInterceptor; import ca.uhn.fhir.jpa.subscription.submit.interceptor.SubscriptionMatcherInterceptor;
@ -164,7 +163,7 @@ public class RestHookActivatesPreExistingSubscriptionsR4Test extends BaseResourc
@BeforeAll @BeforeAll
public static void startListenerServer() throws Exception { public static void startListenerServer() throws Exception {
ourListenerRestServer = new RestfulServer(FhirContext.forCached(FhirVersionEnum.R4)); ourListenerRestServer = new RestfulServer(FhirContext.forR4Cached());
ObservationListener obsListener = new ObservationListener(); ObservationListener obsListener = new ObservationListener();
ourListenerRestServer.setResourceProviders(obsListener); ourListenerRestServer.setResourceProviders(obsListener);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.subscription.resthook; package ca.uhn.fhir.jpa.subscription.resthook;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.provider.BaseResourceProviderDstu2Test; import ca.uhn.fhir.jpa.provider.BaseResourceProviderDstu2Test;
import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil; import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil;
@ -28,7 +27,11 @@ import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.servlet.ServletHolder;
import org.hl7.fhir.instance.model.api.IBaseResource; import org.hl7.fhir.instance.model.api.IBaseResource;
import org.hl7.fhir.instance.model.api.IIdType; import org.hl7.fhir.instance.model.api.IIdType;
import org.junit.jupiter.api.*; import static org.hamcrest.MatcherAssert.assertThat; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
@ -38,7 +41,11 @@ import java.util.stream.Collectors;
import static ca.uhn.fhir.jpa.subscription.resthook.RestHookTestDstu3Test.logAllInterceptors; import static ca.uhn.fhir.jpa.subscription.resthook.RestHookTestDstu3Test.logAllInterceptors;
import static org.hamcrest.CoreMatchers.containsString; import static org.hamcrest.CoreMatchers.containsString;
import static org.junit.jupiter.api.Assertions.*; import static org.hamcrest.MatcherAssert.assertThat;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.fail;
/** /**
* Test the rest-hook subscriptions * Test the rest-hook subscriptions
@ -46,13 +53,13 @@ import static org.junit.jupiter.api.Assertions.*;
public class RestHookTestDstu2Test extends BaseResourceProviderDstu2Test { public class RestHookTestDstu2Test extends BaseResourceProviderDstu2Test {
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(RestHookTestDstu2Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(RestHookTestDstu2Test.class);
private static List<String> ourCreatedObservations = Lists.newArrayList(); private static final List<String> ourCreatedObservations = Lists.newArrayList();
private static int ourListenerPort; private static int ourListenerPort;
private static RestfulServer ourListenerRestServer; private static RestfulServer ourListenerRestServer;
private static Server ourListenerServer; private static Server ourListenerServer;
private static String ourListenerServerBase; private static String ourListenerServerBase;
private static List<String> ourUpdatedObservations = Lists.newArrayList(); private static final List<String> ourUpdatedObservations = Lists.newArrayList();
private List<IIdType> mySubscriptionIds = new ArrayList<IIdType>(); private final List<IIdType> mySubscriptionIds = new ArrayList<IIdType>();
@Autowired @Autowired
private SubscriptionTestUtil mySubscriptionTestUtil; private SubscriptionTestUtil mySubscriptionTestUtil;
@ -325,7 +332,7 @@ public class RestHookTestDstu2Test extends BaseResourceProviderDstu2Test {
@BeforeAll @BeforeAll
public static void startListenerServer() throws Exception { public static void startListenerServer() throws Exception {
ourListenerRestServer = new RestfulServer(FhirContext.forCached(FhirVersionEnum.DSTU2)); ourListenerRestServer = new RestfulServer(FhirContext.forDstu2Cached());
ObservationListener obsListener = new ObservationListener(); ObservationListener obsListener = new ObservationListener();
ourListenerRestServer.setResourceProviders(obsListener); ourListenerRestServer.setResourceProviders(obsListener);

View File

@ -1,14 +1,13 @@
package ca.uhn.fhir.jpa.subscription.resthook; package ca.uhn.fhir.jpa.subscription.resthook;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.api.IInterceptorService; import ca.uhn.fhir.interceptor.api.IInterceptorService;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.provider.dstu3.BaseResourceProviderDstu3Test; import ca.uhn.fhir.jpa.provider.dstu3.BaseResourceProviderDstu3Test;
import ca.uhn.fhir.jpa.subscription.NotificationServlet; import ca.uhn.fhir.jpa.subscription.NotificationServlet;
import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil; import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil;
import ca.uhn.fhir.jpa.subscription.util.SubscriptionDebugLogInterceptor;
import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionMatchingStrategy; import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionMatchingStrategy;
import ca.uhn.fhir.jpa.subscription.util.SubscriptionDebugLogInterceptor;
import ca.uhn.fhir.rest.annotation.Create; import ca.uhn.fhir.rest.annotation.Create;
import ca.uhn.fhir.rest.annotation.ResourceParam; import ca.uhn.fhir.rest.annotation.ResourceParam;
import ca.uhn.fhir.rest.annotation.Update; import ca.uhn.fhir.rest.annotation.Update;
@ -24,10 +23,22 @@ import com.google.common.collect.Lists;
import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.servlet.ServletHolder;
import org.hl7.fhir.dstu3.model.*; import org.hl7.fhir.dstu3.model.CodeableConcept;
import org.hl7.fhir.dstu3.model.Coding;
import org.hl7.fhir.dstu3.model.CommunicationRequest;
import org.hl7.fhir.dstu3.model.DateTimeType;
import org.hl7.fhir.dstu3.model.IdType;
import org.hl7.fhir.dstu3.model.Observation;
import org.hl7.fhir.dstu3.model.Organization;
import org.hl7.fhir.dstu3.model.StringType;
import org.hl7.fhir.dstu3.model.Subscription;
import org.hl7.fhir.instance.model.api.IBaseResource; import org.hl7.fhir.instance.model.api.IBaseResource;
import org.hl7.fhir.instance.model.api.IIdType; import org.hl7.fhir.instance.model.api.IIdType;
import org.junit.jupiter.api.*; import static org.hamcrest.MatcherAssert.assertThat; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
@ -40,8 +51,15 @@ import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static org.awaitility.Awaitility.await; import static org.awaitility.Awaitility.await;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.containsString;
import static org.junit.jupiter.api.Assertions.*; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.junit.jupiter.api.Assertions.fail;
/** /**
* Test the rest-hook subscriptions * Test the rest-hook subscriptions
@ -49,18 +67,18 @@ import static org.junit.jupiter.api.Assertions.*;
public class RestHookTestDstu3Test extends BaseResourceProviderDstu3Test { public class RestHookTestDstu3Test extends BaseResourceProviderDstu3Test {
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(RestHookTestDstu3Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(RestHookTestDstu3Test.class);
private static List<Observation> ourCreatedObservations = Collections.synchronizedList(Lists.newArrayList()); private static final List<Observation> ourCreatedObservations = Collections.synchronizedList(Lists.newArrayList());
private static int ourListenerPort; private static int ourListenerPort;
private static RestfulServer ourListenerRestServer; private static RestfulServer ourListenerRestServer;
private static Server ourListenerServer; private static Server ourListenerServer;
private static String ourListenerServerBase; private static String ourListenerServerBase;
private static List<Observation> ourUpdatedObservations = Collections.synchronizedList(Lists.newArrayList()); private static final List<Observation> ourUpdatedObservations = Collections.synchronizedList(Lists.newArrayList());
private static List<String> ourContentTypes = Collections.synchronizedList(new ArrayList<>()); private static final List<String> ourContentTypes = Collections.synchronizedList(new ArrayList<>());
private static NotificationServlet ourNotificationServlet; private static NotificationServlet ourNotificationServlet;
private static String ourNotificationListenerServer; private static String ourNotificationListenerServer;
private static CountDownLatch communicationRequestListenerLatch; private static CountDownLatch communicationRequestListenerLatch;
private static SubscriptionDebugLogInterceptor ourSubscriptionDebugLogInterceptor = new SubscriptionDebugLogInterceptor(); private static final SubscriptionDebugLogInterceptor ourSubscriptionDebugLogInterceptor = new SubscriptionDebugLogInterceptor();
private List<IIdType> mySubscriptionIds = Collections.synchronizedList(new ArrayList<>()); private final List<IIdType> mySubscriptionIds = Collections.synchronizedList(new ArrayList<>());
@Autowired @Autowired
private SubscriptionTestUtil mySubscriptionTestUtil; private SubscriptionTestUtil mySubscriptionTestUtil;
@ -638,7 +656,7 @@ public class RestHookTestDstu3Test extends BaseResourceProviderDstu3Test {
@BeforeAll @BeforeAll
public static void startListenerServer() throws Exception { public static void startListenerServer() throws Exception {
ourListenerRestServer = new RestfulServer(FhirContext.forCached(FhirVersionEnum.DSTU3)); ourListenerRestServer = new RestfulServer(FhirContext.forDstu3Cached());
ObservationListener obsListener = new ObservationListener(); ObservationListener obsListener = new ObservationListener();
CommunicationRequestListener crListener = new CommunicationRequestListener(); CommunicationRequestListener crListener = new CommunicationRequestListener();

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.subscription.resthook; package ca.uhn.fhir.jpa.subscription.resthook;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.provider.BaseResourceProviderDstu2Test; import ca.uhn.fhir.jpa.provider.BaseResourceProviderDstu2Test;
import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil; import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil;
@ -47,12 +46,12 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
public class RestHookTestWithInterceptorRegisteredToDaoConfigDstu2Test extends BaseResourceProviderDstu2Test { public class RestHookTestWithInterceptorRegisteredToDaoConfigDstu2Test extends BaseResourceProviderDstu2Test {
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(RestHookTestWithInterceptorRegisteredToDaoConfigDstu2Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(RestHookTestWithInterceptorRegisteredToDaoConfigDstu2Test.class);
private static List<Observation> ourCreatedObservations = Collections.synchronizedList(Lists.newArrayList()); private static final List<Observation> ourCreatedObservations = Collections.synchronizedList(Lists.newArrayList());
private static int ourListenerPort; private static int ourListenerPort;
private static RestfulServer ourListenerRestServer; private static RestfulServer ourListenerRestServer;
private static Server ourListenerServer; private static Server ourListenerServer;
private static String ourListenerServerBase; private static String ourListenerServerBase;
private static List<Observation> ourUpdatedObservations = Collections.synchronizedList(Lists.newArrayList()); private static final List<Observation> ourUpdatedObservations = Collections.synchronizedList(Lists.newArrayList());
@Autowired @Autowired
protected SubscriptionRegistry mySubscriptionRegistry; protected SubscriptionRegistry mySubscriptionRegistry;
@Autowired @Autowired
@ -309,7 +308,7 @@ public class RestHookTestWithInterceptorRegisteredToDaoConfigDstu2Test extends B
@BeforeAll @BeforeAll
public static void startListenerServer() throws Exception { public static void startListenerServer() throws Exception {
ourListenerRestServer = new RestfulServer(FhirContext.forCached(FhirVersionEnum.DSTU2)); ourListenerRestServer = new RestfulServer(FhirContext.forDstu2Cached());
ObservationListener obsListener = new ObservationListener(); ObservationListener obsListener = new ObservationListener();
ourListenerRestServer.setResourceProviders(obsListener); ourListenerRestServer.setResourceProviders(obsListener);

View File

@ -2,7 +2,6 @@
package ca.uhn.fhir.jpa.subscription.resthook; package ca.uhn.fhir.jpa.subscription.resthook;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.provider.dstu3.BaseResourceProviderDstu3Test; import ca.uhn.fhir.jpa.provider.dstu3.BaseResourceProviderDstu3Test;
import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil; import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil;
@ -42,13 +41,13 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
*/ */
public class RestHookTestWithInterceptorRegisteredToDaoConfigDstu3Test extends BaseResourceProviderDstu3Test { public class RestHookTestWithInterceptorRegisteredToDaoConfigDstu3Test extends BaseResourceProviderDstu3Test {
private static List<Observation> ourCreatedObservations = Collections.synchronizedList(Lists.newArrayList()); private static final List<Observation> ourCreatedObservations = Collections.synchronizedList(Lists.newArrayList());
private static int ourListenerPort; private static int ourListenerPort;
private static RestfulServer ourListenerRestServer; private static RestfulServer ourListenerRestServer;
private static Server ourListenerServer; private static Server ourListenerServer;
private static String ourListenerServerBase; private static String ourListenerServerBase;
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(RestHookTestWithInterceptorRegisteredToDaoConfigDstu3Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(RestHookTestWithInterceptorRegisteredToDaoConfigDstu3Test.class);
private static List<Observation> ourUpdatedObservations = Collections.synchronizedList(Lists.newArrayList()); private static final List<Observation> ourUpdatedObservations = Collections.synchronizedList(Lists.newArrayList());
@Autowired @Autowired
private SubscriptionTestUtil mySubscriptionTestUtil; private SubscriptionTestUtil mySubscriptionTestUtil;
@ -266,7 +265,7 @@ public class RestHookTestWithInterceptorRegisteredToDaoConfigDstu3Test extends B
@BeforeAll @BeforeAll
public static void startListenerServer() throws Exception { public static void startListenerServer() throws Exception {
ourListenerRestServer = new RestfulServer(FhirContext.forCached(FhirVersionEnum.DSTU3)); ourListenerRestServer = new RestfulServer(FhirContext.forDstu3Cached());
ObservationListener obsListener = new ObservationListener(); ObservationListener obsListener = new ObservationListener();
ourListenerRestServer.setResourceProviders(obsListener); ourListenerRestServer.setResourceProviders(obsListener);

View File

@ -2,7 +2,6 @@
package ca.uhn.fhir.jpa.subscription.resthook; package ca.uhn.fhir.jpa.subscription.resthook;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.provider.r4.BaseResourceProviderR4Test; import ca.uhn.fhir.jpa.provider.r4.BaseResourceProviderR4Test;
import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil; import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil;
@ -20,28 +19,36 @@ import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletContextHandler; import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.servlet.ServletHolder;
import org.hl7.fhir.instance.model.api.IBaseResource; import org.hl7.fhir.instance.model.api.IBaseResource;
import org.hl7.fhir.r4.model.*; import org.hl7.fhir.r4.model.CodeableConcept;
import org.junit.jupiter.api.*; import static org.hamcrest.MatcherAssert.assertThat; import org.hl7.fhir.r4.model.Coding;
import static org.junit.jupiter.api.Assertions.assertFalse; import org.hl7.fhir.r4.model.IdType;
import static org.junit.jupiter.api.Assertions.assertNotNull; import org.hl7.fhir.r4.model.Observation;
import org.hl7.fhir.r4.model.Subscription;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotNull;
/** /**
* Test the rest-hook subscriptions * Test the rest-hook subscriptions
*/ */
public class RestHookTestWithInterceptorRegisteredToDaoConfigR4Test extends BaseResourceProviderR4Test { public class RestHookTestWithInterceptorRegisteredToDaoConfigR4Test extends BaseResourceProviderR4Test {
private static List<Observation> ourCreatedObservations = Collections.synchronizedList(Lists.newArrayList()); private static final List<Observation> ourCreatedObservations = Collections.synchronizedList(Lists.newArrayList());
private static int ourListenerPort; private static int ourListenerPort;
private static RestfulServer ourListenerRestServer; private static RestfulServer ourListenerRestServer;
private static Server ourListenerServer; private static Server ourListenerServer;
private static String ourListenerServerBase; private static String ourListenerServerBase;
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(RestHookTestWithInterceptorRegisteredToDaoConfigR4Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(RestHookTestWithInterceptorRegisteredToDaoConfigR4Test.class);
private static List<Observation> ourUpdatedObservations = Collections.synchronizedList(Lists.newArrayList()); private static final List<Observation> ourUpdatedObservations = Collections.synchronizedList(Lists.newArrayList());
@Autowired @Autowired
private SubscriptionTestUtil mySubscriptionTestUtil; private SubscriptionTestUtil mySubscriptionTestUtil;
@ -270,7 +277,7 @@ public class RestHookTestWithInterceptorRegisteredToDaoConfigR4Test extends Base
@BeforeAll @BeforeAll
public static void startListenerServer() throws Exception { public static void startListenerServer() throws Exception {
ourListenerRestServer = new RestfulServer(FhirContext.forCached(FhirVersionEnum.R4)); ourListenerRestServer = new RestfulServer(FhirContext.forR4Cached());
ObservationListener obsListener = new ObservationListener(); ObservationListener obsListener = new ObservationListener();
ourListenerRestServer.setResourceProviders(obsListener); ourListenerRestServer.setResourceProviders(obsListener);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.subscription.resthook; package ca.uhn.fhir.jpa.subscription.resthook;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.api.Hook; import ca.uhn.fhir.interceptor.api.Hook;
import ca.uhn.fhir.interceptor.api.IInterceptorService; import ca.uhn.fhir.interceptor.api.IInterceptorService;
import ca.uhn.fhir.interceptor.api.Interceptor; import ca.uhn.fhir.interceptor.api.Interceptor;
@ -61,7 +60,7 @@ public class RestHookWithInterceptorR4Test extends BaseSubscriptionsR4Test {
private static boolean ourNextAfterRestHookDeliveryReturn; private static boolean ourNextAfterRestHookDeliveryReturn;
private static boolean ourHitAfterRestHookDelivery; private static boolean ourHitAfterRestHookDelivery;
private static boolean ourNextAddHeader; private static boolean ourNextAddHeader;
private static FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.R4); private static final FhirContext ourCtx = FhirContext.forR4Cached();
@Autowired @Autowired
StoppableSubscriptionDeliveringRestHookSubscriber myStoppableSubscriptionDeliveringRestHookSubscriber; StoppableSubscriptionDeliveringRestHookSubscriber myStoppableSubscriptionDeliveringRestHookSubscriber;
@ -277,7 +276,7 @@ public class RestHookWithInterceptorR4Test extends BaseSubscriptionsR4Test {
public static class AttributeCarryingInterceptor { public static class AttributeCarryingInterceptor {
private ResourceDeliveryMessage myLastDelivery; private ResourceDeliveryMessage myLastDelivery;
private CountDownLatch myFinishedLatch = new CountDownLatch(1); private final CountDownLatch myFinishedLatch = new CountDownLatch(1);
public CountDownLatch getFinishedLatch() { public CountDownLatch getFinishedLatch() {
return myFinishedLatch; return myFinishedLatch;

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.subscription.resthook; package ca.uhn.fhir.jpa.subscription.resthook;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.config.DaoConfig;
import ca.uhn.fhir.jpa.model.sched.ISchedulerService; import ca.uhn.fhir.jpa.model.sched.ISchedulerService;
import ca.uhn.fhir.jpa.model.util.JpaConstants; import ca.uhn.fhir.jpa.model.util.JpaConstants;
@ -64,12 +63,12 @@ public class SubscriptionTriggeringDstu3Test extends BaseResourceProviderDstu3Te
private static RestfulServer ourListenerRestServer; private static RestfulServer ourListenerRestServer;
private static Server ourListenerServer; private static Server ourListenerServer;
private static String ourListenerServerBase; private static String ourListenerServerBase;
private static List<Observation> ourCreatedObservations = Collections.synchronizedList(Lists.newArrayList()); private static final List<Observation> ourCreatedObservations = Collections.synchronizedList(Lists.newArrayList());
private static List<Observation> ourUpdatedObservations = Collections.synchronizedList(Lists.newArrayList()); private static final List<Observation> ourUpdatedObservations = Collections.synchronizedList(Lists.newArrayList());
private static List<Patient> ourCreatedPatients = Lists.newArrayList(); private static final List<Patient> ourCreatedPatients = Lists.newArrayList();
private static List<Patient> ourUpdatedPatients = Lists.newArrayList(); private static final List<Patient> ourUpdatedPatients = Lists.newArrayList();
private static List<String> ourContentTypes = new ArrayList<>(); private static final List<String> ourContentTypes = new ArrayList<>();
private List<IIdType> mySubscriptionIds = new ArrayList<>(); private final List<IIdType> mySubscriptionIds = new ArrayList<>();
@Autowired @Autowired
private SubscriptionTestUtil mySubscriptionTestUtil; private SubscriptionTestUtil mySubscriptionTestUtil;
@ -555,7 +554,7 @@ public class SubscriptionTriggeringDstu3Test extends BaseResourceProviderDstu3Te
@BeforeAll @BeforeAll
public static void startListenerServer() throws Exception { public static void startListenerServer() throws Exception {
ourListenerRestServer = new RestfulServer(FhirContext.forCached(FhirVersionEnum.DSTU3)); ourListenerRestServer = new RestfulServer(FhirContext.forDstu3Cached());
ObservationListener obsListener = new ObservationListener(); ObservationListener obsListener = new ObservationListener();
PatientListener ptListener = new PatientListener(); PatientListener ptListener = new PatientListener();

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.term; package ca.uhn.fhir.jpa.term;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.entity.TermCodeSystemVersion; import ca.uhn.fhir.jpa.entity.TermCodeSystemVersion;
import ca.uhn.fhir.jpa.entity.TermConcept; import ca.uhn.fhir.jpa.entity.TermConcept;
import ca.uhn.fhir.jpa.entity.TermConceptDesignation; import ca.uhn.fhir.jpa.entity.TermConceptDesignation;
@ -432,7 +431,7 @@ public class TerminologyLoaderSvcLoincTest extends BaseLoaderTest {
// IEEE Medical Device Codes // IEEE Medical Device Codes
conceptMap = conceptMaps.get(LoincIeeeMedicalDeviceCodeHandler.LOINC_IEEE_CM_ID); conceptMap = conceptMaps.get(LoincIeeeMedicalDeviceCodeHandler.LOINC_IEEE_CM_ID);
ourLog.debug(FhirContext.forCached(FhirVersionEnum.R4).newXmlParser().setPrettyPrint(true).encodeResourceToString(conceptMap)); ourLog.debug(FhirContext.forR4Cached().newXmlParser().setPrettyPrint(true).encodeResourceToString(conceptMap));
assertEquals(LoincIeeeMedicalDeviceCodeHandler.LOINC_IEEE_CM_NAME, conceptMap.getName()); assertEquals(LoincIeeeMedicalDeviceCodeHandler.LOINC_IEEE_CM_NAME, conceptMap.getName());
assertEquals(LoincIeeeMedicalDeviceCodeHandler.LOINC_IEEE_CM_URI, conceptMap.getUrl()); assertEquals(LoincIeeeMedicalDeviceCodeHandler.LOINC_IEEE_CM_URI, conceptMap.getUrl());
assertEquals("Beta.1", conceptMap.getVersion()); assertEquals("Beta.1", conceptMap.getVersion());
@ -458,7 +457,7 @@ public class TerminologyLoaderSvcLoincTest extends BaseLoaderTest {
// Group - Parent // Group - Parent
vs = valueSets.get("LG100-4"); vs = valueSets.get("LG100-4");
ourLog.info(FhirContext.forCached(FhirVersionEnum.R4).newXmlParser().setPrettyPrint(true).encodeResourceToString(vs)); ourLog.info(FhirContext.forR4Cached().newXmlParser().setPrettyPrint(true).encodeResourceToString(vs));
assertEquals("Chem_DrugTox_Chal_Sero_Allergy<SAME:Comp|Prop|Tm|Syst (except intravascular and urine)><ANYBldSerPlas,ANYUrineUrineSed><ROLLUP:Method>", vs.getName()); assertEquals("Chem_DrugTox_Chal_Sero_Allergy<SAME:Comp|Prop|Tm|Syst (except intravascular and urine)><ANYBldSerPlas,ANYUrineUrineSed><ROLLUP:Method>", vs.getName());
assertEquals("http://loinc.org/vs/LG100-4", vs.getUrl()); assertEquals("http://loinc.org/vs/LG100-4", vs.getUrl());
assertEquals(1, vs.getCompose().getInclude().size()); assertEquals(1, vs.getCompose().getInclude().size());
@ -467,7 +466,7 @@ public class TerminologyLoaderSvcLoincTest extends BaseLoaderTest {
// Group - Child // Group - Child
vs = valueSets.get("LG1695-8"); vs = valueSets.get("LG1695-8");
ourLog.info(FhirContext.forCached(FhirVersionEnum.R4).newXmlParser().setPrettyPrint(true).encodeResourceToString(vs)); ourLog.info(FhirContext.forR4Cached().newXmlParser().setPrettyPrint(true).encodeResourceToString(vs));
assertEquals("1,4-Dichlorobenzene|MCnc|Pt|ANYBldSerPl", vs.getName()); assertEquals("1,4-Dichlorobenzene|MCnc|Pt|ANYBldSerPl", vs.getName());
assertEquals("http://loinc.org/vs/LG1695-8", vs.getUrl()); assertEquals("http://loinc.org/vs/LG1695-8", vs.getUrl());
assertEquals(1, vs.getCompose().getInclude().size()); assertEquals(1, vs.getCompose().getInclude().size());

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.util.jsonpatch; package ca.uhn.fhir.jpa.util.jsonpatch;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.dao.BaseJpaTest; import ca.uhn.fhir.jpa.dao.BaseJpaTest;
import ca.uhn.fhir.jpa.patch.JsonPatchUtils; import ca.uhn.fhir.jpa.patch.JsonPatchUtils;
import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException; import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException;
@ -14,11 +13,12 @@ import org.springframework.transaction.PlatformTransactionManager;
import static org.hamcrest.CoreMatchers.containsString; import static org.hamcrest.CoreMatchers.containsString;
import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.not; import static org.hamcrest.Matchers.not;
import static org.junit.jupiter.api.Assertions.*; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.fail;
public class JsonPatchUtilsTest extends BaseJpaTest { public class JsonPatchUtilsTest extends BaseJpaTest {
private static final FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.R4); private static final FhirContext ourCtx = FhirContext.forR4Cached();
private static final Logger ourLog = LoggerFactory.getLogger(JsonPatchUtilsTest.class); private static final Logger ourLog = LoggerFactory.getLogger(JsonPatchUtilsTest.class);
@SuppressWarnings("JsonStandardCompliance") @SuppressWarnings("JsonStandardCompliance")

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.validator; package ca.uhn.fhir.validator;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.util.AttachmentUtil; import ca.uhn.fhir.util.AttachmentUtil;
import org.hl7.fhir.instance.model.api.ICompositeType; import org.hl7.fhir.instance.model.api.ICompositeType;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
@ -12,7 +11,7 @@ public class AttachmentUtilTest {
@Test @Test
public void testCreateAttachmentDstu3() { public void testCreateAttachmentDstu3() {
FhirContext ctx = FhirContext.forCached(FhirVersionEnum.DSTU3); FhirContext ctx = FhirContext.forDstu3Cached();
ICompositeType attachment = AttachmentUtil.newInstance(ctx); ICompositeType attachment = AttachmentUtil.newInstance(ctx);
AttachmentUtil.setData(ctx, attachment, new byte[]{0, 1, 2, 3}); AttachmentUtil.setData(ctx, attachment, new byte[]{0, 1, 2, 3});
AttachmentUtil.setUrl(ctx, attachment, "http://foo"); AttachmentUtil.setUrl(ctx, attachment, "http://foo");
@ -27,7 +26,7 @@ public class AttachmentUtilTest {
@Test @Test
public void testCreateAttachmentR4() { public void testCreateAttachmentR4() {
FhirContext ctx = FhirContext.forCached(FhirVersionEnum.R4); FhirContext ctx = FhirContext.forR4Cached();
ICompositeType attachment = AttachmentUtil.newInstance(ctx); ICompositeType attachment = AttachmentUtil.newInstance(ctx);
AttachmentUtil.setData(ctx, attachment, new byte[]{0, 1, 2, 3}); AttachmentUtil.setData(ctx, attachment, new byte[]{0, 1, 2, 3});
AttachmentUtil.setUrl(ctx, attachment, "http://foo"); AttachmentUtil.setUrl(ctx, attachment, "http://foo");
@ -42,7 +41,7 @@ public class AttachmentUtilTest {
@Test @Test
public void testCreateAttachmentR5() { public void testCreateAttachmentR5() {
FhirContext ctx = FhirContext.forCached(FhirVersionEnum.R5); FhirContext ctx = FhirContext.forR5Cached();
ICompositeType attachment = AttachmentUtil.newInstance(ctx); ICompositeType attachment = AttachmentUtil.newInstance(ctx);
AttachmentUtil.setData(ctx, attachment, new byte[]{0, 1, 2, 3}); AttachmentUtil.setData(ctx, attachment, new byte[]{0, 1, 2, 3});
AttachmentUtil.setUrl(ctx, attachment, "http://foo"); AttachmentUtil.setUrl(ctx, attachment, "http://foo");

View File

@ -1,19 +1,16 @@
package ca.uhn.fhir.validator; package ca.uhn.fhir.validator;
import static org.junit.jupiter.api.Assertions.*;
import ca.uhn.fhir.context.FhirVersionEnum;
import org.hl7.fhir.common.hapi.validation.validator.FhirInstanceValidator;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.Test;
import ca.uhn.fhir.context.ConfigurationException; import ca.uhn.fhir.context.ConfigurationException;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.model.dstu2.resource.QuestionnaireResponse; import ca.uhn.fhir.model.dstu2.resource.QuestionnaireResponse;
import ca.uhn.fhir.model.primitive.DateTimeDt; import ca.uhn.fhir.model.primitive.DateTimeDt;
import ca.uhn.fhir.util.TestUtil;
import ca.uhn.fhir.validation.FhirValidator; import ca.uhn.fhir.validation.FhirValidator;
import ca.uhn.fhir.validation.ValidationResult; import ca.uhn.fhir.validation.ValidationResult;
import org.hl7.fhir.common.hapi.validation.validator.FhirInstanceValidator;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.fail;
/** /**
* This test doesn't really belong to JPA, but it needs to be in a project with both DSTU2 and HL7ORG_DSTU2 present, so here will do. * This test doesn't really belong to JPA, but it needs to be in a project with both DSTU2 and HL7ORG_DSTU2 present, so here will do.
@ -23,7 +20,7 @@ public class ValidatorAcrossVersionsTest {
@Test @Test
public void testWrongContextVersion() { public void testWrongContextVersion() {
FhirContext ctxDstu2 = FhirContext.forCached(FhirVersionEnum.DSTU2); FhirContext ctxDstu2 = FhirContext.forDstu2Cached();
try { try {
ctxDstu2.getResourceDefinition(org.hl7.fhir.dstu3.model.Patient.class); ctxDstu2.getResourceDefinition(org.hl7.fhir.dstu3.model.Patient.class);
fail(); fail();
@ -37,7 +34,7 @@ public class ValidatorAcrossVersionsTest {
@Test @Test
public void testValidateProfileOnDstu2Resource() { public void testValidateProfileOnDstu2Resource() {
FhirContext ctxDstu2 = FhirContext.forCached(FhirVersionEnum.DSTU2); FhirContext ctxDstu2 = FhirContext.forDstu2Cached();
FhirValidator val = ctxDstu2.newValidator(); FhirValidator val = ctxDstu2.newValidator();
val.setValidateAgainstStandardSchema(false); val.setValidateAgainstStandardSchema(false);
val.setValidateAgainstStandardSchematron(false); val.setValidateAgainstStandardSchematron(false);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.jpa.searchparam.extractor; package ca.uhn.fhir.jpa.searchparam.extractor;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.context.RuntimeResourceDefinition; import ca.uhn.fhir.context.RuntimeResourceDefinition;
import ca.uhn.fhir.context.RuntimeSearchParam; import ca.uhn.fhir.context.RuntimeSearchParam;
import ca.uhn.fhir.context.phonetic.IPhoneticEncoder; import ca.uhn.fhir.context.phonetic.IPhoneticEncoder;
@ -49,7 +48,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
public class SearchParamExtractorDstu3Test { public class SearchParamExtractorDstu3Test {
private static FhirContext ourCtx = FhirContext.forCached(FhirVersionEnum.DSTU3); private static FhirContext ourCtx = FhirContext.forDstu3Cached();
@Test @Test
public void testParamWithOrInPath() { public void testParamWithOrInPath() {

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.rest.openapi; package ca.uhn.fhir.rest.openapi;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.api.Hook; import ca.uhn.fhir.interceptor.api.Hook;
import ca.uhn.fhir.interceptor.api.Pointcut; import ca.uhn.fhir.interceptor.api.Pointcut;
import ca.uhn.fhir.model.api.annotation.Description; import ca.uhn.fhir.model.api.annotation.Description;
@ -70,7 +69,7 @@ import static org.junit.jupiter.api.Assertions.assertNull;
public class OpenApiInterceptorTest { public class OpenApiInterceptorTest {
private static final Logger ourLog = LoggerFactory.getLogger(OpenApiInterceptorTest.class); private static final Logger ourLog = LoggerFactory.getLogger(OpenApiInterceptorTest.class);
private FhirContext myFhirContext = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myFhirContext = FhirContext.forR4Cached();
@RegisterExtension @RegisterExtension
@Order(0) @Order(0)
protected RestfulServerExtension myServer = new RestfulServerExtension(myFhirContext) protected RestfulServerExtension myServer = new RestfulServerExtension(myFhirContext)

View File

@ -1,50 +1,20 @@
package ca.uhn.fhir.rest.openapi; package ca.uhn.fhir.rest.openapi;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.api.Hook;
import ca.uhn.fhir.interceptor.api.Pointcut;
import ca.uhn.fhir.model.api.annotation.Description;
import ca.uhn.fhir.rest.annotation.ConditionalUrlParam;
import ca.uhn.fhir.rest.annotation.IdParam;
import ca.uhn.fhir.rest.annotation.Operation;
import ca.uhn.fhir.rest.annotation.OperationParam;
import ca.uhn.fhir.rest.annotation.Patch;
import ca.uhn.fhir.rest.annotation.ResourceParam;
import ca.uhn.fhir.rest.api.Constants;
import ca.uhn.fhir.rest.api.MethodOutcome;
import ca.uhn.fhir.rest.api.PatchTypeEnum;
import ca.uhn.fhir.rest.api.server.RequestDetails; import ca.uhn.fhir.rest.api.server.RequestDetails;
import ca.uhn.fhir.rest.server.interceptor.ResponseHighlighterInterceptor; import ca.uhn.fhir.rest.server.interceptor.ResponseHighlighterInterceptor;
import ca.uhn.fhir.rest.server.interceptor.auth.AuthorizationInterceptor; import ca.uhn.fhir.rest.server.interceptor.auth.AuthorizationInterceptor;
import ca.uhn.fhir.rest.server.interceptor.auth.IAuthRule; import ca.uhn.fhir.rest.server.interceptor.auth.IAuthRule;
import ca.uhn.fhir.rest.server.interceptor.auth.RuleBuilder; import ca.uhn.fhir.rest.server.interceptor.auth.RuleBuilder;
import ca.uhn.fhir.rest.server.provider.HashMapResourceProvider; import ca.uhn.fhir.rest.server.provider.HashMapResourceProvider;
import ca.uhn.fhir.rest.server.servlet.ServletRequestDetails;
import ca.uhn.fhir.test.utilities.HtmlUtil;
import ca.uhn.fhir.test.utilities.server.RestfulServerExtension; import ca.uhn.fhir.test.utilities.server.RestfulServerExtension;
import ca.uhn.fhir.util.ExtensionConstants;
import com.gargoylesoftware.htmlunit.html.DomElement;
import com.gargoylesoftware.htmlunit.html.HtmlDivision;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import io.swagger.v3.core.util.Yaml; import io.swagger.v3.core.util.Yaml;
import io.swagger.v3.oas.models.OpenAPI; import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.PathItem;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder; import org.apache.http.impl.client.HttpClientBuilder;
import org.hamcrest.Matchers;
import org.hl7.fhir.instance.model.api.IBaseBundle;
import org.hl7.fhir.instance.model.api.IBaseCoding;
import org.hl7.fhir.instance.model.api.IBaseConformance;
import org.hl7.fhir.instance.model.api.IBaseParameters;
import org.hl7.fhir.instance.model.api.IBaseReference;
import org.hl7.fhir.instance.model.api.IIdType;
import org.hl7.fhir.instance.model.api.IPrimitiveType;
import org.hl7.fhir.r4.model.CapabilityStatement;
import org.hl7.fhir.r4.model.DecimalType;
import org.hl7.fhir.r4.model.Observation; import org.hl7.fhir.r4.model.Observation;
import org.hl7.fhir.r4.model.Patient; import org.hl7.fhir.r4.model.Patient;
import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.AfterEach;
@ -55,25 +25,17 @@ import org.junit.jupiter.api.extension.RegisterExtension;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException; import java.io.IOException;
import java.net.URL;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List; import java.util.List;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.containsString;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;
public class OpenApiInterceptorWithAuthorizationInterceptorTest { public class OpenApiInterceptorWithAuthorizationInterceptorTest {
private static final Logger ourLog = LoggerFactory.getLogger(OpenApiInterceptorWithAuthorizationInterceptorTest.class); private static final Logger ourLog = LoggerFactory.getLogger(OpenApiInterceptorWithAuthorizationInterceptorTest.class);
private FhirContext myFhirContext = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myFhirContext = FhirContext.forR4Cached();
@RegisterExtension @RegisterExtension
@Order(0) @Order(0)
protected RestfulServerExtension myServer = new RestfulServerExtension(myFhirContext) protected RestfulServerExtension myServer = new RestfulServerExtension(myFhirContext)

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.narrative; package ca.uhn.fhir.narrative;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.model.dstu2.resource.Practitioner; import ca.uhn.fhir.model.dstu2.resource.Practitioner;
import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
@ -13,7 +12,7 @@ public class CustomThymeleafNarrativeGeneratorDstu2Test {
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(CustomThymeleafNarrativeGeneratorDstu2Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(CustomThymeleafNarrativeGeneratorDstu2Test.class);
private FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.DSTU2); private final FhirContext myCtx = FhirContext.forDstu2Cached();
@AfterEach @AfterEach
public void after() { public void after() {

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.narrative; package ca.uhn.fhir.narrative;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.model.api.TemporalPrecisionEnum; import ca.uhn.fhir.model.api.TemporalPrecisionEnum;
import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt; import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt;
import ca.uhn.fhir.model.dstu2.composite.QuantityDt; import ca.uhn.fhir.model.dstu2.composite.QuantityDt;
@ -37,7 +36,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
public class DefaultThymeleafNarrativeGeneratorDstu2Test { public class DefaultThymeleafNarrativeGeneratorDstu2Test {
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(DefaultThymeleafNarrativeGeneratorDstu2Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(DefaultThymeleafNarrativeGeneratorDstu2Test.class);
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.DSTU2); private final FhirContext myCtx = FhirContext.forDstu2Cached();
private DefaultThymeleafNarrativeGenerator myGen; private DefaultThymeleafNarrativeGenerator myGen;
@BeforeEach @BeforeEach

View File

@ -1,16 +1,27 @@
package ca.uhn.fhir.narrative; package ca.uhn.fhir.narrative;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.parser.DataFormatException; import ca.uhn.fhir.parser.DataFormatException;
import ca.uhn.fhir.util.TestUtil; import ca.uhn.fhir.util.TestUtil;
import org.apache.commons.collections.Transformer; import org.apache.commons.collections.Transformer;
import org.apache.commons.collections.map.LazyMap; import org.apache.commons.collections.map.LazyMap;
import org.hamcrest.core.StringContains; import org.hamcrest.core.StringContains;
import org.hl7.fhir.dstu3.model.*; import org.hl7.fhir.dstu3.model.CodeableConcept;
import org.hl7.fhir.dstu3.model.Coding;
import org.hl7.fhir.dstu3.model.DateTimeType;
import org.hl7.fhir.dstu3.model.DiagnosticReport;
import org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus; import org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus;
import org.hl7.fhir.dstu3.model.Medication;
import org.hl7.fhir.dstu3.model.MedicationRequest;
import org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus; import org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus;
import org.hl7.fhir.dstu3.model.Observation;
import org.hl7.fhir.dstu3.model.Observation.ObservationStatus; import org.hl7.fhir.dstu3.model.Observation.ObservationStatus;
import org.hl7.fhir.dstu3.model.OperationOutcome;
import org.hl7.fhir.dstu3.model.Patient;
import org.hl7.fhir.dstu3.model.Quantity;
import org.hl7.fhir.dstu3.model.Reference;
import org.hl7.fhir.dstu3.model.SimpleQuantity;
import org.hl7.fhir.dstu3.model.StringType;
import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
@ -30,7 +41,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
public class DefaultThymeleafNarrativeGeneratorDstu3Test { public class DefaultThymeleafNarrativeGeneratorDstu3Test {
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(DefaultThymeleafNarrativeGeneratorDstu3Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(DefaultThymeleafNarrativeGeneratorDstu3Test.class);
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.DSTU3); private final FhirContext myCtx = FhirContext.forDstu3Cached();
private DefaultThymeleafNarrativeGenerator myGen; private DefaultThymeleafNarrativeGenerator myGen;
@BeforeEach @BeforeEach

View File

@ -1,12 +1,9 @@
package ca.uhn.fhir.narrative; package ca.uhn.fhir.narrative;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.util.TestUtil;
import org.hl7.fhir.r4.model.Practitioner; import org.hl7.fhir.r4.model.Practitioner;
import org.hl7.fhir.r4.model.Quantity; import org.hl7.fhir.r4.model.Quantity;
import org.hl7.fhir.r4.model.StringType; import org.hl7.fhir.r4.model.StringType;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
@ -21,7 +18,7 @@ public class CustomThymeleafNarrativeGeneratorR4Test {
/** /**
* Don't use cached here since we modify the context * Don't use cached here since we modify the context
*/ */
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
@AfterEach @AfterEach
public void after() { public void after() {

View File

@ -1,14 +1,25 @@
package ca.uhn.fhir.narrative; package ca.uhn.fhir.narrative;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.parser.DataFormatException; import ca.uhn.fhir.parser.DataFormatException;
import ca.uhn.fhir.util.TestUtil; import ca.uhn.fhir.util.TestUtil;
import org.hamcrest.core.StringContains; import org.hamcrest.core.StringContains;
import org.hl7.fhir.r4.model.*; import org.hl7.fhir.r4.model.CodeableConcept;
import org.hl7.fhir.r4.model.Coding;
import org.hl7.fhir.r4.model.DateTimeType;
import org.hl7.fhir.r4.model.DiagnosticReport;
import org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus; import org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus;
import org.hl7.fhir.r4.model.Medication;
import org.hl7.fhir.r4.model.MedicationRequest;
import org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus; import org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus;
import org.hl7.fhir.r4.model.Observation;
import org.hl7.fhir.r4.model.Observation.ObservationStatus; import org.hl7.fhir.r4.model.Observation.ObservationStatus;
import org.hl7.fhir.r4.model.OperationOutcome;
import org.hl7.fhir.r4.model.Patient;
import org.hl7.fhir.r4.model.Quantity;
import org.hl7.fhir.r4.model.Reference;
import org.hl7.fhir.r4.model.SimpleQuantity;
import org.hl7.fhir.r4.model.StringType;
import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
@ -23,7 +34,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
public class DefaultThymeleafNarrativeGeneratorR4Test { public class DefaultThymeleafNarrativeGeneratorR4Test {
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(DefaultThymeleafNarrativeGeneratorR4Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(DefaultThymeleafNarrativeGeneratorR4Test.class);
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
private DefaultThymeleafNarrativeGenerator myGen; private DefaultThymeleafNarrativeGenerator myGen;
@BeforeEach @BeforeEach
@ -115,7 +126,7 @@ public class DefaultThymeleafNarrativeGeneratorR4Test {
Observation obs = new Observation(); Observation obs = new Observation();
obs.getCode().addCoding().setCode("1938HB").setDisplay("Hemoglobin"); obs.getCode().addCoding().setCode("1938HB").setDisplay("Hemoglobin");
obs.setValue(new Quantity(null, 2.223, null, null, "mg/L")); obs.setValue(new Quantity(null, 2.223, null, null, "mg/L"));
obs.addReferenceRange().setLow((SimpleQuantity) new SimpleQuantity().setValue(2.20)).setHigh((SimpleQuantity) new SimpleQuantity().setValue(2.99)); obs.addReferenceRange().setLow(new SimpleQuantity().setValue(2.20)).setHigh(new SimpleQuantity().setValue(2.99));
obs.setStatus(ObservationStatus.FINAL); obs.setStatus(ObservationStatus.FINAL);
obs.addNote().setText("This is a result comment"); obs.addNote().setText("This is a result comment");

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.rest.server; package ca.uhn.fhir.rest.server;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.rest.annotation.Metadata; import ca.uhn.fhir.rest.annotation.Metadata;
import ca.uhn.fhir.rest.api.server.RequestDetails; import ca.uhn.fhir.rest.api.server.RequestDetails;
import ca.uhn.fhir.rest.server.method.ConformanceMethodBinding; import ca.uhn.fhir.rest.server.method.ConformanceMethodBinding;
@ -24,7 +23,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
public class CapabilityStatementCacheR4Test { public class CapabilityStatementCacheR4Test {
private final FhirContext myFhirContext = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myFhirContext = FhirContext.forR4Cached();
@RegisterExtension @RegisterExtension
protected final RestfulServerExtension myServerExtension = new RestfulServerExtension(myFhirContext) protected final RestfulServerExtension myServerExtension = new RestfulServerExtension(myFhirContext)

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.rest.server; package ca.uhn.fhir.rest.server;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.interceptor.api.Hook; import ca.uhn.fhir.interceptor.api.Hook;
import ca.uhn.fhir.interceptor.api.Interceptor; import ca.uhn.fhir.interceptor.api.Interceptor;
import ca.uhn.fhir.interceptor.api.Pointcut; import ca.uhn.fhir.interceptor.api.Pointcut;
@ -20,7 +19,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
public class CapabilityStatementCustomizationR4Test { public class CapabilityStatementCustomizationR4Test {
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
@Order(0) @Order(0)
@RegisterExtension @RegisterExtension
protected RestfulServerExtension myServerExtension = new RestfulServerExtension(myCtx); protected RestfulServerExtension myServerExtension = new RestfulServerExtension(myCtx);

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.rest.server; package ca.uhn.fhir.rest.server;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.model.primitive.InstantDt; import ca.uhn.fhir.model.primitive.InstantDt;
import ca.uhn.fhir.rest.annotation.IdParam; import ca.uhn.fhir.rest.annotation.IdParam;
import ca.uhn.fhir.rest.annotation.Read; import ca.uhn.fhir.rest.annotation.Read;
@ -38,7 +37,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
public class ReadR4Test { public class ReadR4Test {
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(ReadR4Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(ReadR4Test.class);
private static CloseableHttpClient ourClient; private static CloseableHttpClient ourClient;
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
@RegisterExtension @RegisterExtension
public RestfulServerExtension myRestfulServerExtension = new RestfulServerExtension(myCtx); public RestfulServerExtension myRestfulServerExtension = new RestfulServerExtension(myCtx);
private int myPort; private int myPort;

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.rest.server; package ca.uhn.fhir.rest.server;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.model.api.ResourceMetadataKeyEnum; import ca.uhn.fhir.model.api.ResourceMetadataKeyEnum;
import ca.uhn.fhir.model.valueset.BundleEntrySearchModeEnum; import ca.uhn.fhir.model.valueset.BundleEntrySearchModeEnum;
import ca.uhn.fhir.rest.annotation.OptionalParam; import ca.uhn.fhir.rest.annotation.OptionalParam;
@ -39,7 +38,7 @@ import static org.junit.jupiter.api.Assertions.fail;
public class SearchPreferHandlingInterceptorTest { public class SearchPreferHandlingInterceptorTest {
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
@RegisterExtension @RegisterExtension
public RestfulServerExtension myRestfulServerExtension = new RestfulServerExtension(myCtx) public RestfulServerExtension myRestfulServerExtension = new RestfulServerExtension(myCtx)
.registerProvider(new DummyPatientResourceProvider()) .registerProvider(new DummyPatientResourceProvider())

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.rest.server; package ca.uhn.fhir.rest.server;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.model.api.Include; import ca.uhn.fhir.model.api.Include;
import ca.uhn.fhir.model.api.ResourceMetadataKeyEnum; import ca.uhn.fhir.model.api.ResourceMetadataKeyEnum;
import ca.uhn.fhir.model.valueset.BundleEntrySearchModeEnum; import ca.uhn.fhir.model.valueset.BundleEntrySearchModeEnum;
@ -17,9 +16,7 @@ import ca.uhn.fhir.rest.client.interceptor.LoggingInterceptor;
import ca.uhn.fhir.rest.gclient.StringClientParam; import ca.uhn.fhir.rest.gclient.StringClientParam;
import ca.uhn.fhir.rest.param.TokenAndListParam; import ca.uhn.fhir.rest.param.TokenAndListParam;
import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException; import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException;
import ca.uhn.fhir.test.utilities.JettyUtil;
import ca.uhn.fhir.test.utilities.server.RestfulServerExtension; import ca.uhn.fhir.test.utilities.server.RestfulServerExtension;
import ca.uhn.fhir.util.TestUtil;
import ca.uhn.fhir.util.UrlUtil; import ca.uhn.fhir.util.UrlUtil;
import ca.uhn.fhir.validation.FhirValidator; import ca.uhn.fhir.validation.FhirValidator;
import ca.uhn.fhir.validation.ValidationResult; import ca.uhn.fhir.validation.ValidationResult;
@ -30,9 +27,6 @@ import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder; import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletHandler;
import org.eclipse.jetty.servlet.ServletHolder;
import org.hl7.fhir.instance.model.api.IBaseResource; import org.hl7.fhir.instance.model.api.IBaseResource;
import org.hl7.fhir.r4.model.Bundle; import org.hl7.fhir.r4.model.Bundle;
import org.hl7.fhir.r4.model.HumanName; import org.hl7.fhir.r4.model.HumanName;
@ -68,7 +62,7 @@ public class SearchR4Test {
private static CloseableHttpClient ourClient; private static CloseableHttpClient ourClient;
private static TokenAndListParam ourIdentifiers; private static TokenAndListParam ourIdentifiers;
private static String ourLastMethod; private static String ourLastMethod;
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
@RegisterExtension @RegisterExtension
public RestfulServerExtension myRestfulServerExtension = new RestfulServerExtension(myCtx) public RestfulServerExtension myRestfulServerExtension = new RestfulServerExtension(myCtx)
.registerProvider(new DummyPatientResourceProvider()) .registerProvider(new DummyPatientResourceProvider())

View File

@ -1,8 +1,6 @@
package ca.uhn.fhir.rest.server; package ca.uhn.fhir.rest.server;
import ca.uhn.fhir.context.ConfigurationException;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.rest.annotation.ConditionalUrlParam; import ca.uhn.fhir.rest.annotation.ConditionalUrlParam;
import ca.uhn.fhir.rest.annotation.IdParam; import ca.uhn.fhir.rest.annotation.IdParam;
import ca.uhn.fhir.rest.annotation.Operation; import ca.uhn.fhir.rest.annotation.Operation;
@ -14,34 +12,23 @@ import ca.uhn.fhir.rest.annotation.Update;
import ca.uhn.fhir.rest.annotation.Validate; import ca.uhn.fhir.rest.annotation.Validate;
import ca.uhn.fhir.rest.api.MethodOutcome; import ca.uhn.fhir.rest.api.MethodOutcome;
import ca.uhn.fhir.rest.api.server.IBundleProvider; import ca.uhn.fhir.rest.api.server.IBundleProvider;
import ca.uhn.fhir.rest.api.server.RequestDetails;
import ca.uhn.fhir.rest.param.TokenParam; import ca.uhn.fhir.rest.param.TokenParam;
import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException;
import ca.uhn.fhir.rest.server.provider.ServerCapabilityStatementProvider;
import ca.uhn.fhir.test.utilities.server.MockServletUtil; import ca.uhn.fhir.test.utilities.server.MockServletUtil;
import ca.uhn.fhir.util.TestUtil;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import org.hamcrest.core.StringContains; import org.hamcrest.core.StringContains;
import org.hl7.fhir.instance.model.api.IBaseResource; import org.hl7.fhir.instance.model.api.IBaseResource;
import org.hl7.fhir.r4.model.CapabilityStatement;
import org.hl7.fhir.r4.model.DateType; import org.hl7.fhir.r4.model.DateType;
import org.hl7.fhir.r4.model.IdType; import org.hl7.fhir.r4.model.IdType;
import org.hl7.fhir.r4.model.OperationDefinition;
import org.hl7.fhir.r4.model.Patient; import org.hl7.fhir.r4.model.Patient;
import org.hl7.fhir.r4.model.StringType; import org.hl7.fhir.r4.model.StringType;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import javax.servlet.ServletException; import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.List; import java.util.List;
import static org.hamcrest.CoreMatchers.containsString;
import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.junit.jupiter.api.Assertions.fail; import static org.junit.jupiter.api.Assertions.fail;
public class ServerInvalidDefinitionR4Test extends BaseR4ServerTest { public class ServerInvalidDefinitionR4Test extends BaseR4ServerTest {
@ -208,7 +195,7 @@ public class ServerInvalidDefinitionR4Test extends BaseR4ServerTest {
} }
RestfulServer rs = new RestfulServer(FhirContext.forCached(FhirVersionEnum.R4)); RestfulServer rs = new RestfulServer(FhirContext.forR4Cached());
rs.setProviders(new PlainProviderWithExtendedOperationOnNoType()); rs.setProviders(new PlainProviderWithExtendedOperationOnNoType());
rs.setServerAddressStrategy(new HardcodedServerAddressStrategy("http://localhost/baseR4")); rs.setServerAddressStrategy(new HardcodedServerAddressStrategy("http://localhost/baseR4"));

View File

@ -3,7 +3,6 @@ package ca.uhn.fhir.util;
import ca.uhn.fhir.context.BaseRuntimeChildDefinition; import ca.uhn.fhir.context.BaseRuntimeChildDefinition;
import ca.uhn.fhir.context.BaseRuntimeElementDefinition; import ca.uhn.fhir.context.BaseRuntimeElementDefinition;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.model.api.annotation.Block; import ca.uhn.fhir.model.api.annotation.Block;
import ca.uhn.fhir.parser.DataFormatException; import ca.uhn.fhir.parser.DataFormatException;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
@ -68,7 +67,7 @@ import static org.mockito.Mockito.when;
public class FhirTerserR4Test { public class FhirTerserR4Test {
private static final Logger ourLog = LoggerFactory.getLogger(FhirTerserR4Test.class); private static final Logger ourLog = LoggerFactory.getLogger(FhirTerserR4Test.class);
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
@Test @Test
public void testAddElement() { public void testAddElement() {

View File

@ -1,12 +1,25 @@
package ca.uhn.fhir.rest.server; package ca.uhn.fhir.rest.server;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.model.api.Include; import ca.uhn.fhir.model.api.Include;
import ca.uhn.fhir.model.api.annotation.Description; import ca.uhn.fhir.model.api.annotation.Description;
import ca.uhn.fhir.model.api.annotation.ResourceDef; import ca.uhn.fhir.model.api.annotation.ResourceDef;
import ca.uhn.fhir.model.primitive.InstantDt; import ca.uhn.fhir.model.primitive.InstantDt;
import ca.uhn.fhir.rest.annotation.*; import ca.uhn.fhir.rest.annotation.ConditionalUrlParam;
import ca.uhn.fhir.rest.annotation.Create;
import ca.uhn.fhir.rest.annotation.Delete;
import ca.uhn.fhir.rest.annotation.History;
import ca.uhn.fhir.rest.annotation.IdParam;
import ca.uhn.fhir.rest.annotation.IncludeParam;
import ca.uhn.fhir.rest.annotation.Operation;
import ca.uhn.fhir.rest.annotation.OperationParam;
import ca.uhn.fhir.rest.annotation.OptionalParam;
import ca.uhn.fhir.rest.annotation.Read;
import ca.uhn.fhir.rest.annotation.RequiredParam;
import ca.uhn.fhir.rest.annotation.ResourceParam;
import ca.uhn.fhir.rest.annotation.Search;
import ca.uhn.fhir.rest.annotation.Update;
import ca.uhn.fhir.rest.annotation.Validate;
import ca.uhn.fhir.rest.api.Constants; import ca.uhn.fhir.rest.api.Constants;
import ca.uhn.fhir.rest.api.MethodOutcome; import ca.uhn.fhir.rest.api.MethodOutcome;
import ca.uhn.fhir.rest.api.RestSearchParameterTypeEnum; import ca.uhn.fhir.rest.api.RestSearchParameterTypeEnum;
@ -28,7 +41,8 @@ import ca.uhn.fhir.util.TestUtil;
import ca.uhn.fhir.validation.ValidationResult; import ca.uhn.fhir.validation.ValidationResult;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import org.hl7.fhir.instance.model.api.IBaseResource; import org.hl7.fhir.instance.model.api.IBaseResource;
import org.hl7.fhir.r5.model.*; import org.hl7.fhir.r5.model.Bundle;
import org.hl7.fhir.r5.model.CapabilityStatement;
import org.hl7.fhir.r5.model.CapabilityStatement.CapabilityStatementRestComponent; import org.hl7.fhir.r5.model.CapabilityStatement.CapabilityStatementRestComponent;
import org.hl7.fhir.r5.model.CapabilityStatement.CapabilityStatementRestResourceComponent; import org.hl7.fhir.r5.model.CapabilityStatement.CapabilityStatementRestResourceComponent;
import org.hl7.fhir.r5.model.CapabilityStatement.CapabilityStatementRestResourceOperationComponent; import org.hl7.fhir.r5.model.CapabilityStatement.CapabilityStatementRestResourceOperationComponent;
@ -36,9 +50,18 @@ import org.hl7.fhir.r5.model.CapabilityStatement.CapabilityStatementRestResource
import org.hl7.fhir.r5.model.CapabilityStatement.ConditionalDeleteStatus; import org.hl7.fhir.r5.model.CapabilityStatement.ConditionalDeleteStatus;
import org.hl7.fhir.r5.model.CapabilityStatement.SystemRestfulInteraction; import org.hl7.fhir.r5.model.CapabilityStatement.SystemRestfulInteraction;
import org.hl7.fhir.r5.model.CapabilityStatement.TypeRestfulInteraction; import org.hl7.fhir.r5.model.CapabilityStatement.TypeRestfulInteraction;
import org.hl7.fhir.r5.model.CodeType;
import org.hl7.fhir.r5.model.DateType;
import org.hl7.fhir.r5.model.DiagnosticReport;
import org.hl7.fhir.r5.model.Encounter;
import org.hl7.fhir.r5.model.Enumerations;
import org.hl7.fhir.r5.model.Enumerations.PublicationStatus; import org.hl7.fhir.r5.model.Enumerations.PublicationStatus;
import org.hl7.fhir.r5.model.IdType;
import org.hl7.fhir.r5.model.OperationDefinition;
import org.hl7.fhir.r5.model.OperationDefinition.OperationDefinitionParameterComponent; import org.hl7.fhir.r5.model.OperationDefinition.OperationDefinitionParameterComponent;
import org.hl7.fhir.r5.model.OperationDefinition.OperationKind; import org.hl7.fhir.r5.model.OperationDefinition.OperationKind;
import org.hl7.fhir.r5.model.Patient;
import org.hl7.fhir.r5.model.StringType;
import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
@ -70,7 +93,7 @@ import static org.mockito.Mockito.when;
public class ServerCapabilityStatementProviderR5Test { public class ServerCapabilityStatementProviderR5Test {
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R5); private final FhirContext myCtx = FhirContext.forR5Cached();
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(ServerCapabilityStatementProviderR5Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(ServerCapabilityStatementProviderR5Test.class);
private HttpServletRequest createHttpServletRequest() { private HttpServletRequest createHttpServletRequest() {
@ -212,7 +235,7 @@ public class ServerCapabilityStatementProviderR5Test {
rs.init(createServletConfig()); rs.init(createServletConfig());
CapabilityStatement serverConformance = (CapabilityStatement) sc.getServerConformance(createHttpServletRequest(), createRequestDetails(rs)); CapabilityStatement serverConformance = (CapabilityStatement) sc.getServerConformance(createHttpServletRequest(), createRequestDetails(rs));
List<String> formatCodes = serverConformance.getFormat().stream().map(c -> c.getCode()).collect(Collectors.toList());; List<String> formatCodes = serverConformance.getFormat().stream().map(c -> c.getCode()).collect(Collectors.toList());
assertThat(formatCodes, hasItem(Constants.FORMAT_XML)); assertThat(formatCodes, hasItem(Constants.FORMAT_XML));
assertThat(formatCodes, hasItem(Constants.FORMAT_JSON)); assertThat(formatCodes, hasItem(Constants.FORMAT_JSON));

View File

@ -370,7 +370,7 @@ public class InMemoryTerminologyServerValidationSupport implements IValidationSu
@Nullable @Nullable
private org.hl7.fhir.r5.model.ValueSet expandValueSetDstu2(ValidationSupportContext theValidationSupportContext, ca.uhn.fhir.model.dstu2.resource.ValueSet theInput, @Nullable String theWantSystemUrlAndVersion, @Nullable String theWantCode) { private org.hl7.fhir.r5.model.ValueSet expandValueSetDstu2(ValidationSupportContext theValidationSupportContext, ca.uhn.fhir.model.dstu2.resource.ValueSet theInput, @Nullable String theWantSystemUrlAndVersion, @Nullable String theWantCode) {
IParser parserRi = FhirContext.forCached(FhirVersionEnum.DSTU2_HL7ORG).newJsonParser(); IParser parserRi = FhirContext.forCached(FhirVersionEnum.DSTU2_HL7ORG).newJsonParser();
IParser parserHapi = FhirContext.forCached(FhirVersionEnum.DSTU2).newJsonParser(); IParser parserHapi = FhirContext.forDstu2Cached().newJsonParser();
Function<String, CodeSystem> codeSystemLoader = t -> { Function<String, CodeSystem> codeSystemLoader = t -> {
ca.uhn.fhir.model.dstu2.resource.ValueSet codeSystem = theInput; ca.uhn.fhir.model.dstu2.resource.ValueSet codeSystem = theInput;
@ -408,9 +408,7 @@ public class InMemoryTerminologyServerValidationSupport implements IValidationSu
if (cs != null) { if (cs != null) {
IPrimitiveType<?> content = getFhirContext().newTerser().getSingleValueOrNull(cs, "content", IPrimitiveType.class); IPrimitiveType<?> content = getFhirContext().newTerser().getSingleValueOrNull(cs, "content", IPrimitiveType.class);
if (!"not-present".equals(content.getValueAsString())) { return !"not-present".equals(content.getValueAsString());
return true;
}
} }
return false; return false;

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.rest.server; package ca.uhn.fhir.rest.server;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.jpa.model.util.JpaConstants; import ca.uhn.fhir.jpa.model.util.JpaConstants;
import ca.uhn.fhir.model.api.Include; import ca.uhn.fhir.model.api.Include;
import ca.uhn.fhir.model.api.annotation.Description; import ca.uhn.fhir.model.api.annotation.Description;
@ -119,7 +118,7 @@ public class ServerCapabilityStatementProviderR4Test {
public static final String PATIENT_SUB_SUB_2 = "PatientSubSub2"; public static final String PATIENT_SUB_SUB_2 = "PatientSubSub2";
public static final String PATIENT_TRIPLE_SUB = "PatientTripleSub"; public static final String PATIENT_TRIPLE_SUB = "PatientTripleSub";
private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(ServerCapabilityStatementProviderR4Test.class); private static final org.slf4j.Logger ourLog = org.slf4j.LoggerFactory.getLogger(ServerCapabilityStatementProviderR4Test.class);
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
private FhirValidator myValidator; private FhirValidator myValidator;
private static Set<String> toStrings(Collection<? extends IPrimitiveType> theType) { private static Set<String> toStrings(Collection<? extends IPrimitiveType> theType) {

View File

@ -1,7 +1,6 @@
package ca.uhn.fhir.rest.server.interceptor; package ca.uhn.fhir.rest.server.interceptor;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.context.support.IValidationSupport; import ca.uhn.fhir.context.support.IValidationSupport;
import ca.uhn.fhir.context.support.ValidationSupportContext; import ca.uhn.fhir.context.support.ValidationSupportContext;
import ca.uhn.fhir.rest.client.api.IGenericClient; import ca.uhn.fhir.rest.client.api.IGenericClient;
@ -21,7 +20,7 @@ import static org.junit.jupiter.api.Assertions.assertNull;
public class ResponseTerminologyDisplayPopulationInterceptorTest { public class ResponseTerminologyDisplayPopulationInterceptorTest {
private final FhirContext myCtx = FhirContext.forCached(FhirVersionEnum.R4); private final FhirContext myCtx = FhirContext.forR4Cached();
@Order(0) @Order(0)
@RegisterExtension @RegisterExtension
protected RestfulServerExtension myServerExtension = new RestfulServerExtension(myCtx); protected RestfulServerExtension myServerExtension = new RestfulServerExtension(myCtx);

View File

@ -1,7 +1,6 @@
package org.hl7.fhir.common.hapi.validation.support; package org.hl7.fhir.common.hapi.validation.support;
import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.FhirContext;
import ca.uhn.fhir.context.FhirVersionEnum;
import ca.uhn.fhir.context.support.ConceptValidationOptions; import ca.uhn.fhir.context.support.ConceptValidationOptions;
import ca.uhn.fhir.context.support.IValidationSupport; import ca.uhn.fhir.context.support.IValidationSupport;
import ca.uhn.fhir.context.support.ValidationSupportContext; import ca.uhn.fhir.context.support.ValidationSupportContext;
@ -168,7 +167,7 @@ public class CommonCodeSystemsTerminologyServiceTest {
@Test @Test
public void testFetchCodeSystemBuiltIn_Iso3166_DSTU3() { public void testFetchCodeSystemBuiltIn_Iso3166_DSTU3() {
CommonCodeSystemsTerminologyService svc = new CommonCodeSystemsTerminologyService(FhirContext.forCached(FhirVersionEnum.DSTU3)); CommonCodeSystemsTerminologyService svc = new CommonCodeSystemsTerminologyService(FhirContext.forDstu3Cached());
org.hl7.fhir.dstu3.model.CodeSystem cs = (org.hl7.fhir.dstu3.model.CodeSystem) svc.fetchCodeSystem(CommonCodeSystemsTerminologyService.COUNTRIES_CODESYSTEM_URL); org.hl7.fhir.dstu3.model.CodeSystem cs = (org.hl7.fhir.dstu3.model.CodeSystem) svc.fetchCodeSystem(CommonCodeSystemsTerminologyService.COUNTRIES_CODESYSTEM_URL);
assert cs != null; assert cs != null;
assertEquals(498, cs.getConcept().size()); assertEquals(498, cs.getConcept().size());
@ -176,7 +175,7 @@ public class CommonCodeSystemsTerminologyServiceTest {
@Test @Test
public void testFetchCodeSystemBuiltIn_Iso3166_R5() { public void testFetchCodeSystemBuiltIn_Iso3166_R5() {
CommonCodeSystemsTerminologyService svc = new CommonCodeSystemsTerminologyService(FhirContext.forCached(FhirVersionEnum.R5)); CommonCodeSystemsTerminologyService svc = new CommonCodeSystemsTerminologyService(FhirContext.forR5Cached());
org.hl7.fhir.r5.model.CodeSystem cs = (org.hl7.fhir.r5.model.CodeSystem) svc.fetchCodeSystem(CommonCodeSystemsTerminologyService.COUNTRIES_CODESYSTEM_URL); org.hl7.fhir.r5.model.CodeSystem cs = (org.hl7.fhir.r5.model.CodeSystem) svc.fetchCodeSystem(CommonCodeSystemsTerminologyService.COUNTRIES_CODESYSTEM_URL);
assert cs != null; assert cs != null;
assertEquals(498, cs.getConcept().size()); assertEquals(498, cs.getConcept().size());
@ -184,7 +183,7 @@ public class CommonCodeSystemsTerminologyServiceTest {
@Test @Test
public void testFetchCodeSystemBuiltIn_Iso3166_DSTU2() { public void testFetchCodeSystemBuiltIn_Iso3166_DSTU2() {
CommonCodeSystemsTerminologyService svc = new CommonCodeSystemsTerminologyService(FhirContext.forCached(FhirVersionEnum.DSTU2)); CommonCodeSystemsTerminologyService svc = new CommonCodeSystemsTerminologyService(FhirContext.forDstu2Cached());
IBaseResource cs = svc.fetchCodeSystem(CommonCodeSystemsTerminologyService.COUNTRIES_CODESYSTEM_URL); IBaseResource cs = svc.fetchCodeSystem(CommonCodeSystemsTerminologyService.COUNTRIES_CODESYSTEM_URL);
assertEquals(null, cs); assertEquals(null, cs);
} }