Merge branch 'master' into windows-fixes
This commit is contained in:
commit
00320da9dc
|
@ -198,6 +198,34 @@ public class ResourceProviderR4Test extends BaseResourceProviderR4Test {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testSearchFetchPageBeyondEnd() {
|
||||||
|
for (int i = 0; i < 10; i++) {
|
||||||
|
Organization o = new Organization();
|
||||||
|
o.setId("O" + i);
|
||||||
|
o.setName("O" + i);
|
||||||
|
IIdType oid = ourClient.update().resource(o).execute().getId().toUnqualifiedVersionless();
|
||||||
|
}
|
||||||
|
|
||||||
|
Bundle output = ourClient
|
||||||
|
.search()
|
||||||
|
.forResource("Organization")
|
||||||
|
.count(3)
|
||||||
|
.returnBundle(Bundle.class)
|
||||||
|
.execute();
|
||||||
|
|
||||||
|
String nextPageUrl = output.getLink("next").getUrl();
|
||||||
|
String url = nextPageUrl.replace("_getpagesoffset=3", "_getpagesoffset=999");
|
||||||
|
ourLog.info("Going to request URL: {}", url);
|
||||||
|
|
||||||
|
output = ourClient
|
||||||
|
.loadPage()
|
||||||
|
.byUrl(url)
|
||||||
|
.andReturnBundle(Bundle.class)
|
||||||
|
.execute();
|
||||||
|
assertEquals(0, output.getEntry().size());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDeleteConditional() {
|
public void testDeleteConditional() {
|
||||||
|
|
|
@ -7,6 +7,7 @@ import org.hl7.fhir.dstu3.model.*;
|
||||||
import org.hl7.fhir.dstu3.model.codesystems.MedicationRequestCategory;
|
import org.hl7.fhir.dstu3.model.codesystems.MedicationRequestCategory;
|
||||||
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.Ignore;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
||||||
|
@ -37,6 +38,25 @@ public class InMemorySubscriptionMatcherTestR3 extends BaseSubscriptionDstu3Test
|
||||||
assertFalse(result.matched());
|
assertFalse(result.matched());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Ignore
|
||||||
|
public void testResourceById() {
|
||||||
|
|
||||||
|
ProcedureRequest pr = new ProcedureRequest();
|
||||||
|
pr.setId("ProcedureRequest/123");
|
||||||
|
pr.setIntent(ProcedureRequest.ProcedureRequestIntent.ORIGINALORDER);
|
||||||
|
|
||||||
|
assertMatched(pr, "ProcedureRequest?_id=123");
|
||||||
|
assertMatched(pr, "ProcedureRequest?_id=Patient/123");
|
||||||
|
assertMatched(pr, "ProcedureRequest?_id=Patient/123,Patient/999");
|
||||||
|
assertMatched(pr, "ProcedureRequest?_id=Patient/123&_id=Patient/123");
|
||||||
|
assertNotMatched(pr, "ProcedureRequest?_id=Patient/888");
|
||||||
|
assertNotMatched(pr, "ProcedureRequest?_id=Patient/888,Patient/999");
|
||||||
|
assertNotMatched(pr, "ProcedureRequest?_id=Patient/123&_id=Patient/888");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
The following tests are copied from an e-mail from a site using HAPI FHIR
|
The following tests are copied from an e-mail from a site using HAPI FHIR
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -599,7 +599,9 @@ public class RestfulServer extends HttpServlet implements IRestfulServer<Servlet
|
||||||
* Sets the non-resource specific providers which implement method calls on this server.
|
* Sets the non-resource specific providers which implement method calls on this server.
|
||||||
*
|
*
|
||||||
* @see #setResourceProviders(Collection)
|
* @see #setResourceProviders(Collection)
|
||||||
|
* @deprecated This method causes inconsistent behaviour depending on the order it is called in. Use {@link #registerProviders(Object...)} instead.
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public void setPlainProviders(Object... theProv) {
|
public void setPlainProviders(Object... theProv) {
|
||||||
setPlainProviders(Arrays.asList(theProv));
|
setPlainProviders(Arrays.asList(theProv));
|
||||||
}
|
}
|
||||||
|
@ -608,7 +610,9 @@ public class RestfulServer extends HttpServlet implements IRestfulServer<Servlet
|
||||||
* Sets the non-resource specific providers which implement method calls on this server.
|
* Sets the non-resource specific providers which implement method calls on this server.
|
||||||
*
|
*
|
||||||
* @see #setResourceProviders(Collection)
|
* @see #setResourceProviders(Collection)
|
||||||
|
* @deprecated This method causes inconsistent behaviour depending on the order it is called in. Use {@link #registerProviders(Object...)} instead.
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public void setPlainProviders(Collection<Object> theProviders) {
|
public void setPlainProviders(Collection<Object> theProviders) {
|
||||||
Validate.noNullElements(theProviders, "theProviders must not contain any null elements");
|
Validate.noNullElements(theProviders, "theProviders must not contain any null elements");
|
||||||
|
|
||||||
|
@ -1359,6 +1363,16 @@ public class RestfulServer extends HttpServlet implements IRestfulServer<Servlet
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Register a group of providers. These could be Resource Providers (classes implementing {@link IResourceProvider}) or "plain" providers, or a mixture of the two.
|
||||||
|
*
|
||||||
|
* @param theProviders a {@code Collection} of theProviders. The parameter could be null or an empty {@code Collection}
|
||||||
|
*/
|
||||||
|
public void registerProviders(Object... theProviders) {
|
||||||
|
Validate.noNullElements(theProviders);
|
||||||
|
registerProviders(Arrays.asList(theProviders));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Register a group of theProviders. These could be Resource Providers, "plain" theProviders or a mixture of the two.
|
* Register a group of theProviders. These could be Resource Providers, "plain" theProviders or a mixture of the two.
|
||||||
*
|
*
|
||||||
|
|
|
@ -118,7 +118,7 @@ public class PageMethodBinding extends BaseResourceReturningMethodBinding {
|
||||||
Integer totalNum = resultList.size();
|
Integer totalNum = resultList.size();
|
||||||
start = offsetI;
|
start = offsetI;
|
||||||
if (totalNum != null) {
|
if (totalNum != null) {
|
||||||
start = Math.min(start, totalNum - 1);
|
start = Math.min(start, totalNum);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -28,6 +28,7 @@ import org.junit.Test;
|
||||||
|
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
|
@ -64,7 +65,7 @@ public class GraphQLR4RawTest {
|
||||||
servlet.setDefaultResponseEncoding(EncodingEnum.JSON);
|
servlet.setDefaultResponseEncoding(EncodingEnum.JSON);
|
||||||
servlet.setPagingProvider(new FifoMemoryPagingProvider(10));
|
servlet.setPagingProvider(new FifoMemoryPagingProvider(10));
|
||||||
|
|
||||||
servlet.registerProvider(new MyGraphQLProvider());
|
servlet.registerProviders(Collections.singletonList(new MyGraphQLProvider()));
|
||||||
servlet.registerProvider(new MyPatientResourceProvider());
|
servlet.registerProvider(new MyPatientResourceProvider());
|
||||||
ServletHolder servletHolder = new ServletHolder(servlet);
|
ServletHolder servletHolder = new ServletHolder(servlet);
|
||||||
proxyHandler.addServletWithMapping(servletHolder, "/*");
|
proxyHandler.addServletWithMapping(servletHolder, "/*");
|
||||||
|
|
|
@ -187,8 +187,7 @@ public class HistoryR4Test {
|
||||||
|
|
||||||
ServletHandler proxyHandler = new ServletHandler();
|
ServletHandler proxyHandler = new ServletHandler();
|
||||||
RestfulServer servlet = new RestfulServer(ourCtx);
|
RestfulServer servlet = new RestfulServer(ourCtx);
|
||||||
servlet.setPlainProviders(plainProvider);
|
servlet.registerProviders(plainProvider, patientProvider);
|
||||||
servlet.setResourceProviders(patientProvider);
|
|
||||||
ServletHolder servletHolder = new ServletHolder(servlet);
|
ServletHolder servletHolder = new ServletHolder(servlet);
|
||||||
proxyHandler.addServletWithMapping(servletHolder, "/*");
|
proxyHandler.addServletWithMapping(servletHolder, "/*");
|
||||||
ourServer.setHandler(proxyHandler);
|
ourServer.setHandler(proxyHandler);
|
||||||
|
|
|
@ -313,6 +313,13 @@
|
||||||
HAPI FHIR will now log the Git revision when it first starts up (on the ame line as the version number
|
HAPI FHIR will now log the Git revision when it first starts up (on the ame line as the version number
|
||||||
that it already logs).
|
that it already logs).
|
||||||
</action>
|
</action>
|
||||||
|
<action type="fix">
|
||||||
|
When fetching a page of search results, if a page offset beyond the total number
|
||||||
|
of available result was requested, a single result was still returned (e.g.
|
||||||
|
requesting a page beginning at index 1000 when there are only 10 results would
|
||||||
|
result in the 10th result being returned). This will now result in an empty
|
||||||
|
response Bundle as would be expected.
|
||||||
|
</action>
|
||||||
</release>
|
</release>
|
||||||
<release version="3.6.0" date="2018-11-12" description="Food">
|
<release version="3.6.0" date="2018-11-12" description="Food">
|
||||||
<action type="add">
|
<action type="add">
|
||||||
|
|
Loading…
Reference in New Issue