Commit Graph

466 Commits

Author SHA1 Message Date
Nick Goupinets d63c580e82 Merge remote-tracking branch 'origin/master' into gg_20201105-remove-person-references 2020-12-01 13:18:42 -05:00
James Agnew c309737166
Allow reading from multiple partitions (#2198)
* Partitioning rework

* Work on partition improvements

* Partition updates

* Work on partitiong

* Test fixes

* Add docs

* Add changelog

* Resolve FIXME

* Test fixes

* Test fixes

* Test fixes

* Compile fix

* Fix compile error

* Test fix

* Test fixes
2020-11-30 17:59:52 -05:00
Nick Goupinets 8a7dc4e80b EMPI to MDM 2020-11-27 15:12:21 -05:00
Tadgh 953b662827 Merge branch '2161-refactor-empi' into gg_20201105-remove-person-references 2020-11-19 14:24:51 -05:00
Tadgh 3209faf2fb Rename package and module 2020-11-18 21:55:29 -05:00
jamesagnew 0c31741eec Version bump to 5.3.0-SNAPSHOT 2020-11-18 14:52:43 -05:00
jamesagnew 4d441ad7f2 Version bump to 5.2.0 2020-11-18 06:30:20 -05:00
Tadgh c0bef70e12 Add optional resource type to EMPI provider method 2020-11-13 16:42:09 -05:00
Tadgh 331acc1b55 Attempting to perform MDM on a new resource type 2020-11-11 14:15:35 -05:00
Tadgh ffbe35e2cd Partial refactor of Provider 2020-11-10 12:26:20 -05:00
Tadgh a67b3a8298 Fixed possible-matcher 2020-11-10 10:46:43 -05:00
James Agnew 8000d2d0cf
SQL Join Rework (#2086)
* switched to adding annotations.  Just did a test with Token, but the sql looks clean.

* switched to adding annotations.  Just did a test with Token, but the sql looks clean.

* added the other six index links

* trying different annotations

* Start testing

* Update resources on package install

* Add changelog

* Join rework

* CLean up SQL builder

* Add docs

* SP rework

* Join work

* Work on params

* Work on refactor

* Work on chains

* Work on joins

* Rework queries

* Work on queries

* Many more tests passing

* Refs test

* Work on sorting

* Work on tests

* More joins work

* Work on tests

* Work on queries

* Tests passing

* More test fixes

* Test fixes

* Work on SQL

* Tests passing

* Add some tests

* Add some tests

* License headers

* Use entity manager to get datasourcd

* One more fix

* Model cleanup

* Ongoing work

* Fixes

* Fixes

* Work on joins

* Ongoing fixes

* Merge conflict

* Cleanup

* clean up unused fields

* Work on join

* COmpile fix

* Rework querying

* Update hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/config/HibernateDialectProvider.java

Co-authored-by: Ken Stevens <khstevens@gmail.com>

* Address review comments

* Resolve fixmes

* Test fix

* Test fixes

* Test fix

Co-authored-by: Ken Stevens <khstevens@gmail.com>
2020-10-26 05:24:26 -04:00
Ken Stevens 3b91873b7c
delete expunge (#2131)
Added delete _expunge=true
2020-10-20 17:21:50 -04:00
jamesagnew 7903b2b577 License headers 2020-10-13 11:43:09 -04:00
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
Joel Schneider (NMDP) a32397d993
add CorsInterceptorTest (#2126)
* add simple CorsInterceptorTest

* add relevant exposedHeaders to custom CorsConfiguration

* use SLF4J Logger.info() instead of System.err.println(), and run the test assertions first

* Add logback-classic dependency to test scope, to enable SLF4J logging within unit tests.  (SLF4J defaults to NOP binding if no binding found on classpath, see also http://www.slf4j.org/codes.html#StaticLoggerBinder)
2020-10-12 17:38:31 -04:00
Josh Collins 844624b6dd
RDF Support in HAPI FHIR (#2118)
* RDF Support in HAPI FHIR

* Ability to read/write FHIR resources as RDF (turtle serialization)
* Test suite to test roundtrip-ability of RDF parser

* Add null checks to appease LGTM

* Correct null check logic
2020-10-12 17:16:00 -04:00
James Agnew d2aae361bf
Rewrite deferred interceptor callback framework (#2121)
* Rewrite deferred interceptor callback framework

* Improve deferred handling

* Null guard

* Test fix
2020-10-07 20:08:18 -04:00
jamesagnew edbd089092 Docs update 2020-10-06 05:52:22 -04:00
Tadgh 66a0115340 Missed a space 2020-09-30 11:13:40 -04:00
Tadgh ca52268249 Rename accessors, fix whitespace 2020-09-30 11:11:56 -04:00
Ken Stevens 09d09233ff
empi bugfixes and enhancements (#2104) 2020-09-29 17:27:43 -04:00
James Agnew 072e63be5a
Avoid a crash on double date chains (#2097)
* Avoid a crash on double date chains

* Add changelog

* Address coverage warning
2020-09-21 15:43:07 -04:00
Tadgh 45775c8660 Reuse constant 2020-09-16 15:29:04 -04:00
Tadgh ddfac72e8d Clean spacing 2020-09-16 15:27:03 -04:00
Tadgh 9d3a97a46f Default for int 2020-09-16 15:24:09 -04:00
Tadgh 558f7a5ccf Minor cleanup 2020-09-16 15:21:49 -04:00
Tadgh 4c5051a5d9 More refactor for custom headers and top level attributes 2020-09-16 15:05:44 -04:00
Tadgh 666113696b add attributes to HapiHeaders. Turns out deserialization makes a best guess, and doesnt respect types in Map<String,Object> 2020-09-16 14:06:54 -04:00
Tadgh cdc195bd0b Change to use long type for failure timestamps 2020-09-16 13:13:43 -04:00
Tadgh 74bba9dbcc Rename to ResourceOperationMessage 2020-09-15 18:57:55 -04:00
Tadgh ea64bea1b0 Refactor to use concrete class instead of parent 2020-09-15 15:27:21 -04:00
Tadgh a9fb849d49 Moved more into parent class, added javadocs for transactionId 2020-09-14 16:44:50 -04:00
Tadgh 6e0ef035e9 Rename constants. Remove dead comment 2020-09-14 15:35:58 -04:00
Tadgh f20c42a8bd Remove license claims, remove dead class 2020-09-14 13:48:44 -04:00
Tadgh 9a09a8abf3 Update todos 2020-09-14 13:41:11 -04:00
Tadgh 3e324355f2 Add javadocs 2020-09-14 13:28:36 -04:00
Tadgh 2e1f2a662a Move class to top level, add tests 2020-09-14 13:20:01 -04:00
Tadgh c3ddf59d6f Add HapiMessageHeaders to BaseJsonMessage class 2020-09-14 13:02:32 -04:00
Tadgh 28a9a53917 Rework to keep several things in subscription 2020-09-10 16:05:56 -04:00
Tadgh 2229233749 Move subscription models to legacy, except the ones that are subscription specific 2020-09-09 15:58:41 -04:00
jamesagnew 190f0ccb22 Add test for #2063 2020-09-01 14:12:57 -04:00
jamesagnew 92718c7ef2 Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
jamesagnew 5fb7bd5156 Version bump to 5.1.0 2020-08-11 17:43:24 -04:00
James Agnew 63ef2ce006
Fix #2012 - Always filter total from search results when consent interceptor in use (#2020)
* consent bug test

* Fix #2012 - Always filter total from search results when consent
interceptor in use

* Add changelog

* Address coverage issues

Co-authored-by: Jens Kristian Villadsen <46567685+jvitrifork@users.noreply.github.com>
Co-authored-by: jvi <jvi@trifork.com>
2020-08-07 09:16:02 -04:00
Tadgh 3b9f9e6cc3 Rename operation 2020-08-03 21:35:12 -07:00
Tadgh da30772a01 Remove dead methods, constants, and add a javadoc 2020-08-01 13:19:52 -07:00
Tadgh e67ee36492 Renamed and modified reset constant for better naming 2020-08-01 11:36:14 -07:00
Tadgh 90e96c1fb4 Fix bug caused by Persons with >1 historical version 2020-07-23 14:35:28 -07:00
Tadgh 9491a3e499 Add DSTU3 clear operation 2020-07-23 09:37:11 -07:00
Tadgh de9621602b Update provider and create test skeletons for empi batch run 2020-07-18 18:18:21 -07:00
Tadgh 62b5221c3f Move Empi Batch work to the BaseHapiResourceProvider, allowing manual EMPI runs on a server/type/ID basis. 2020-07-18 13:36:14 -07:00
Tadgh 6bb92717f5 Merge branch 'master' into batch-empi-job 2020-07-16 11:00:32 -07:00
Tadgh 31e9f140ad Fix operation name. Remove unnecessary beans 2020-07-16 09:48:58 -07:00
Ibrohim Kholilul Islam 5a79304893
Implement GraphQLQueryBodyParameter and GraphQLQueryBody annotation (#1896)
* implement GraphQLQueryBodyParameter and GraphQLQueryBody annotation

* GraphQLQueryBodyParameter to recognize application/graphql

* fix 500 error on method without @GraphQLQueryBody

* refactor to processGraphQlGetRequest and processGraphQlPostRequest

* add testGraphPostContentTypeJson and testGraphPostContentTypeGraphql to GraphQLR4RawTest

* fix imports
2020-07-16 09:25:26 -04:00
Tadgh c3b89b4ad5 Get basic tests running 2020-07-09 15:56:41 -07:00
Tadgh f82a53e6f9 Merge branch 'master' into batch-empi-job 2020-07-06 13:12:20 -07:00
James Agnew f356c7c385
Migrate to JUnit5 (#1952)
* Work on junit

* Work on junit 5

* Work on junit 5

* Bump errorprone vcersion

* Work on tests

* Junit 5 tweaks

* Fixes

* Work on tests

* Work on junit5

* Work on tests

* Test fixes

* Work on junit5

* Test work

* Get junit5 working

* Test fix

* Work on tests

* WOrk on tests

* Work on tests

* fixes

* Compile fix

* One more tweak

* Compile fix

* Add changelog

* Fix compile error

* Compile fix
2020-07-04 18:28:16 -04:00
Tadgh 25d8668f55 Add Basic provider method, skeleton of tests 2020-07-03 15:21:32 -07:00
James Agnew fa4bbe3685
Allow search criteria as subscription delivery mechanism (#1951)
* Terser should create correct Enumeration on create

* Start work

* Work on subscriptions

* Work on seed bundles

* Bundle transmission

* Add changelog

* Test fix

* Fix LGTM warning
2020-06-30 14:29:09 -04:00
jamesagnew 34c68e15af Add license headers 2020-06-14 19:10:36 -04:00
Ken Stevens d164e2d450
Empi 28 matchers (#1918)
* adding matchers

* reorganize resource matching api

* added precision sensitive date matcher

* stricter rules validation

* validate thresholds

* validate paths.  with FIXMES

* validate searchparams

* fix merge compile error

* add soundex, validate no duplicate names

* add normalize substring

* add exact field to matcher

* EXACT -> STRING, exact=true

* cleanup test method

* match test passes with fixmes

* fixed vector matching

* fixed vector matching

* updating documentation and fixing tests

* updated rules documentation with latest matchers

* updated rules documentation with latest matchers

* created eid page

* eid documentation

* pre-review cleanup

* clean up beans

* disentangling beans

* checkstyle

* noop to trigger CI

* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa_empi/empi.md

Co-authored-by: Tadgh <tadgh@cs.toronto.edu>

* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa_empi/empi.md

Co-authored-by: Tadgh <tadgh@cs.toronto.edu>

* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa_empi/empi.md

Co-authored-by: Tadgh <tadgh@cs.toronto.edu>

* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa_empi/empi_details.md

Co-authored-by: Tadgh <tadgh@cs.toronto.edu>

* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa_empi/empi_details.md

Co-authored-by: Tadgh <tadgh@cs.toronto.edu>

* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa_empi/empi_details.md

Co-authored-by: Tadgh <tadgh@cs.toronto.edu>

* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa_empi/empi_details.md

Co-authored-by: Tadgh <tadgh@cs.toronto.edu>

* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa_empi/empi_rules.md

Co-authored-by: Tadgh <tadgh@cs.toronto.edu>

* review feedback

* review feedback

* review feedback

* review feedback

* review feedback

Co-authored-by: Tadgh <tadgh@cs.toronto.edu>
2020-06-14 17:15:56 -04:00
James Agnew b8da4f0140
Add package support (#1911)
* Begin rework of package management

* Work on NPM

* Work on package management

* Work on NPM

* NPM rework

* Work on NPM

* NPM package rework

* Updates

* Updates

* Add license

* Work on package server

* Work on package importing

* Work on package management

* Package rework

* Work on packages

* Work on package manager

* Work on pkgs

* NPM work

* NPM rework

* Work on package cache

* Work on NPM

* Work on NPM

* Package fixes

* Add tests

* Tweaks

* Test fixes

* Add changelog

* Avoid snapshot dep
2020-06-10 05:30:20 -04:00
Ken Stevens 558f419955
Empi 54 not duplicate (#1900)
add operation to unduplicate persons
2020-06-05 12:21:09 -04:00
Ken Stevens 33753881e2
Empi 55 deactivate merged (#1883) 2020-06-03 13:12:01 -04:00
James Agnew 86ef0ec0e2
Correct transaction processing in multitenant server (#1884)
* Correct transaction processing in multitenant server

* # d codethe npm registry for updates every day (weekdays)
2020-06-03 10:37:47 -04:00
James Agnew c374383b37
Allow AuthorizationInterceptor to properly authorize GraphQL statements (#1864)
* Allow AuthorizationInterceptor to properly authorize GraphQL statements

* Add changelog
2020-05-22 20:40:37 -04:00
Tadgh d1b963321a
MVP EMPI implementation (#1857)
EMPI Initial Implementation (still plenty of known gaps)
2020-05-22 15:03:20 -04:00
James Agnew 63ff0ede9c
Make diff operation work securely (#1859)
* Make diff operation work securely

* Build tweak

* FIx tests
2020-05-21 19:20:48 -04:00
James Agnew ce5ade53d9
Fix #1855 - StructureDefinition search not working (#1858) 2020-05-21 09:35:37 -04:00
James Agnew 5b2181a563
Implement FHIR Patch (#1850)
* Start working on FHIRPatch

* More work on fhirpatch

* Work on FHIR Patch

* Add patch

* Test fixes

* Test fixes

* Get tests fixed

* Chnage to trigger a build

* Compile fix

* Dependency version fixes

* Test fix

* COmpile fix

* Try to fix build

* Test fix attempt

* Another build attempt

* Another build tweak

* Cleanup
2020-05-20 19:43:55 -04:00
jamesagnew cc92bd7b07 Revert "Start working on FHIRPatch"
This reverts commit b3f6e7d521.
2020-05-17 11:56:50 -04:00
jamesagnew b3f6e7d521 Start working on FHIRPatch 2020-05-17 11:44:06 -04:00
jamesagnew 52c8e3551c Version bump to 5.1.0-SNAPSHOT 2020-05-15 14:43:32 -04:00
jamesagnew fe0e07a313 Bump to 5.0.1 2020-05-15 05:47:01 -04:00
jamesagnew 1d13e29ac0 Version bump to 5.1.0-SNAPSHOT 2020-05-12 20:04:20 -04:00
jamesagnew d631ecff4a Prepare for 5.0.0 2020-05-12 11:49:18 -04:00
jamesagnew 78fa296f1f License header updates 2020-05-07 19:37:16 -04:00
James Agnew 6cc07b6689
Make binary storage work for bulk export (#1836)
* Make binary storage work for bulk export

* Add changelog

* Build fixes

* Test fix

* Test fix

* Test fix
2020-05-07 19:20:22 -04:00
James Agnew a77aa6a28e
Multitenancy Ticket 2 - #1813 (#1821)
* Work on multitenancy

* Second ticket started

* More multitenancy work

* Work on tenancy security

* Work on multitenancy

* Test fixes

* Add docs

* cs tweak

* Multitenancy fixes

* Add debug log

* Fix build

* Add headers

* Add partition selection interceptor hook

* Update hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/api/Constants.java

Co-authored-by: Ken Stevens <khstevens@gmail.com>

* Account for review comments

* Resolve FIXMES

* Work on tests

* Test fixes

* A bit more cleanup

* Work on multitenancy

* Update hapi-fhir-docs/src/main/java/ca/uhn/hapi/fhir/docs/ClientExamples.java

Co-authored-by: Ken Stevens <khstevens@gmail.com>

* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/client/examples.md

Co-authored-by: Ken Stevens <khstevens@gmail.com>

* Address review comments

* Allow disabling text modifier indexing

* Add changelog

* Docs fixes

* Address review comment

* Resolve merge conflicts

* Merge master

* Compile fix

* Test fix

Co-authored-by: Ken Stevens <khstevens@gmail.com>
2020-05-05 15:12:15 -04:00
gematik FuE 9ace4889bc
enhance constructor, so an existing InterceptorService could be passed in (#1749) 2020-05-01 07:36:45 -04:00
jamesagnew e439891ea2 Add test 2020-04-29 15:21:54 -04:00
Thomas Papke ea817de68a
Extend support for additional forwared headers x-forwarded-port and (#1788)
x-forwarded-prefix
2020-04-29 09:01:39 -04:00
jamesagnew 6226381595 Merge branch 'master' into ja_20200206_multitenancy 2020-04-21 20:54:56 -04:00
jamesagnew c7de85339c Work on review comments 2020-04-21 20:18:06 -04:00
James Agnew c716216b34
Adjust return type for fluent delete() operation (#1805)
* Add cascading delete to client

* Add changelog

* Client delete should return MethodOutcome

* Rerturn more appropriate type for delete operations

* Refactor cascade detection to be reusable
2020-04-21 15:23:11 -04:00
jamesagnew 4abebf2247 Docs cleanup 2020-04-21 09:28:52 -04:00
jamesagnew bbab016ca6 Rename config 2020-04-20 12:38:04 -04:00
jamesagnew 7248b4e18e Finish docs 2020-04-20 11:02:27 -04:00
jamesagnew e0b419354f Bump up hamcrest version and force the use of the latest version 2020-04-17 13:59:22 -04:00
jamesagnew 68f437177d Add license header 2020-04-17 09:49:03 -04:00
James Agnew 497757501b
Improve search method binding priority (#1802)
* Work on search method binding priority

* Work on method priority

* Work on binding priority

* Test fixes

* Add changelog

* Test fixes

* compile fix

* One more comple fix

* Test cleanup

* Test fix
2020-04-17 09:28:33 -04:00
James Agnew 8cdc3a72ce
Fix #1794 - Client ID and Server ID mode clash (#1795)
* Fix #1794 - Client ID and Server ID mode clash

* Try to track down intermittent test failure
2020-04-09 09:31:13 -04:00
jamesagnew b78205c218 Ongoing cleanup 2020-04-06 17:00:45 -04:00
jamesagnew 40d0c27ae3 Work on subscription cleanup 2020-04-05 18:43:27 -04:00
jamesagnew e1142f4043 Start work on subscription cleanup 2020-04-02 05:31:12 -04:00
Jafer Khan 0021561fb1 Raise an error on including invalid query string parameter(s) in read operations 2020-03-31 20:05:05 -04:00
James Agnew fe48313100
Add response size capturing interceptor (#1776)
* Work on capturing repsonse sizes

* Interceptor complete

* Add changelog

* Test fix
2020-03-30 11:24:10 -04:00
James Agnew eaaddaf7ca
Fix #1763 - Include bundle type in summary=count responses (#1773)
* Fix #1763 - Include bundle type in summary=count responses

* Test fix
2020-03-24 16:24:41 -04:00
jamesagnew 14316147c5 Resolve some docs issues 2020-03-23 10:34:12 -04:00