Commit Graph

171 Commits

Author SHA1 Message Date
Anthony Sute 3cf8254625 (1) Fixes to address _filter-based _id retrievals not being restricted to the specified resource type
(2) Import fix for FhirServerConfig.java in hapi-fhir-jpaserver-example
2019-11-06 08:47:53 -05:00
James Agnew 557a8ccc66
Add top level support for ElasticSearch (#1514)
* ElasticSearch work

* Add ElasticSearch properties builder

* Clean up POM

* Remove redundant project

* Try to troubleshoot embedded elasticsearch

* Another test attempt

* Add credentials to elasticsearch config

* Work on lastn

* Address review comments

* A couple of test fixes
2019-09-30 09:30:39 -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 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 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
James Agnew 6724fd0348
Implement the $subsumes operation (#1344)
* Implement the $subsumes operation

* Fix #976
2019-06-17 17:31:24 -04:00
James Agnew b2e99cf035
Add support for conditional patch (#1348)
* Add support for conditional patch

* Add changelog

* Test fix
2019-06-17 16:12:05 -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 00a8f8c759 Fix broken build 2019-03-12 13:13:13 -04: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
patrick-werner 22bb1c8761 removed google analytics script fixes #1207 2019-02-14 18:40:55 +01:00
Volker Schmidt ff0e2b648f Added enabled subscription types to JPA Example Server. 2019-02-10 15:01:05 +01:00
James Agnew 0f8c8d18e2 Bump version to 3.8.0-SNAPSHOT 2019-02-06 20:02:28 -05:00
jamesagnew 207015c3af Version bump to 3.7.0 2019-02-05 21:36:38 -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
Ken Stevens 6baee4dc3f
Standalone subscription (#1125) 2018-11-30 17:19:16 -05:00
Patrick Werner 297cf3ed42
Updated Instructions to match actual paths 2018-11-21 14:15:14 +01:00
Ken Stevens 03ebcafdf5
In-memory matcher (#1116)
* Initial refactoring to move database matcher out into its own class

* MAJOR REFACTOR: Pulled indexing code out of BaseHapiFhirDao into a new class ResourceIndexedSearchParams

* Moved calculateHashes

* Replaced @Bean definitions in BaseConfig.java with @ComponentScan

Annotated bean classes with either @Service (if it's stateless) or @Component (if it's stateful).  It doesn't really matter which annotation is used, but it's helpful to see at a glance whether a bean is stateful or stateless.

* Move services out of BaseHapiFhirDao

Moved services required by ResourceIndexedSearchParams out of BaseHapiFhirDao and into new classes called LogicalReferenceHelper, IdHelperService, MatchUrlService, and DaoProvider.

Converted SearchBuilder into Prototype Bean

Mark Spring components that depend on daos and entitymanagers with @Lazy so they aren't picked up by hapi-fhir-spring-boot-autoconfigure.

* Added SubscriptionMatcherInMemory

Moved static data out of BaseHapiFhirDao into ResourceMetaParams

Moved translateMatchUrl methods out of BaseHapiFhirDao into MatchUrlService bean

Simplified SubscriptionMatcherInMemory to not depend on entity or dao

Turned all subscribers into prototype beans

* Moved searchParam method out to mySearchParamProvider

Also removed dao and contest parameters from of myMatchUrlService methods

Moved code out of SearchBuilder into SearchParameterMap.clean() so it can be used by inMemoryMatcher

Introduced a new composite subscription matcher that tries to match in memory and if it finds a parameter in the criteria it doesn't support, it falls back to the database matcher.

* Added support for references

Also fixed a small bug in SearchParameterMap that was missing the ";" after "_has" when creating a normalized query from search params.

* Finished implementing all tests from FhirResourceDaoR4SearchNoFtTest

* Make in-memory matcher configurable, disabled by default

* Validate Subscription criteria when they're submitted

Send HTTP 422 UnprocessableEntityException if the criteria fail validation.

* fixed Sonar "Blocker" issues.

*  Don't reload the resource before sending it out

Since we can always force a reload using restHookDetails.isDeliverLatestVersion

* Added tests to cover Custom Search param.

* Split ResourceIndexedSearchParam into separate state and service classes

* Cleaned up SearchBuilder.

Removed uses of myCallingDao as an injection mechanism.
Left // FIXME KHS cookie crumbs to clean up

* Reduced dependencies on BaseHapiFhirDao

Removed methods from IDao interface that were used for injection

* Updated change log
2018-11-19 16:19:52 -05:00
jamesagnew cc57bacab8 Version bump to 3.7.0-SNAPSHOT 2018-11-12 10:07:28 -05:00
James Agnew 63af04a7b4 Prepare for 3.6.0 release 2018-11-12 05:40:55 -05:00
James Agnew 706e004b9d Bump to 3.6.0-SNAPSHOT 2018-09-19 10:24:48 -04:00
James Agnew daef975734 Version bump to 3.5.0 2018-09-08 07:22:21 +08:00
James Agnew f5d567cd00 Work on migrator 2018-09-08 03:30:35 +08:00
patrick-werner 9498247082 Allows the Cache-Control Header in CORS header for jpa-example-server & CLI 2018-06-04 16:12:31 +02:00
jamesagnew abcf7852b1 Tests pasing locally 2018-05-31 09:10:34 -04:00
Diederik Muylwyk 0e2c57fa60 Bumping version. 2018-05-28 17:44:38 -04:00
Diederik Muylwyk 2871920734 Preparing release. 2018-05-28 10:45:47 -04:00
James Agnew 2f2900e837 Improve indexing on JPA server in anticipation of a new indexing
strategy in HAPI FHIR 3.5.0
2018-05-23 08:09:57 -04:00
James Agnew a3ff08d9ec
Replace phloc with ph for #775 (#930)
* Replace phloc with ph

* Enable schematron tests

* Make HAPI-FHIR ph-schematron on OSGI

* Work on getting tests passing

* Another test fix

* Fix up transaction handling for DSTU2

* Add changelog

* Avoid double transaction

* Dont use readonly

* One more test fix

* Update to snapshow build

* Resolve a circular dependency

* Try to fix tests

* Solve recurring NPE in DSTU2 tests

* Fix one more test

* Test fix

* More test threading fixes

* One more attempt to get tests passing

* Refactoring for tests

* Refactoring for tests
2018-05-14 17:38:40 -04:00
James Agnew f1ba0016b2 Improve the error message thrown by JPA server 2018-05-11 17:03:48 -04:00
jamesagnew 180336e076 Sync to master 2018-03-29 06:54:24 -04:00
jamesagnew 418e82032f Prep for 3.3.0 2018-03-29 05:48:13 -04:00
jamesagnew 83b1cf5b9f Add credit for #798 and fix broken test 2018-03-15 07:30:32 -04:00
James Agnew 84e606cfe8
Merge pull request #798 from honestica/elasticsearch-mapping
Elasticsearch mapping for Jpa Server
2018-03-15 06:52:17 -04:00
James Agnew 16038ece26 Version bump to 3.3.0-SNAPSHOT 2018-01-23 10:31:01 -05:00
James Agnew 6468ca474a Verion bump to 3.2.0 2018-01-13 02:14:33 -05:00
Jiajing LIANG 27c9f3bd30 add mini tutorial about the elasticsearch integration in ReadMe 2017-12-21 17:17:33 +01:00
Jiajing LIANG c3841d1bcc add demo configuration 2017-12-21 16:43:46 +01:00
jamesagnew 4ad5033b13 Add tests 2017-12-13 07:05:30 -05:00
James Agnew bdf734fc3c Examples cleanup 2017-12-08 16:33:45 -05:00
jamesagnew 5b909b4746 Version bump to 3.2.0-SNAPSHOT 2017-11-24 13:32:47 -05:00
jamesagnew 42dd34252d Version bump to 3.1.0 2017-11-23 13:27:21 -05:00
James Agnew 49f4ac4fc5
Merge branch 'master' into analyzer-def-using-search-mapping 2017-11-13 13:32:40 -05:00
James Agnew c2b3774299
Merge pull request #718 from patrick-werner/master
fixed CORS preflight
2017-10-30 16:18:47 -04:00
Jiajing LIANG 86fb1de3ae rename file 2017-10-09 18:34:49 +02:00
Jiajing LIANG 65c3a316f2 move out the analysers definitions from entity classes 2017-10-09 18:34:03 +02:00
James Agnew 87383ad802 Version bump to 3.1.0-SNAPSHOT 2017-09-27 21:23:34 -04:00
James 49bdaa1a45 Version bump to 3.0.0 2017-09-23 17:31:39 -04:00
Patrick Werner 8370a22ce7 fixed CORS PreFlight 2017-08-24 16:01:19 +02:00
Rob Hausam e4539c0a0f Add imports for org.slf4j.Logger and org.slf4j.LoggerFactory. 2017-08-18 16:13:52 -05:00