🔥 HAPI FHIR - Java API for HL7 FHIR Clients and Servers
Go to file
Tuomo Ala-Vannesluoma 1435540320
Improve synchronous searching by providing offset & limit support (#2059)
* Improve synchronous searching by providing offset & limit support

Add support for offset querying which leverages paging at the query level
Add configuration for search default page size and search maximum page size
If using offset, always use synchronous searching to avoid extra database insert/update etc.
When using offset, only calculate count if it's wanted
Validate params closer to provider and handle size if search returned "all" (or last)

* Review and test fixes

Comment _offset as nonstandard parameter
Make synchronous search always count the total value (for now)
Fix issue with FulltextSearchSvcImpl mutating param map
Dirty fix for BaseJpaTest (not sure how to fix the including resources issue)

* Remove temporary count querying fix for synchronous loads

* Fix offsetting of everything operations, do not drop zero offset

* Fix jpa test default and maximum page size, add some fixmes to tests before resolved

* Ignore one failing test, fix others

* Fix Dereferenced variable may be null

* Fix everything paging in R4 by adding DISTINCT if synchronous load is used

Also fix assertion of size when hitting fetchSizeDefaultMaximum

* Add documentation about offset annotation and paging

Co-authored-by: James Agnew <jamesagnew@gmail.com>
2020-10-12 17:42:03 -04:00
.github Create codeql-analysis.yml 2020-06-30 11:58:29 -04:00
.mvn/wrapper Add maven wrapper for easier and more coherent builds https://www.baeldung.com/maven-wrapper 2018-11-15 15:36:57 +02:00
example-projects Fix TestpageOverlay XSS Vulnerability (#2027) 2020-08-09 07:06:11 -04:00
hapi-deployable-pom Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-android Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-android-realm Work on JPA 2017-02-02 06:23:28 -05:00
hapi-fhir-base Improve synchronous searching by providing offset & limit support (#2059) 2020-10-12 17:42:03 -04:00
hapi-fhir-bom Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-cli Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-client Improve synchronous searching by providing offset & limit support (#2059) 2020-10-12 17:42:03 -04:00
hapi-fhir-client-okhttp Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-converter Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-dist Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-docs Improve synchronous searching by providing offset & limit support (#2059) 2020-10-12 17:42:03 -04:00
hapi-fhir-elasticsearch-6 rollback elastic 2020-10-06 19:04:10 -04:00
hapi-fhir-igpacks Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-jacoco Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-jaxrsserver-base Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-jaxrsserver-example Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-jpaserver-api Improve synchronous searching by providing offset & limit support (#2059) 2020-10-12 17:42:03 -04:00
hapi-fhir-jpaserver-base Improve synchronous searching by providing offset & limit support (#2059) 2020-10-12 17:42:03 -04:00
hapi-fhir-jpaserver-batch Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-jpaserver-empi Rewrite deferred interceptor callback framework (#2121) 2020-10-07 20:08:18 -04:00
hapi-fhir-jpaserver-migrate Fixes to terminology loader. 2020-09-25 21:43:15 -04:00
hapi-fhir-jpaserver-model Add to date equals comparison 2020-10-11 15:35:28 -04:00
hapi-fhir-jpaserver-searchparam Improve synchronous searching by providing offset & limit support (#2059) 2020-10-12 17:42:03 -04:00
hapi-fhir-jpaserver-subscription Refactor to use concrete class instead of parent 2020-09-15 15:27:21 -04:00
hapi-fhir-jpaserver-test-utilities Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-jpaserver-uhnfhirtest Set reference validation policy on hapi.fhir.org 2020-09-08 05:51:10 -04:00
hapi-fhir-narrativegenerator Migrate to JUnit5 (#1952) 2020-07-04 18:28:16 -04:00
hapi-fhir-oauth2 Migrate to JUnit5 (#1952) 2020-07-04 18:28:16 -04:00
hapi-fhir-server Improve synchronous searching by providing offset & limit support (#2059) 2020-10-12 17:42:03 -04:00
hapi-fhir-server-empi Add license headers 2020-09-30 05:42:09 -04:00
hapi-fhir-spring-boot Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-structures-dstu Migrate to JUnit5 (#1952) 2020-07-04 18:28:16 -04:00
hapi-fhir-structures-dstu2 Allow HTTP 204 response to transaction (#2051) 2020-08-21 21:00:55 -04:00
hapi-fhir-structures-dstu2.1 Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-structures-dstu3 Add test 2020-08-13 05:45:49 -04:00
hapi-fhir-structures-hl7org-dstu2 Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-structures-r4 RDF Support in HAPI FHIR (#2118) 2020-10-12 17:16:00 -04:00
hapi-fhir-structures-r5 Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-test-utilities One more test data creator 2020-09-11 11:50:39 -04:00
hapi-fhir-testpage-interceptor remove .settings .project .classpath file of eclipse 2017-01-28 17:13:47 +01:00
hapi-fhir-testpage-overlay Dependency version bump (#2074) 2020-09-14 08:42:28 -04:00
hapi-fhir-validation Replaced references to SystemIdentifier with SystemUrlAndVersion. 2020-09-30 22:04:08 -04:00
hapi-fhir-validation-resources-dstu2 Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-validation-resources-dstu2.1 Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-validation-resources-dstu3 Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-validation-resources-r4 Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-fhir-validation-resources-r5 Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
hapi-tinder-plugin Improve synchronous searching by providing offset & limit support (#2059) 2020-10-12 17:42:03 -04:00
hapi-tinder-test Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
osgi Migrate to JUnit5 (#1952) 2020-07-04 18:28:16 -04:00
restful-server-example Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
src Validation api changes (#1719) 2020-03-17 13:28:59 -04:00
tests Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
vagrant Update old removed Chef syntax in Vagrant provision 2019-01-31 05:17:22 -05:00
.editorconfig Multitenancy Ticket 2 - #1813 (#1821) 2020-05-05 15:12:15 -04:00
.gitignore Add Spring Boot Starter 2017-09-30 11:20:00 -04:00
HELPWANTED.md Work on custom params 2017-02-02 20:37:58 -05:00
LICENSE.txt Add license and notice files 2015-03-25 22:32:32 -04:00
LOINC_NOTES.txt More work on loinc 2018-03-19 08:51:02 -04:00
NOTICE.txt Add license and notice files 2015-03-25 22:32:32 -04:00
README.md Fix #2042 - Outdated CI link on website 2020-08-16 21:03:27 -04:00
azure-pipelines.yml Avoid version conflicts on current writes (#1971) 2020-07-13 08:51:13 -04:00
check_for_maven_updates.sh Fix up examples 2014-09-03 18:03:44 -04:00
lgtm.yml Correct bugs reported by LGTM (#1533) 2019-10-09 19:26:57 -05:00
list_releases.sh Implement handleException on the server interceptor framework, as well 2014-11-07 14:26:59 -05:00
mvnw Add maven wrapper for easier and more coherent builds https://www.baeldung.com/maven-wrapper 2018-11-15 15:36:57 +02:00
mvnw.cmd Use windows line-endings in mvnw.cmd 2019-01-11 17:11:53 +02:00
pom.xml Initial credit for #2118 2020-10-12 17:19:15 -04:00
sync.sh Update resource defs 2015-12-01 18:35:24 -05:00
sync_dstu3.sh Merge branch 'master' of github.com:jamesagnew/hapi-fhir 2016-07-01 14:31:25 -04:00
sync_ri.sh Bump to 1.0.2 FHIR definitions 2015-11-15 12:22:56 -05:00
sync_ri3.fish Bring DSTU3 structs up to FHIR R3 2017-04-18 07:48:38 -04:00
sync_ri3.sh Syn RI - Build still failing :( 2016-05-28 12:53:59 -04:00
sync_ri4.sh Squashed commit of the following: 2018-12-27 17:58:47 -05:00
sync_ri5.sh Trigger build 2019-10-30 11:35:57 -04:00
sync_ri21.sh Update model and definitions to latest definitions 2016-01-30 11:08:16 -05:00
tmp2.txt Test fix 2019-08-29 21:02:19 -04:00
update_version.sh Force another travis build 2015-08-05 10:38:38 -04:00

README.md

HAPI FHIR

HAPI FHIR - Java API for HL7 FHIR Clients and Servers

Build Status codecov Maven Central License

Complete project documentation is available here: http://hapifhir.io

A demonstration of this project is available here: http://hapi.fhir.org/

This project is Open Source, licensed under the Apache Software License 2.0.

Please see this wiki page for information on where to get help with HAPI FHIR. Please see Smile CDR for information on commercial support.