Commit Graph

278 Commits

Author SHA1 Message Date
James Agnew 29c3cee287
Merge pull request #1172 from jamesagnew/ja-subscription-interceptors
Ja subscription interceptors
2019-01-19 07:13:14 -06:00
James Agnew 3e84173180 Merge branch 'master' into ja-subscription-interceptors 2019-01-18 17:52:23 -05:00
Ken Stevens 3d07fc1c22
fixed null subscription id (#1170)
* fixed null subscription id
2019-01-18 10:39:35 -05:00
James Agnew 5ce9d444e9 Work on interceptors 2019-01-18 09:04:45 -05:00
jamesagnew 5fd084d7cf Fix a couple of merge conflicts 2019-01-18 05:47:37 -05:00
Volker Schmidt 432ad8e5bc Subscription without Payload did not contain header. 2019-01-18 05:41:47 -05:00
Ken Stevens 7ffbe9505b Prototype.
Not working yet.
2019-01-16 23:35:14 -05:00
Ken Stevens 19afcb7e09 all tests pass 2019-01-15 18:22:08 -05:00
Ken Stevens 4f5640e541
Resilient searchparamregistry (#1165)
SearchParamRegistry and SubscriptionRegistry now both poll retrying connection to the server. This will help in particular in the scenario where the subscriptions are managed in a standalone server that depends on a FHIR Server being available to pull search parameters and subscriptions from.
2019-01-14 11:39:28 -05:00
James Agnew 93bf2788ec Add subscription narrowing interceptor and refactor RuleBuilder to be a
bit cleaner
2019-01-12 14:23:26 -06:00
Ken Stevens 0b6c4fb450 improved test name 2019-01-09 13:39:32 -05:00
Ken Stevens 5671ca88ca Simplified access to extension 2019-01-09 13:39:32 -05:00
Ken Stevens 3142ebb892 Fixed typo in class name
Added channel extensions to CanonicalSubscription
2019-01-09 13:39:32 -05:00
Ken Stevens d809569a2d Added new DaoConfig parameter to control whether subscription matching happens on this server. 2019-01-09 13:39:32 -05:00
jamesagnew a8a97ae6b2 Two test fixes 2019-01-07 09:18:11 -05:00
jamesagnew 8f8385627f Merge branch 'master' of github.com:jamesagnew/hapi-fhir 2019-01-05 11:33:08 -05:00
jamesagnew 98d93df12a License header updates 2019-01-04 16:22:15 -05:00
James Agnew 5b8fee869e Add config options for default Prefer header and _total param on server 2019-01-04 16:12:45 -05:00
James Agnew f39cf58a4a Test fix 2019-01-04 11:29:14 -05:00
James Agnew a1275874f8 Correct subscription delivery metadata 2019-01-04 10:56:21 -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
jamesagnew 49e418edf0 Adjust migrator to handle updated Hibernate version 2018-12-23 15:11:44 -05:00
Ken Stevens fedc59a8d6 Subscription module startup changes (#1154)
* Reorganizing packages and dependencies to support standalone subscription running within a CDR container where all hapi modules are on the classpath.

* EXPERIMENTAL: Moved Subscription registry out of interceptor and introduced ISubscriptionLoader that will be either a Database or FhirClient loader.

5 tests fail.  Looks like we're getting too many matches--likely because there is now just one list of subscriptions instead of one list per interceptor.

* Created ActiveSubscription and moved cache bits into it

* Compiles.  Next step is get app context to load.

* Application context loads.  Now fix NullPointer.

* All subscription tests pass

* FIXME cleanup

* jpa-subscription tests

* fixed config so other module tests work

* MAJOR MILESTONE: All hapi-fhir tests pass.

updated READMEs in example projects

* Moved ExecutorQueue stuff out into its own class

* Organize Imports

* FIXME cleanup

* Null check -> Optional

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

* Added SubscriptionCheckingSubscriber test that works without a database

* Moved a few beans to @ComponentScan

* Replaced use of beanFactory with concrete factory classes

* Switched test to use subscribablechannel

* Added SubscriptionLoaderFhirClientTest

* Undid changes that caused SearchParamProviderFhirClientTest to revert to the Database version.  It's now calling the FhirClient version again.  (oops)

* Confirm that our SubscriptionProviderFhirClient works with a live fhir client

* Organize imports

* Organize imports

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

* Ready to go

* organize imports

* add processing queue

* Fixed interface implementation names

* Fix triggering service so it uses new subscriptionmatcherinterceptor

* fixed example

* Renamed "Database" classes to "Dao"

* Tightened up StoppableSubscriber API

* final code review

* processing -> matching naming change

* fix required by CDR

* oops

* Updated changes.xml

* Renamed subscriptioncheckingsubscriber to subscriptionmatchingsubscriber

* Renamed subscriptioncheckingsubscriber to subscriptionmatchingsubscriber

* CDR integration now works

* Changing subscribable channel abstraction layer in preparation for supporting more types of subscribable channels

* Add interface over both types of messages put on queues

* cosmetic change

* added subscription support for r4

* fixed again

* oops

* self code-review
2018-12-23 13:52:26 -05:00
James Agnew a0cb7edd08 Version bump a few dependencies 2018-12-22 20:13:03 -05:00
jamesagnew 86b3e45a32 License header updates 2018-12-18 14:08:01 -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
jamesagnew 82f40f0423 License header updates 2018-12-03 05:22:10 -05:00
Ken Stevens 6baee4dc3f
Standalone subscription (#1125) 2018-11-30 17:19:16 -05:00