Commit Graph

318 Commits

Author SHA1 Message Date
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
jamesagnew b044d05332 Add a disabled test 2020-05-20 17:26:24 -04:00
James Agnew 0c13a65871
Bump to latest Core version (#1841)
* Start working on bumping core

* Work on tests

* Work on tests

* Bump core definitions

* Bump R5 defs

* Tweak changelog

* Test fix
2020-05-11 12:37:16 -04:00
James Agnew 9d8bd0d51e
Bump R4 definitions to 4.0.1 (#1837)
* Bump R4 definitions to 4.0.1

* Add changelog

* Test fixes
2020-05-08 19:34:13 -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
James Agnew 3d5a8bb3f8
Add UCUM support (#1824)
* Add UCUM support

* Add changelog

* Some cleanup

* Test fix

* Add flywayDB callback

* Add hooks to schema migrator
2020-04-30 15:22:41 -04:00
jamesagnew 371cda280a Test fix 2020-04-23 08:50:22 -04:00
jamesagnew 4978a5de21 Add test 2020-04-23 05:30:08 -04:00
James Agnew 1a3a40b3c9
Merge pull request #1796 from jamesagnew/ja_20200409_report_json_error_attr_name
Improve error message reporting for invalid json - Fix #1793
2020-04-09 15:11:57 -04:00
jamesagnew ac29073b72 Test fixes 2020-04-09 14:22:04 -04:00
James Agnew fdf6633145
Add validation for currencies to validator (#1797)
* Add validation for currencies to validator

* Add changelog
2020-04-09 11:39:30 -04:00
jamesagnew 300c4e66ba Fix broken test 2020-03-23 19:09:03 -04:00
James Agnew c2ae5a8326
Add FHIRPath evaluation interceptor (#1769)
* Add FHIRPath evaluation interceptor

* Add changelog
2020-03-22 12:57:24 -04:00
James Agnew 22413911bf
Validation api changes (#1719)
* Validation enhancements

* Work on validation api reworking

* Keep working on validation API

* Keep working on new term API

* Work on validation api

* Ongoing work on validation

* Work on integrating validation

* Work on validation API

* Add to validation API

* Work on validation

* Work on API

* Work on validation

* Work on validation API

* Work on validation API

* Work on validation api

* Work on validation API

* Work on validation api

* Validation API changes

* Work on API

* More work on validationo API

* Work on validation API

* FIxes

* WOrk on validation api

* Work on validation API

* Tests passing!

* More cleanup

* More validation API changes

* Fix intermittent test failure

* Package reorg

* Validation API work

* Work on doocumentation

* Work on API

* More work on new validation API

* Fix errorprone-reported error

* Test fixes

* Documentation updates

* Documentation tweaks

* Work on API

* Bean name adjustments

* Build fixes

* Some test fixes
2020-03-17 13:28:59 -04:00
James Agnew 3c2c1dab2e
Error on missing profile validation (#1742)
* Error on missing profile validation

* Add changelog

* Test fixes
2020-03-03 08:28:26 -05:00
jamesagnew 13fbdf418f Add ignored test for #1740 2020-03-03 05:22:16 -05:00
James Agnew 60f16dd91d
Update to 4.3.x core JAR (#1715)
* Added optionality for adding resource fetcher

* Added coverage that proves invocations

* Bumped version of fhir.core to latest version. Added wrapping of AssumeValidRestReferences

* Added optionality for adding resource fetcher

* Added coverage that proves invocations

* Bumped version of fhir.core to latest version. Added wrapping of AssumeValidRestReferences

* Start working on converter

* Account for compile errors

* Test fix

* Work no validator

* Work on getting core working

* Add some test coverage

* Many test fixes

Co-authored-by: Jens Kristian Villadsen <46567685+jvitrifork@users.noreply.github.com>
2020-02-17 14:28:29 -05:00
James Agnew c5c1e3196b Resolve FIXMEs (#1705)
* Resolve FIXMEs

* Test fixes

* Test fixes

* Clean up unused code

* Add some test coverage

* Test fix

* Test fix

* Avoid intermittent
2020-02-09 08:39:46 -05:00
James Agnew 0718f6b52a
Allow schemalocation in XML validation (#1677)
* Allow schemaLocation declaration in XML when validating

* Add fix for #1676
2020-01-21 07:14:16 +09:00
James Agnew 1390ea3c06
Update FHIR R5 structures to 4.2.0 version (#1665)
* Work on upgrading core

* Work on R5 updates

* Work on core updates

* Test fix

* Update model version properties file for R5

* Bump core version

* Test fixes

* Add 4.2.0-SNAPSHOT version to versions page in docs
2020-01-14 10:27:01 +08:00
James Agnew d050b7b3c2 Add changelog 2019-12-19 15:03:30 -05:00
James Agnew 28fba9734b Test fix 2019-12-19 14:58:32 -05:00
James Agnew 0e1f03b999 Work on validation 2019-12-19 14:41:35 -05:00
James Agnew 86bd9a28fe
Fix to valueset expansion logic (#1613)
* Fox to valueset expansion logic

* Work on docs

* Docs tweaks

* Docs tweaks

* Fix test

* Remove unused class

* Add changelog
2019-12-01 21:21:19 -05:00
James Agnew 3984ea24b0 Add validaton test 2019-11-26 09:37:52 -03:00
James Agnew aa0301084b
Don't succeed validation on unknown codesystem (#1575)
* Don't succeed validation on unknown codesystem

* Test fixes

* Work on error messages

* Work on code validation API

* work on tests

* Work on validation

* Test fix

* Update DSTU3 validation reources

* Upgrade structures

* Test fixes
2019-11-12 14:35:49 -05:00
James Agnew b90f285218 Merge branch 'master' into ja_20190928_rationalize_search_param_extractor 2019-10-30 08:41:14 -04:00
James Agnew 84803a02ef
Preserve line numbers in XML validation (#1567)
* Preserve line numbers in XML validation

* Test fixes
2019-10-29 15:54:49 -04:00
James Agnew 817f9ae36e Merge branch 'master' into ja_20190928_rationalize_search_param_extractor 2019-10-27 17:25:20 -04:00
James Agnew df4376606d
Validation cleanup (#1561)
* Validation cleanup

* Test fix

* Fix build

* Test tweaks
2019-10-24 13:09:18 -05:00
John Poth 969174136e Rename org.hl7.fhir.convertors package as it's already used 2019-10-24 12:23:38 -05:00
James Agnew a71d969ba1 Add line numbers to validation failures 2019-10-18 14:10:47 -04:00
James Agnew 50af4bfb19 Merge latest changes 2019-10-18 13:36:26 -04:00
James Agnew b2f68fd6ff Add test for #848 2019-10-17 19:42:29 -04:00
James Agnew 0971998f57 Fix #848 - Pass raw JSON to the validator 2019-10-17 11:28:48 -04:00
James Agnew 12a74e6cbc
Fix term uploads and validate against valueset recalculation (#1540)
* Start refactoring terminology delta operations

* Work on delta operations

* Work on concept saving

* Split term services into smaller services

* Work on term delta operations

* Work on term svcs

* Work on term operations

* More work on delta uploader

* Add a test

* Wrk on term service

* Fix compile error

* Some refactoring

* Test fix

* Test fix

* Test fixes

* Test fix

* Test fixes

* Test fixes

* Work on delta

* Work on tests#

* Test fixes

* Improve resequencing logic

* Build test

* More testing

* More build testing

* More work on tests

* CHange test logging

* Fix term service PID issue

* Update src/changes/changes.xml

Co-Authored-By: Diederik Muylwyk <diederik.muylwyk@gmail.com>

* Address review comment

* Some cleanup

* Test fix

* Fix some tests

* Work on upload command

* Test fixes

* Work on validation fixes

* Work on validation against pre-expansion

* Work on direct validation

* A bit of cleanup

* Add some javadoc

* Force another build

* Test fixes

* Fix tests

* Fix tests
2019-10-15 21:31:29 -04:00
James Agnew 2725797610
Implement Terminology Delta Operations (#1536)
* Start refactoring terminology delta operations

* Work on delta operations

* Work on concept saving

* Split term services into smaller services

* Work on term delta operations

* Work on term svcs

* Work on term operations

* More work on delta uploader

* Add a test

* Wrk on term service

* Fix compile error

* Some refactoring

* Test fix

* Test fix

* Test fixes

* Test fix

* Test fixes

* Test fixes

* Work on delta

* Work on tests#

* Test fixes

* Improve resequencing logic

* Build test

* More testing

* More build testing

* More work on tests

* CHange test logging

* Fix term service PID issue

* Update src/changes/changes.xml

Co-Authored-By: Diederik Muylwyk <diederik.muylwyk@gmail.com>

* Address review comment

* Some cleanup

* Test fix

* Fix some tests

* Test fixes
2019-10-14 19:14:41 -04:00
James Agnew eb0a657b62 Fix intermittent test failure 2019-10-08 20:45:12 -05:00
James Agnew 1f1b94a566
Resolve XXE issue in validator (#1530)
* Resolve XXE issue in validator

* Ensure that we're blocking XXE events into validator XML parser

* A bit of cleanup

* Add an LGTM config

* Add one more fix
2019-10-08 13:06:03 -05:00
Clayton Bodendein 08825a81d9 Add missing @Override annotations
Added missing @Override annotations so that if/when methods in superclasses change
there will be a compile-time error if subclasses haven't been changed accordingly.

This was done using IntelliJ IDEA's "Missing @Override annotation" inspection.
2019-10-02 05:45:59 -04:00
James Agnew cc0df9850c Make sure the validator can get at codes defined in notpresent
codesystems
2019-09-26 14:44:09 -04:00
James Agnew 004f42cdcc Clean up docs 2019-09-23 15:56:02 -04:00
James Agnew 2cfa08f179 Add test case 2019-09-17 11:13:57 -04:00
James Agnew 38cf830384 Accurately reflect codesystem URL 2019-09-16 15:55:32 -04:00
Ken Stevens 7cfbf710fe Merge remote-tracking branch 'remotes/origin/master' into ks-in-memory-date-compare
# Conflicts:
#	src/changes/changes.xml
2019-09-09 14:46:25 -04:00
James Agnew 722c7a8211 Work on GraphQL updates 2019-09-06 14:56:17 -04:00
James Agnew 301a8f8432
Merge #1146 - Filter implementation (#1220)
* Initial commit of _filter keyword implementation.

* - Completed all search parameter types for _filter.
- Implemented handling for _has, _id, _security, language, _profile, _security, and _tag.

* - Changes to support "ne" matching on resource ID for _filter

* Implemented language

* Commit/push before creation of pull request

* Ongoing merge work

* Ongoing merge work

* Merge master in

* Test fix
2019-08-12 11:59:33 -04:00
James Agnew dd0cb10dbb
validate operation ignores parameter profile (#1417)
* This should be working now - need to check tests

* Add a changelog and some docs

* One more test fix

* Tests should be passing

* Fix compile

* Test fixes

* Ignore outdated DSTU2 validation test
2019-08-07 15:31:59 -04:00
James Agnew 60eab3ad70
Add support for R5 resources (#1416)
* Work so far on R5 support

* Add support for R5

* Docs changes
2019-08-06 17:30:31 -04:00
James Agnew 04ce9cfc1a Add support for uploading custom terminology using the
$upload-external-code-system operation
2019-07-30 17:30:18 -04:00
James Agnew a4ca5374ec
Add terminology delta operations (#1401)
* Start work on delta operations

* Add changelog

* Some build fixes

* Move upload terminology command to CodeSystem resource

* Updates

* Some test fixes

* Add changelog

* Some test fixes

* More test fixes

* Test fix

* Add additional tests

* Transaction boundary fixes
2019-07-29 17:46:42 -04:00
James Agnew 7831e8a0ed Add support for $snapshot generation and validation based on snapshots 2019-07-14 16:15:56 -04:00
James Agnew 120b93f204
Use HL7 FHIR Core Structures (#1382)
* Ongoing work on core structures suport

* Ongoing work on this merge

* Ongoing work to clean up structures

* Credit for #1179

* Address compile issues

* Latest changes

* Work on parallel execution

* Work on getting tests passing

* Add H2 to migrator

* Test fix
2019-07-14 10:16:40 -04:00
James Agnew 6e20b53979 Fix a crash in R4 validation 2019-07-04 16:27:04 -04:00
James Agnew 10d969c514
Add Consent Service (#1359)
* Initial consent svc

* Ongoing consent svc work

* Add docs

* Ongoing consent service work

* Work on consent service

* More work on consent svc

* License header updates

* Ongoing consent svc work

* Some test fixes

* Some test fixes

* More work on consent svc

* Tests working

* Test fix

* Propagate RequestDetails to everything in JPA server

* More interceptor tweaks

* Fix compile error

* One more tweak to captured SQL

* Ongoing interceptor tweaks

* Ongoing interceptor tweaks

* More interceptor tweaks

* Interceptor tweaks

* Tweaks to tests

* Fix tests

* Test fix

* Raise warnings when encoding extensions with missing values

* Consent service work

* More interceptor tweaks

* Consent interceptor tweaks

* Add logging to test
2019-06-27 16:35:29 -04:00
Stig Rohde Døssing b56f59542a Move JettyUtil to new module 2019-06-14 18:34:45 -04:00
Stig Rohde Døssing aab7bb6b64 Issue-1325: Let OS assign random ports to servers during testing, and let tests get the port of the running server once the OS has assigned a port. Delete PortUtil and similar utilities. 2019-06-14 18:34:45 -04:00
James Agnew c2d4891434 Test fix 2019-05-29 21:13:52 -04:00
James Agnew 772d31dc6c
Merge pull request #1228 from eevaturkka/enablewhen_master
QuestionnaireResponses should be able to have Items without Answers in disabled Questions
2019-05-29 20:47:31 -04:00
Matti Uusitalo 225916a4b6 Changes requested in Pull Request review 2019-05-23 16:48:49 +03:00
James Agnew d4d3178621 A couple of test fixes 2019-05-11 15:04:44 -04:00
James Agnew 444730373b Fix an NPE in validation 2019-05-10 12:49:34 -04:00
James Agnew 92bd2c7173 Fix regression in validator when validating codesystems explicitly
defined in the JPA database
2019-05-10 12:08:40 -04:00
James Agnew 61902da527 Tweak to validator 2019-05-06 10:18:55 -04:00
James Agnew 7753ba2e5c Several test fixes 2019-05-04 14:38:37 -04:00
James Agnew 5132f1f4ed COnfirm validation support comntains codesystem 2019-05-02 07:50:59 -04:00
James Agnew 37b9e1a42c Improve validation of enableWhen questionnaires 2019-04-29 14:43:42 -04:00
Matti Uusitalo b95b4cf110 Merge with master 2019-04-25 10:44:07 +03:00
James Agnew 738c2c1797
Interceptor framework refactoring (#1287)
Interceptor framework overhaul
2019-04-24 14:32:30 -04:00
James Agnew 210d99d121 Correct validation of questionnaire enableWhen 2019-04-17 16:50:37 -04:00
patrick-werner 41a032ae9f added more missing methods 2019-03-30 15:36:06 +01:00
patrick-werner 2f3ac9d734 added missing method 2019-03-30 15:21:01 +01:00
Matti Uusitalo 5e0996d8ff Better method comment 2019-03-05 12:00:56 +02:00
Matti Uusitalo 9549a1615c Merge with origin/master 2019-03-05 11:44:30 +02:00
James Agnew 48c10bddc5
Narrative Generator refactoring (#1219)
* Starting work on this

* Working on narrative templates

* Work on new narrative system

* Account for some failing tests due to refactoring of narrative mode

* Another test fix

* More test fixes

* One more test fix

* Work on searches

* Address review comments
2019-02-27 14:59:57 -05:00
James Agnew 9a8e3245b8 Build fixes 2019-02-05 15:00:36 -05:00
James Agnew 47123196a0 Merge branch 'master' of https://github.com/eevaturkka/hapi-fhir into eevaturkka-master 2019-02-05 14:26:41 -05:00
Eeva Turkka 7e7d4d8879 Allowing items without answers even if item is disabled. 2019-01-31 13:00:41 +02:00
Eeva Turkka e6df4a21e4 Merge branch 'enablewhen_fix' of https://github.com/eevaturkka/hapi-fhir into enablewhen_fix 2019-01-28 10:31:44 +02:00
James Agnew 4f16fea580 Fix compile error 2018-12-28 12:11:19 -05:00
James Agnew 14a132a937 Squashed commit of the following:
commit 9659655830
Author: James Agnew <jamesagnew@gmail.com>
Date:   Thu Dec 27 17:54:25 2018 -0500

    Finish sync

commit 70da25b76f
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Thu Dec 27 10:32:51 2018 -0500

    Work on RI4 sync
2018-12-27 17:58:47 -05:00
Ken Stevens 84a34eb3c9
Subscription module support (#1147)
* Reorganizing packages and dependencies to support standalone subscription running within a CDR container where all hapi modules are on the classpath.

Moved Subscription registry out of interceptor and introduced SubscriptionLoader

* Created ActiveSubscription and moved cache bits into it

* Moved ExecutorQueue stuff out into its own class

* Add test and supporting code to validate SubscriptionConstants.EXT_SUBSCRIPTION_RESTHOOK_DELIVER_LATEST_VERSION behaviour

* Added SubscriptionCheckingSubscriber

* Moved a few beans to @ComponentScan

* Replaced use of beanFactory with concrete factory classes

* Switched test to use subscribablechannel

* Added SubscriptionLoaderFhirClientTest

* Confirm that our SubscriptionProviderFhirClient works with a live fhir client

* Register interceptors with DaoConfig instead of RestServer.
Also, Rename @VisibleForTesting methods with ForUnitTest

* Fix triggering service so it uses new subscriptionmatcherinterceptor

* Renamed "Database" classes to "Dao"

* processing -> matching naming change
2018-12-18 13:09:06 -05:00
Matti Uusitalo 01eb7faf66 Deleted unnecessary Inteface class 2018-12-18 10:15:47 +02:00
Matti Uusitalo 98f929997b Sync with upstream/master 2018-12-17 15:38:05 +02:00
Matti Uusitalo 7ad45308e0 Make this configurable 2018-12-17 14:10:15 +02:00
Matti Uusitalo 89e3cac0e2 Corrected problems caused by merge 2018-12-17 13:55:15 +02:00
Matti Uusitalo 58959eec48 Do not force enableWhen to have system 2018-12-17 13:31:07 +02:00
Matti Uusitalo dd8e027ff4 Don't evaluate Extensions when determining type of answer 2018-12-17 13:31:07 +02:00
Matti Uusitalo a1f79a2063 Filter Extensions from enablewhen evaluation 2018-12-17 13:31:07 +02:00
Matti Uusitalo c2b3d48afe Support required questionnaireitem groups 2018-12-17 13:31:07 +02:00
Matti Uusitalo a0db7e20b6 temporarily set hard coded error when no profile found 2018-12-17 13:30:36 +02:00
Matti Uusitalo cefacdc18c Returned to original state as the experiment failed 2018-12-17 13:30:36 +02:00
Matti Uusitalo 24ebe6cf03 Temporarily set isNoTerminologyServer() return true to avoid errors about loinc codes 2018-12-17 13:30:36 +02:00
Matti Uusitalo 311d92f276 Added more information to the error message about misplaced QuestionnaireResponseItem 2018-12-17 13:30:36 +02:00
Eeva Turkka 076d18977d Added support for Quantity in the default enable when evaluator 2018-12-17 13:30:36 +02:00
Matti Uusitalo b29e8d987c Avoid infinite loop when validating misaligned questionnaireresponseitems 2018-12-17 13:27:27 +02:00
Matti Uusitalo a9c625365d Added missing propagation of QuestionnaireResponse root element 2018-12-17 13:27:27 +02:00
Matti Uusitalo ab484c9819 Thread questionnaireResponse root element through questionnaire validation so implementations of enablewhen may validate against the complete resource 2018-12-17 13:27:27 +02:00
Matti Uusitalo e84689b167 Way to inject custom enablewhen evaluator added 2018-12-17 13:27:27 +02:00