From 826ba6458a461bf96883effc3864cd126045238f Mon Sep 17 00:00:00 2001 From: jamesagnew Date: Mon, 6 Apr 2020 20:15:41 -0400 Subject: [PATCH] Subscription work --- ...scriptionDeliveringRestHookSubscriber.java | 2 +- .../uhn/fhir/jpa/config/TestDstu3Config.java | 4 +- .../ca/uhn/fhir/jpa/config/TestJPAConfig.java | 4 +- .../fhir/jpa/dao/dstu2/BaseJpaDstu2Test.java | 2 +- .../ca/uhn/fhir/jpa/dao/r4/BaseJpaR4Test.java | 2 +- .../ca/uhn/fhir/jpa/dao/r5/BaseJpaR5Test.java | 2 +- .../BaseResourceProviderDstu2Test.java | 2 +- .../dstu3/BaseResourceProviderDstu3Test.java | 2 +- .../r4/BaseResourceProviderR4Test.java | 4 +- .../r5/BaseResourceProviderR5Test.java | 4 +- .../subscription/BaseSubscriptionsR4Test.java | 6 +-- .../subscription/BaseSubscriptionsR5Test.java | 6 +-- .../subscription/SubscriptionTestUtil.java | 12 ++--- ...SubscriptionValidatingInterceptorTest.java | 5 +- .../email/JavaMailEmailSenderTest.java | 4 +- .../InMemorySubscriptionMatcherR4Test.java | 6 +-- ...tivatesPreExistingSubscriptionsR4Test.java | 1 - .../resthook/RestHookTestDstu3Test.java | 2 +- ...rceptorRegisteredToDaoConfigDstu2Test.java | 2 +- .../ChannelConsumerOptions.java} | 18 +++++-- .../IChannelFactory.java} | 16 +++---- .../IChannelProducer.java} | 5 +- .../IChannelReceiver.java} | 4 +- .../config/SubscriptionChannelConfig.java | 10 ++-- .../LinkedBlockingChannel.java} | 21 ++++++-- .../LinkedBlockingChannelFactory.java} | 26 +++++----- .../SubscriptionChannelCache.java | 2 +- .../SubscriptionChannelFactory.java | 48 +++++++++---------- .../SubscriptionChannelRegistry.java | 27 +++++++---- .../SubscriptionChannelWithHandlers.java | 2 +- .../SubscriptionDeliveryHandlerFactory.java | 8 ++-- .../config/SubscriptionProcessorConfig.java | 40 +++++++--------- .../config/WebsocketDispatcherConfig.java | 6 +-- .../BaseSubscriptionDeliverySubscriber.java | 6 +-- .../deliver/DaoResourceRetriever.java | 5 +- .../deliver/IResourceRetriever.java | 2 +- .../deliver/email/EmailDetails.java | 2 +- .../deliver/email/IEmailSender.java | 2 +- .../deliver/email/JavaMailEmailSender.java | 2 +- ...SubscriptionDeliveringEmailSubscriber.java | 5 +- ...scriptionDeliveringRestHookSubscriber.java | 7 ++- .../SubscriptionWebsocketHandler.java | 4 +- .../WebsocketConnectionValidator.java | 6 +-- .../WebsocketValidationResponse.java | 4 +- ...mpositeInMemoryDaoSubscriptionMatcher.java | 2 +- .../matching/DaoSubscriptionMatcher.java | 5 +- .../matching/IResourceModifiedConsumer.java | 2 +- .../matching/ISubscriptionMatcher.java | 2 +- .../matching/InMemorySubscriptionMatcher.java | 2 +- .../SubscriptionMatchingStrategy.java | 2 +- .../SubscriptionStrategyEvaluator.java | 2 +- ...aseSubscriberForSubscriptionResources.java | 2 +- .../MatchingQueueSubscriberLoader.java | 9 ++-- .../SubscriptionActivatingSubscriber.java | 10 ++-- .../SubscriptionMatchingSubscriber.java | 8 ++-- .../SubscriptionRegisteringSubscriber.java | 6 +-- .../registry/ActiveSubscription.java | 2 +- .../registry/ActiveSubscriptionCache.java | 2 +- .../registry/DaoSubscriptionProvider.java | 4 +- .../registry/ISubscriptionProvider.java | 2 +- .../registry/SubscriptionCanonicalizer.java | 4 +- .../registry/SubscriptionConstants.java | 2 +- .../registry/SubscriptionLoader.java | 2 +- .../registry/SubscriptionRegistry.java | 2 +- .../model/config/SubscriptionModelConfig.java | 4 +- .../SubscriptionMatcherInterceptor.java | 14 +++--- .../SubscriptionValidatingInterceptor.java | 6 +-- .../SubscriptionTriggeringSvcImpl.java | 2 +- .../SubscriptionChannelFactoryTest.java | 8 ++-- ...aseSubscriptionDeliverySubscriberTest.java | 6 +-- .../matching/DaoSubscriptionMatcherTest.java | 4 +- .../registry/ActiveSubscriptionCacheTest.java | 2 +- .../module/CanonicalSubscriptionTest.java | 2 +- .../module/SubscriptionTestConfig.java | 10 ++-- .../SubscriptionChannelRegistryTest.java | 3 +- .../WebsocketConnectionValidatorTest.java | 11 ++--- ...bscriptionSubmitInterceptorLoaderTest.java | 2 +- .../ca/uhn/fhirtest/TestRestfulServer.java | 2 +- .../ca/uhn/fhirtest/config/CommonConfig.java | 4 +- .../autoconfigure/FhirAutoConfiguration.java | 2 +- 80 files changed, 258 insertions(+), 246 deletions(-) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/{queue/QueueChannelConsumerConfig.java => api/ChannelConsumerOptions.java} (69%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/{queue/IQueueChannelFactory.java => api/IChannelFactory.java} (85%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/{queue/IQueueChannelSender.java => api/IChannelProducer.java} (80%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/{queue/IQueueChannelReceiver.java => api/IChannelReceiver.java} (84%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/{queue/LinkedBlockingQueueChannel.java => impl/LinkedBlockingChannel.java} (54%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/{queue/LinkedBlockingQueueChannelFactory.java => impl/LinkedBlockingChannelFactory.java} (71%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/config/SubscriptionProcessorConfig.java (68%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/config/WebsocketDispatcherConfig.java (89%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/BaseSubscriptionDeliverySubscriber.java (95%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/DaoResourceRetriever.java (92%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/IResourceRetriever.java (94%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/email/EmailDetails.java (96%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/email/IEmailSender.java (92%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/email/JavaMailEmailSender.java (98%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/email/SubscriptionDeliveringEmailSubscriber.java (94%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/resthook/SubscriptionDeliveringRestHookSubscriber.java (96%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/websocket/SubscriptionWebsocketHandler.java (98%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/websocket/WebsocketConnectionValidator.java (91%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/websocket/WebsocketValidationResponse.java (92%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/matching/CompositeInMemoryDaoSubscriptionMatcher.java (97%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/matching/DaoSubscriptionMatcher.java (92%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/matching/IResourceModifiedConsumer.java (95%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/matching/ISubscriptionMatcher.java (94%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/matching/InMemorySubscriptionMatcher.java (96%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/matching/SubscriptionMatchingStrategy.java (94%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/matching/SubscriptionStrategyEvaluator.java (95%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/subscriber/BaseSubscriberForSubscriptionResources.java (96%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/subscriber/MatchingQueueSubscriberLoader.java (86%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/subscriber/SubscriptionActivatingSubscriber.java (93%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/subscriber/SubscriptionMatchingSubscriber.java (96%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/subscriber/SubscriptionRegisteringSubscriber.java (93%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/registry/ActiveSubscription.java (97%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/registry/ActiveSubscriptionCache.java (97%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/registry/DaoSubscriptionProvider.java (91%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/registry/ISubscriptionProvider.java (94%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/registry/SubscriptionCanonicalizer.java (99%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/registry/SubscriptionConstants.java (96%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/registry/SubscriptionLoader.java (99%) rename hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/{process => match}/registry/SubscriptionRegistry.java (99%) rename hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/{process => match}/deliver/BaseSubscriptionDeliverySubscriberTest.java (96%) rename hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/{process => match}/matcher/matching/DaoSubscriptionMatcherTest.java (94%) rename hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/{process => match}/registry/ActiveSubscriptionCacheTest.java (98%) diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/StoppableSubscriptionDeliveringRestHookSubscriber.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/StoppableSubscriptionDeliveringRestHookSubscriber.java index 34563593e5d..1368c1cc509 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/StoppableSubscriptionDeliveringRestHookSubscriber.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/StoppableSubscriptionDeliveringRestHookSubscriber.java @@ -1,6 +1,6 @@ package ca.uhn.fhir.jpa.config; -import ca.uhn.fhir.jpa.subscription.process.deliver.resthook.SubscriptionDeliveringRestHookSubscriber; +import ca.uhn.fhir.jpa.subscription.match.deliver.resthook.SubscriptionDeliveringRestHookSubscriber; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.messaging.Message; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/TestDstu3Config.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/TestDstu3Config.java index bc439ede177..aa20363697d 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/TestDstu3Config.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/TestDstu3Config.java @@ -1,8 +1,8 @@ package ca.uhn.fhir.jpa.config; import ca.uhn.fhir.jpa.search.LuceneSearchMappingFactory; -import ca.uhn.fhir.jpa.subscription.process.deliver.email.IEmailSender; -import ca.uhn.fhir.jpa.subscription.process.deliver.email.JavaMailEmailSender; +import ca.uhn.fhir.jpa.subscription.match.deliver.email.IEmailSender; +import ca.uhn.fhir.jpa.subscription.match.deliver.email.JavaMailEmailSender; import ca.uhn.fhir.jpa.util.CircularQueueCaptureQueriesListener; import ca.uhn.fhir.jpa.util.CurrentThreadCaptureQueriesListener; import ca.uhn.fhir.rest.server.interceptor.RequestValidatingInterceptor; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/TestJPAConfig.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/TestJPAConfig.java index 6f6bde2016e..b55be7f10a0 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/TestJPAConfig.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/config/TestJPAConfig.java @@ -4,9 +4,9 @@ import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.model.entity.ModelConfig; import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil; import ca.uhn.fhir.jpa.subscription.channel.config.SubscriptionChannelConfig; -import ca.uhn.fhir.jpa.subscription.process.config.SubscriptionProcessorConfig; +import ca.uhn.fhir.jpa.subscription.match.config.SubscriptionProcessorConfig; import ca.uhn.fhir.jpa.subscription.submit.config.SubscriptionSubmitterConfig; -import ca.uhn.fhir.jpa.subscription.process.deliver.resthook.SubscriptionDeliveringRestHookSubscriber; +import ca.uhn.fhir.jpa.subscription.match.deliver.resthook.SubscriptionDeliveringRestHookSubscriber; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/dstu2/BaseJpaDstu2Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/dstu2/BaseJpaDstu2Test.java index 325ac27befc..3f1696f5ba4 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/dstu2/BaseJpaDstu2Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/dstu2/BaseJpaDstu2Test.java @@ -24,7 +24,7 @@ import ca.uhn.fhir.jpa.api.svc.ISearchCoordinatorSvc; import ca.uhn.fhir.jpa.search.reindex.IResourceReindexingSvc; import ca.uhn.fhir.jpa.searchparam.registry.ISearchParamRegistry; import ca.uhn.fhir.jpa.sp.ISearchParamPresenceSvc; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionLoader; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionLoader; import ca.uhn.fhir.jpa.util.ResourceCountCache; import ca.uhn.fhir.jpa.util.ResourceProviderFactory; import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/r4/BaseJpaR4Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/r4/BaseJpaR4Test.java index 5d843aa3040..1480721ef5b 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/r4/BaseJpaR4Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/r4/BaseJpaR4Test.java @@ -36,7 +36,7 @@ import ca.uhn.fhir.jpa.search.IStaleSearchDeletingSvc; import ca.uhn.fhir.jpa.search.reindex.IResourceReindexingSvc; import ca.uhn.fhir.jpa.search.warm.ICacheWarmingSvc; import ca.uhn.fhir.jpa.searchparam.registry.SearchParamRegistryImpl; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import ca.uhn.fhir.jpa.term.BaseTermReadSvcImpl; import ca.uhn.fhir.jpa.term.TermDeferredStorageSvcImpl; import ca.uhn.fhir.jpa.term.api.ITermCodeSystemStorageSvc; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/r5/BaseJpaR5Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/r5/BaseJpaR5Test.java index 305889d8fe6..db07e4ac621 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/r5/BaseJpaR5Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/dao/r5/BaseJpaR5Test.java @@ -32,7 +32,7 @@ import ca.uhn.fhir.jpa.search.IStaleSearchDeletingSvc; import ca.uhn.fhir.jpa.search.reindex.IResourceReindexingSvc; import ca.uhn.fhir.jpa.search.warm.ICacheWarmingSvc; import ca.uhn.fhir.jpa.searchparam.registry.SearchParamRegistryImpl; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import ca.uhn.fhir.jpa.term.BaseTermReadSvcImpl; import ca.uhn.fhir.jpa.term.TermDeferredStorageSvcImpl; import ca.uhn.fhir.jpa.term.api.ITermCodeSystemStorageSvc; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/BaseResourceProviderDstu2Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/BaseResourceProviderDstu2Test.java index 539d27c2c1b..15ea7c88cf6 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/BaseResourceProviderDstu2Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/BaseResourceProviderDstu2Test.java @@ -1,6 +1,6 @@ package ca.uhn.fhir.jpa.provider; -import ca.uhn.fhir.jpa.subscription.process.config.WebsocketDispatcherConfig; +import ca.uhn.fhir.jpa.subscription.match.config.WebsocketDispatcherConfig; import ca.uhn.fhir.jpa.dao.dstu2.BaseJpaDstu2Test; import ca.uhn.fhir.jpa.search.DatabaseBackedPagingProvider; import ca.uhn.fhir.model.dstu2.resource.Bundle; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/dstu3/BaseResourceProviderDstu3Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/dstu3/BaseResourceProviderDstu3Test.java index cce16453f54..22a625b873a 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/dstu3/BaseResourceProviderDstu3Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/dstu3/BaseResourceProviderDstu3Test.java @@ -1,7 +1,7 @@ package ca.uhn.fhir.jpa.provider.dstu3; import ca.uhn.fhir.context.support.IValidationSupport; -import ca.uhn.fhir.jpa.subscription.process.config.WebsocketDispatcherConfig; +import ca.uhn.fhir.jpa.subscription.match.config.WebsocketDispatcherConfig; import ca.uhn.fhir.jpa.dao.dstu3.BaseJpaDstu3Test; import ca.uhn.fhir.jpa.provider.GraphQLProvider; import ca.uhn.fhir.jpa.provider.SubscriptionTriggeringProvider; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/r4/BaseResourceProviderR4Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/r4/BaseResourceProviderR4Test.java index 23cd7b33f9d..86e37ae9324 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/r4/BaseResourceProviderR4Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/r4/BaseResourceProviderR4Test.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.jpa.provider.r4; import ca.uhn.fhir.context.support.IValidationSupport; import ca.uhn.fhir.jpa.api.dao.DaoRegistry; -import ca.uhn.fhir.jpa.subscription.process.config.WebsocketDispatcherConfig; +import ca.uhn.fhir.jpa.subscription.match.config.WebsocketDispatcherConfig; import ca.uhn.fhir.jpa.dao.r4.BaseJpaR4Test; import ca.uhn.fhir.jpa.provider.GraphQLProvider; import ca.uhn.fhir.jpa.provider.TerminologyUploaderProvider; @@ -10,7 +10,7 @@ import ca.uhn.fhir.jpa.search.DatabaseBackedPagingProvider; import ca.uhn.fhir.jpa.api.svc.ISearchCoordinatorSvc; import ca.uhn.fhir.jpa.searchparam.registry.SearchParamRegistryImpl; import ca.uhn.fhir.jpa.subscription.submit.interceptor.SubscriptionMatcherInterceptor; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionLoader; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionLoader; import ca.uhn.fhir.jpa.util.ResourceCountCache; import ca.uhn.fhir.narrative.DefaultThymeleafNarrativeGenerator; import ca.uhn.fhir.parser.StrictErrorHandler; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/r5/BaseResourceProviderR5Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/r5/BaseResourceProviderR5Test.java index 578da58bc53..576d5709362 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/r5/BaseResourceProviderR5Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/provider/r5/BaseResourceProviderR5Test.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.jpa.provider.r5; import ca.uhn.fhir.context.support.IValidationSupport; import ca.uhn.fhir.jpa.api.dao.DaoRegistry; -import ca.uhn.fhir.jpa.subscription.process.config.WebsocketDispatcherConfig; +import ca.uhn.fhir.jpa.subscription.match.config.WebsocketDispatcherConfig; import ca.uhn.fhir.jpa.dao.r5.BaseJpaR5Test; import ca.uhn.fhir.jpa.provider.GraphQLProvider; import ca.uhn.fhir.jpa.provider.TerminologyUploaderProvider; @@ -10,7 +10,7 @@ import ca.uhn.fhir.jpa.search.DatabaseBackedPagingProvider; import ca.uhn.fhir.jpa.api.svc.ISearchCoordinatorSvc; import ca.uhn.fhir.jpa.searchparam.registry.SearchParamRegistryImpl; import ca.uhn.fhir.jpa.subscription.submit.interceptor.SubscriptionMatcherInterceptor; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionLoader; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionLoader; import ca.uhn.fhir.jpa.util.ResourceCountCache; import ca.uhn.fhir.narrative.DefaultThymeleafNarrativeGenerator; import ca.uhn.fhir.parser.StrictErrorHandler; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/BaseSubscriptionsR4Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/BaseSubscriptionsR4Test.java index da2836c09f8..fe28b223e84 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/BaseSubscriptionsR4Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/BaseSubscriptionsR4Test.java @@ -3,7 +3,7 @@ package ca.uhn.fhir.jpa.subscription; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.provider.r4.BaseResourceProviderR4Test; -import ca.uhn.fhir.jpa.subscription.channel.queue.LinkedBlockingQueueChannel; +import ca.uhn.fhir.jpa.subscription.channel.impl.LinkedBlockingChannel; import ca.uhn.fhir.jpa.subscription.submit.interceptor.SubscriptionMatcherInterceptor; import ca.uhn.fhir.rest.annotation.Create; import ca.uhn.fhir.rest.annotation.ResourceParam; @@ -99,13 +99,13 @@ public abstract class BaseSubscriptionsR4Test extends BaseResourceProviderR4Test waitForActivatedSubscriptionCount(0); } - LinkedBlockingQueueChannel processingChannel = mySubscriptionMatcherInterceptor.getProcessingChannelForUnitTest(); + LinkedBlockingChannel processingChannel = mySubscriptionMatcherInterceptor.getProcessingChannelForUnitTest(); if (processingChannel != null) { processingChannel.clearInterceptorsForUnitTest(); } myCountingInterceptor = new CountingInterceptor(); if (processingChannel != null) { - processingChannel.addInterceptorForUnitTest(myCountingInterceptor); + processingChannel.addInterceptor(myCountingInterceptor); } } diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/BaseSubscriptionsR5Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/BaseSubscriptionsR5Test.java index 165186008b7..f6c838ff9c1 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/BaseSubscriptionsR5Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/BaseSubscriptionsR5Test.java @@ -3,8 +3,8 @@ package ca.uhn.fhir.jpa.subscription; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.provider.r5.BaseResourceProviderR5Test; +import ca.uhn.fhir.jpa.subscription.channel.impl.LinkedBlockingChannel; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscriptionChannelType; -import ca.uhn.fhir.jpa.subscription.channel.queue.LinkedBlockingQueueChannel; import ca.uhn.fhir.jpa.subscription.submit.interceptor.SubscriptionMatcherInterceptor; import ca.uhn.fhir.rest.annotation.Create; import ca.uhn.fhir.rest.annotation.ResourceParam; @@ -111,13 +111,13 @@ public abstract class BaseSubscriptionsR5Test extends BaseResourceProviderR5Test waitForActivatedSubscriptionCount(0); } - LinkedBlockingQueueChannel processingChannel = mySubscriptionMatcherInterceptor.getProcessingChannelForUnitTest(); + LinkedBlockingChannel processingChannel = mySubscriptionMatcherInterceptor.getProcessingChannelForUnitTest(); if (processingChannel != null) { processingChannel.clearInterceptorsForUnitTest(); } myCountingInterceptor = new CountingInterceptor(); if (processingChannel != null) { - processingChannel.addInterceptorForUnitTest(myCountingInterceptor); + processingChannel.addInterceptor(myCountingInterceptor); } } diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/SubscriptionTestUtil.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/SubscriptionTestUtil.java index a286b3729a3..a9818ecac0d 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/SubscriptionTestUtil.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/SubscriptionTestUtil.java @@ -1,15 +1,15 @@ package ca.uhn.fhir.jpa.subscription; import ca.uhn.fhir.jpa.api.config.DaoConfig; -import ca.uhn.fhir.jpa.subscription.channel.queue.LinkedBlockingQueueChannel; +import ca.uhn.fhir.jpa.subscription.channel.impl.LinkedBlockingChannel; import ca.uhn.fhir.jpa.subscription.submit.interceptor.SubscriptionSubmitInterceptorLoader; -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelRegistry; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelWithHandlers; import ca.uhn.fhir.jpa.subscription.submit.interceptor.SubscriptionMatcherInterceptor; -import ca.uhn.fhir.jpa.subscription.process.deliver.email.JavaMailEmailSender; -import ca.uhn.fhir.jpa.subscription.process.deliver.email.SubscriptionDeliveringEmailSubscriber; +import ca.uhn.fhir.jpa.subscription.match.deliver.email.JavaMailEmailSender; +import ca.uhn.fhir.jpa.subscription.match.deliver.email.SubscriptionDeliveringEmailSubscriber; import org.hl7.fhir.dstu2.model.Subscription; import org.hl7.fhir.instance.model.api.IIdType; import org.springframework.beans.factory.annotation.Autowired; @@ -31,7 +31,7 @@ public class SubscriptionTestUtil { private SubscriptionChannelRegistry mySubscriptionChannelRegistry; public int getExecutorQueueSize() { - LinkedBlockingQueueChannel channel = mySubscriptionMatcherInterceptor.getProcessingChannelForUnitTest(); + LinkedBlockingChannel channel = mySubscriptionMatcherInterceptor.getProcessingChannelForUnitTest(); return channel.getQueueSizeForUnitTest(); } diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/SubscriptionValidatingInterceptorTest.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/SubscriptionValidatingInterceptorTest.java index 78052e9f7be..b15e699ce7d 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/SubscriptionValidatingInterceptorTest.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/SubscriptionValidatingInterceptorTest.java @@ -2,9 +2,8 @@ package ca.uhn.fhir.jpa.subscription; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.jpa.api.dao.DaoRegistry; -import ca.uhn.fhir.jpa.subscription.process.matcher.subscriber.SubscriptionActivatingSubscriber; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionCanonicalizer; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.SubscriptionStrategyEvaluator; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionCanonicalizer; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionStrategyEvaluator; import ca.uhn.fhir.jpa.subscription.submit.interceptor.SubscriptionValidatingInterceptor; import ca.uhn.fhir.rest.server.exceptions.UnprocessableEntityException; import org.hl7.fhir.r4.model.Subscription; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/email/JavaMailEmailSenderTest.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/email/JavaMailEmailSenderTest.java index 9320e4e2e90..e1b02a52986 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/email/JavaMailEmailSenderTest.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/email/JavaMailEmailSenderTest.java @@ -1,7 +1,7 @@ package ca.uhn.fhir.jpa.subscription.email; -import ca.uhn.fhir.jpa.subscription.process.deliver.email.EmailDetails; -import ca.uhn.fhir.jpa.subscription.process.deliver.email.JavaMailEmailSender; +import ca.uhn.fhir.jpa.subscription.match.deliver.email.EmailDetails; +import ca.uhn.fhir.jpa.subscription.match.deliver.email.JavaMailEmailSender; import com.icegreen.greenmail.util.GreenMail; import com.icegreen.greenmail.util.GreenMailUtil; import com.icegreen.greenmail.util.ServerSetup; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/module/matcher/InMemorySubscriptionMatcherR4Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/module/matcher/InMemorySubscriptionMatcherR4Test.java index 334e29fd5df..c66c4bc382a 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/module/matcher/InMemorySubscriptionMatcherR4Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/module/matcher/InMemorySubscriptionMatcherR4Test.java @@ -9,9 +9,9 @@ import ca.uhn.fhir.jpa.searchparam.matcher.InMemoryMatchResult; import ca.uhn.fhir.jpa.searchparam.matcher.SearchParamMatcher; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedMessage; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.InMemorySubscriptionMatcher; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.SubscriptionMatchingStrategy; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.SubscriptionStrategyEvaluator; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.InMemorySubscriptionMatcher; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionMatchingStrategy; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionStrategyEvaluator; import ca.uhn.fhir.jpa.util.CoordCalculatorTest; import ca.uhn.fhir.model.api.TemporalPrecisionEnum; import ca.uhn.fhir.rest.param.*; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookActivatesPreExistingSubscriptionsR4Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookActivatesPreExistingSubscriptionsR4Test.java index 4368f474659..9753032bc79 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookActivatesPreExistingSubscriptionsR4Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookActivatesPreExistingSubscriptionsR4Test.java @@ -2,7 +2,6 @@ package ca.uhn.fhir.jpa.subscription.resthook; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.jpa.provider.r4.BaseResourceProviderR4Test; -import ca.uhn.fhir.jpa.subscription.process.matcher.subscriber.SubscriptionActivatingSubscriber; import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil; import ca.uhn.fhir.rest.annotation.ResourceParam; import ca.uhn.fhir.rest.annotation.Update; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookTestDstu3Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookTestDstu3Test.java index 1d28154ccd5..e1ae86cdb59 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookTestDstu3Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookTestDstu3Test.java @@ -8,7 +8,7 @@ import ca.uhn.fhir.jpa.provider.dstu3.BaseResourceProviderDstu3Test; import ca.uhn.fhir.jpa.subscription.NotificationServlet; import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil; import ca.uhn.fhir.jpa.subscription.util.SubscriptionDebugLogInterceptor; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.SubscriptionMatchingStrategy; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionMatchingStrategy; import ca.uhn.fhir.rest.annotation.Create; import ca.uhn.fhir.rest.annotation.ResourceParam; import ca.uhn.fhir.rest.annotation.Update; diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookTestWithInterceptorRegisteredToDaoConfigDstu2Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookTestWithInterceptorRegisteredToDaoConfigDstu2Test.java index 0cdab0e97dc..67321530b34 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookTestWithInterceptorRegisteredToDaoConfigDstu2Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/subscription/resthook/RestHookTestWithInterceptorRegisteredToDaoConfigDstu2Test.java @@ -4,7 +4,7 @@ import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.provider.BaseResourceProviderDstu2Test; import ca.uhn.fhir.jpa.subscription.SubscriptionTestUtil; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt; import ca.uhn.fhir.model.dstu2.composite.CodingDt; import ca.uhn.fhir.model.dstu2.resource.Observation; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/QueueChannelConsumerConfig.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/ChannelConsumerOptions.java similarity index 69% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/QueueChannelConsumerConfig.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/ChannelConsumerOptions.java index ce465b0ade7..6ca9eff31d9 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/QueueChannelConsumerConfig.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/ChannelConsumerOptions.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.channel.queue; +package ca.uhn.fhir.jpa.subscription.channel.api; /*- * #%L @@ -20,16 +20,24 @@ package ca.uhn.fhir.jpa.subscription.channel.queue; * #L% */ -public class QueueChannelConsumerConfig { +public class ChannelConsumerOptions { - private int myConcurrentConsumers; + /** + * Constructor + */ + public ChannelConsumerOptions() { + super(); + } - public int getConcurrentConsumers() { + private Integer myConcurrentConsumers; + + public Integer getConcurrentConsumers() { return myConcurrentConsumers; } - public void setConcurrentConsumers(int theConcurrentConsumers) { + public ChannelConsumerOptions setConcurrentConsumers(int theConcurrentConsumers) { myConcurrentConsumers = theConcurrentConsumers; + return this; } } diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/IQueueChannelFactory.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/IChannelFactory.java similarity index 85% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/IQueueChannelFactory.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/IChannelFactory.java index 9ec88c0e3d6..23d7b434d6d 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/IQueueChannelFactory.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/IChannelFactory.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.channel.queue; +package ca.uhn.fhir.jpa.subscription.channel.api; /*- * #%L @@ -24,13 +24,13 @@ package ca.uhn.fhir.jpa.subscription.channel.queue; * This interface is the factory for Queue Channels, which are the low level abstraction over a * queue (e.g. memory queue, JMS queue, Kafka stream, etc.) for any purpose. */ -public interface IQueueChannelFactory { +public interface IChannelFactory { /** * Create a channel that is used to receive messages from the queue. * *

- * Implementations can choose to return the same object for multiple invocations of this method (and {@link #getOrCreateReceiver(String, Class, QueueChannelConsumerConfig)} + * Implementations can choose to return the same object for multiple invocations of this method (and {@link #getOrCreateReceiver(String, Class, ChannelConsumerOptions)} * when invoked with the same {@literal theChannelName} if they need to, or they can create a new instance. *

* @@ -38,18 +38,18 @@ public interface IQueueChannelFactory { * @param theMessageType The object type that will be placed on this queue. Objects will be Jackson-annotated structures. * @param theConfig Contains the configuration for subscribers. Note that this parameter is provided for * both {@link #getOrCreateReceiver} and - * {@link #getOrCreateSender(String, Class, QueueChannelConsumerConfig)} + * {@link #getOrCreateSender(String, Class, ChannelConsumerOptions)} * even though this object is used to configure the sender only. We do this because the factory * may want to create a single object to be used for both the sender and receiver, so this allows * the config details to be known regardless of which method is returned first. */ - IQueueChannelReceiver getOrCreateReceiver(String theChannelName, Class theMessageType, QueueChannelConsumerConfig theConfig); + IChannelReceiver getOrCreateReceiver(String theChannelName, Class theMessageType, ChannelConsumerOptions theConfig); /** * Create a channel that is used to send messages to the queue. * *

- * Implementations can choose to return the same object for multiple invocations of this method (and {@link #getOrCreateReceiver(String, Class, QueueChannelConsumerConfig)} + * Implementations can choose to return the same object for multiple invocations of this method (and {@link #getOrCreateReceiver(String, Class, ChannelConsumerOptions)} * when invoked with the same {@literal theChannelName} if they need to, or they can create a new instance. *

* @@ -57,11 +57,11 @@ public interface IQueueChannelFactory { * @param theMessageType The object type that will be placed on this queue. Objects will be Jackson-annotated structures. * @param theConfig Contains the configuration for subscribers. Note that this parameter is provided for * both {@link #getOrCreateReceiver} and - * {@link #getOrCreateSender(String, Class, QueueChannelConsumerConfig)} + * {@link #getOrCreateSender(String, Class, ChannelConsumerOptions)} * even though this object is used to configure the sender only. We do this because the factory * may want to create a single object to be used for both the sender and receiver, so this allows * the config details to be known regardless of which method is returned first. */ - IQueueChannelSender getOrCreateSender(String theChannelName, Class theMessageType, QueueChannelConsumerConfig theConfig); + IChannelProducer getOrCreateSender(String theChannelName, Class theMessageType, ChannelConsumerOptions theConfig); } diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/IQueueChannelSender.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/IChannelProducer.java similarity index 80% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/IQueueChannelSender.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/IChannelProducer.java index f231347072b..d76d21f9d6e 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/IQueueChannelSender.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/IChannelProducer.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.channel.queue; +package ca.uhn.fhir.jpa.subscription.channel.api; /*- * #%L @@ -21,8 +21,7 @@ package ca.uhn.fhir.jpa.subscription.channel.queue; */ import org.springframework.messaging.MessageChannel; -import org.springframework.messaging.SubscribableChannel; import org.springframework.messaging.support.InterceptableChannel; -public interface IQueueChannelSender extends MessageChannel, InterceptableChannel { +public interface IChannelProducer extends MessageChannel, InterceptableChannel { } diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/IQueueChannelReceiver.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/IChannelReceiver.java similarity index 84% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/IQueueChannelReceiver.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/IChannelReceiver.java index eca925b288a..4c3677c4760 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/IQueueChannelReceiver.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/api/IChannelReceiver.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.channel.queue; +package ca.uhn.fhir.jpa.subscription.channel.api; /*- * #%L @@ -23,5 +23,5 @@ package ca.uhn.fhir.jpa.subscription.channel.queue; import org.springframework.messaging.SubscribableChannel; import org.springframework.messaging.support.InterceptableChannel; -public interface IQueueChannelReceiver extends SubscribableChannel, InterceptableChannel { +public interface IChannelReceiver extends SubscribableChannel, InterceptableChannel { } diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/config/SubscriptionChannelConfig.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/config/SubscriptionChannelConfig.java index cad03f33097..a56bd4f4968 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/config/SubscriptionChannelConfig.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/config/SubscriptionChannelConfig.java @@ -20,8 +20,8 @@ package ca.uhn.fhir.jpa.subscription.channel.config; * #L% */ -import ca.uhn.fhir.jpa.subscription.channel.queue.IQueueChannelFactory; -import ca.uhn.fhir.jpa.subscription.channel.queue.LinkedBlockingQueueChannelFactory; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelFactory; +import ca.uhn.fhir.jpa.subscription.channel.impl.LinkedBlockingChannelFactory; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelFactory; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -33,12 +33,12 @@ public class SubscriptionChannelConfig { * Create a @Primary @Bean if you need a different implementation */ @Bean - public IQueueChannelFactory queueChannelFactory() { - return new LinkedBlockingQueueChannelFactory(); + public IChannelFactory queueChannelFactory() { + return new LinkedBlockingChannelFactory(); } @Bean - public SubscriptionChannelFactory subscriptionChannelFactory(IQueueChannelFactory theQueueChannelFactory) { + public SubscriptionChannelFactory subscriptionChannelFactory(IChannelFactory theQueueChannelFactory) { return new SubscriptionChannelFactory(theQueueChannelFactory); } diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/LinkedBlockingQueueChannel.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/impl/LinkedBlockingChannel.java similarity index 54% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/LinkedBlockingQueueChannel.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/impl/LinkedBlockingChannel.java index 1695ac6a410..5c5565de963 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/LinkedBlockingQueueChannel.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/impl/LinkedBlockingChannel.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.channel.queue; +package ca.uhn.fhir.jpa.subscription.channel.impl; /*- * #%L @@ -20,14 +20,29 @@ package ca.uhn.fhir.jpa.subscription.channel.queue; * #L% */ +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelProducer; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelReceiver; import org.springframework.messaging.support.ExecutorSubscribableChannel; +import java.util.concurrent.BlockingQueue; import java.util.concurrent.ThreadPoolExecutor; -public class LinkedBlockingQueueChannel extends ExecutorSubscribableChannel implements IQueueChannelSender, IQueueChannelReceiver { +public class LinkedBlockingChannel extends ExecutorSubscribableChannel implements IChannelProducer, IChannelReceiver { - public LinkedBlockingQueueChannel(ThreadPoolExecutor theExecutor) { + private final BlockingQueue myQueue; + + public LinkedBlockingChannel(ThreadPoolExecutor theExecutor, BlockingQueue theQueue) { super(theExecutor); + myQueue = theQueue; } + public int getQueueSizeForUnitTest() { + return myQueue.size(); + } + + public void clearInterceptorsForUnitTest() { + while (getInterceptors().size() > 0) { + removeInterceptor(0); + } + } } diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/LinkedBlockingQueueChannelFactory.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/impl/LinkedBlockingChannelFactory.java similarity index 71% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/LinkedBlockingQueueChannelFactory.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/impl/LinkedBlockingChannelFactory.java index 2f069fe6c9d..ab806b3b28a 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/queue/LinkedBlockingQueueChannelFactory.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/impl/LinkedBlockingChannelFactory.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.channel.queue; +package ca.uhn.fhir.jpa.subscription.channel.impl; /*- * #%L @@ -20,13 +20,15 @@ package ca.uhn.fhir.jpa.subscription.channel.queue; * #L% */ -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionConstants; +import ca.uhn.fhir.jpa.subscription.channel.api.ChannelConsumerOptions; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelFactory; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelProducer; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelReceiver; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionConstants; import ca.uhn.fhir.util.StopWatch; import org.apache.commons.lang3.concurrent.BasicThreadFactory; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.messaging.SubscribableChannel; -import org.springframework.messaging.support.ExecutorSubscribableChannel; import java.util.Collections; import java.util.HashMap; @@ -38,29 +40,29 @@ import java.util.concurrent.ThreadFactory; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; -public class LinkedBlockingQueueChannelFactory implements IQueueChannelFactory { +public class LinkedBlockingChannelFactory implements IChannelFactory { - private Map myChannels = Collections.synchronizedMap(new HashMap<>()); - private static final Logger ourLog = LoggerFactory.getLogger(LinkedBlockingQueueChannelFactory.class); + private Map myChannels = Collections.synchronizedMap(new HashMap<>()); + private static final Logger ourLog = LoggerFactory.getLogger(LinkedBlockingChannelFactory.class); /** * Constructor */ - public LinkedBlockingQueueChannelFactory() { + public LinkedBlockingChannelFactory() { super(); } @Override - public IQueueChannelReceiver getOrCreateReceiver(String theChannelName, Class theMessageType, QueueChannelConsumerConfig theConfig) { + public IChannelReceiver getOrCreateReceiver(String theChannelName, Class theMessageType, ChannelConsumerOptions theConfig) { return getOrCreateChannel(theChannelName, theConfig.getConcurrentConsumers()); } @Override - public IQueueChannelSender getOrCreateSender(String theChannelName, Class theMessageType, QueueChannelConsumerConfig theConfig) { + public IChannelProducer getOrCreateSender(String theChannelName, Class theMessageType, ChannelConsumerOptions theConfig) { return getOrCreateChannel(theChannelName, theConfig.getConcurrentConsumers()); } - private LinkedBlockingQueueChannel getOrCreateChannel(String theChannelName, int theConcurrentConsumers) { + private LinkedBlockingChannel getOrCreateChannel(String theChannelName, int theConcurrentConsumers) { return myChannels.computeIfAbsent(theChannelName, t -> { String threadNamingPattern = theChannelName + "-%d"; @@ -92,7 +94,7 @@ public class LinkedBlockingQueueChannelFactory implements IQueueChannelFactory { queue, threadFactory, rejectedExecutionHandler); - return new LinkedBlockingQueueChannel(executor); + return new LinkedBlockingChannel(executor, queue); }); } diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelCache.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelCache.java index 142de6b4aeb..7cb9034c858 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelCache.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelCache.java @@ -20,7 +20,7 @@ package ca.uhn.fhir.jpa.subscription.channel.subscription; * #L% */ -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import org.apache.commons.lang3.Validate; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelFactory.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelFactory.java index c25aab6bfa0..c543a1c6f7f 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelFactory.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelFactory.java @@ -20,13 +20,13 @@ package ca.uhn.fhir.jpa.subscription.channel.subscription; * #L% */ -import ca.uhn.fhir.jpa.subscription.channel.queue.IQueueChannelFactory; -import ca.uhn.fhir.jpa.subscription.channel.queue.IQueueChannelReceiver; -import ca.uhn.fhir.jpa.subscription.channel.queue.IQueueChannelSender; -import ca.uhn.fhir.jpa.subscription.channel.queue.QueueChannelConsumerConfig; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelFactory; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelReceiver; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelProducer; +import ca.uhn.fhir.jpa.subscription.channel.api.ChannelConsumerOptions; import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryJsonMessage; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedJsonMessage; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionConstants; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionConstants; import org.apache.commons.lang3.Validate; import org.springframework.beans.factory.DisposableBean; import org.springframework.messaging.Message; @@ -37,46 +37,46 @@ import org.springframework.messaging.support.ChannelInterceptor; public class SubscriptionChannelFactory { - private final IQueueChannelFactory myQueueChannelFactory; + private final IChannelFactory myQueueChannelFactory; /** * Constructor */ - public SubscriptionChannelFactory(IQueueChannelFactory theQueueChannelFactory) { + public SubscriptionChannelFactory(IChannelFactory theQueueChannelFactory) { Validate.notNull(theQueueChannelFactory); myQueueChannelFactory = theQueueChannelFactory; } - public IQueueChannelSender newDeliverySendingChannel(String theChannelName) { - QueueChannelConsumerConfig config = newConfigForDeliveryChannel(); + public IChannelProducer newDeliverySendingChannel(String theChannelName, ChannelConsumerOptions theOptions) { + ChannelConsumerOptions config = newConfigForDeliveryChannel(theOptions); return myQueueChannelFactory.getOrCreateSender(theChannelName, ResourceDeliveryJsonMessage.class, config); } - public IQueueChannelReceiver newDeliveryReceivingChannel(String theChannelName) { - QueueChannelConsumerConfig config = newConfigForDeliveryChannel(); - IQueueChannelReceiver channel = myQueueChannelFactory.getOrCreateReceiver(theChannelName, ResourceDeliveryJsonMessage.class, config); + public IChannelReceiver newDeliveryReceivingChannel(String theChannelName, ChannelConsumerOptions theOptions) { + ChannelConsumerOptions config = newConfigForDeliveryChannel(theOptions); + IChannelReceiver channel = myQueueChannelFactory.getOrCreateReceiver(theChannelName, ResourceDeliveryJsonMessage.class, config); return new BroadcastingSubscribableChannelWrapper(channel); } - public IQueueChannelSender newMatchingSendingChannel(String theChannelName) { - QueueChannelConsumerConfig config = newConfigForMatchingChannel(); + public IChannelProducer newMatchingSendingChannel(String theChannelName, ChannelConsumerOptions theOptions) { + ChannelConsumerOptions config = newConfigForMatchingChannel(theOptions); return myQueueChannelFactory.getOrCreateSender(theChannelName, ResourceModifiedJsonMessage.class, config); } - public IQueueChannelReceiver newMatchingReceivingChannel(String theChannelName) { - QueueChannelConsumerConfig config = newConfigForMatchingChannel(); - IQueueChannelReceiver channel = myQueueChannelFactory.getOrCreateReceiver(theChannelName, ResourceModifiedJsonMessage.class, config); + public IChannelReceiver newMatchingReceivingChannel(String theChannelName, ChannelConsumerOptions theOptions) { + ChannelConsumerOptions config = newConfigForMatchingChannel(theOptions); + IChannelReceiver channel = myQueueChannelFactory.getOrCreateReceiver(theChannelName, ResourceModifiedJsonMessage.class, config); return new BroadcastingSubscribableChannelWrapper(channel); } - protected QueueChannelConsumerConfig newConfigForDeliveryChannel() { - QueueChannelConsumerConfig config = new QueueChannelConsumerConfig(); + protected ChannelConsumerOptions newConfigForDeliveryChannel(ChannelConsumerOptions theOptions) { + ChannelConsumerOptions config = new ChannelConsumerOptions(); config.setConcurrentConsumers(getDeliveryChannelConcurrentConsumers()); return config; } - protected QueueChannelConsumerConfig newConfigForMatchingChannel() { - QueueChannelConsumerConfig config = new QueueChannelConsumerConfig(); + protected ChannelConsumerOptions newConfigForMatchingChannel(ChannelConsumerOptions theOptions) { + ChannelConsumerOptions config = new ChannelConsumerOptions(); config.setConcurrentConsumers(getMatchingChannelConcurrentConsumers()); return config; } @@ -89,11 +89,11 @@ public class SubscriptionChannelFactory { return SubscriptionConstants.MATCHING_CHANNEL_CONCURRENT_CONSUMERS; } - public static class BroadcastingSubscribableChannelWrapper extends AbstractSubscribableChannel implements IQueueChannelReceiver, DisposableBean { + public static class BroadcastingSubscribableChannelWrapper extends AbstractSubscribableChannel implements IChannelReceiver, DisposableBean { - private final IQueueChannelReceiver myWrappedChannel; + private final IChannelReceiver myWrappedChannel; - public BroadcastingSubscribableChannelWrapper(IQueueChannelReceiver theChannel) { + public BroadcastingSubscribableChannelWrapper(IChannelReceiver theChannel) { theChannel.subscribe(message -> send(message)); myWrappedChannel = theChannel; } diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelRegistry.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelRegistry.java index f38def3d0f9..02ffc05022b 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelRegistry.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelRegistry.java @@ -20,8 +20,10 @@ package ca.uhn.fhir.jpa.subscription.channel.subscription; * #L% */ -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelProducer; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelReceiver; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import com.google.common.collect.Multimap; import com.google.common.collect.MultimapBuilder; import org.slf4j.Logger; @@ -29,7 +31,6 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.messaging.MessageChannel; import org.springframework.messaging.MessageHandler; -import org.springframework.messaging.SubscribableChannel; import java.util.Map; import java.util.Optional; @@ -42,7 +43,7 @@ public class SubscriptionChannelRegistry { // This map is a reference count so we know to destroy the channel when there are no more active subscriptions using it // Key Channel Name, Value Subscription Id private final Multimap myActiveSubscriptionByChannelName = MultimapBuilder.hashKeys().arrayListValues().build(); - private final Map myChannelNameToSender = new ConcurrentHashMap<>(); + private final Map myChannelNameToSender = new ConcurrentHashMap<>(); @Autowired private SubscriptionDeliveryHandlerFactory mySubscriptionDeliveryHandlerFactory; @@ -59,23 +60,31 @@ public class SubscriptionChannelRegistry { return; } - SubscribableChannel deliveryChannel = mySubscriptionDeliveryChannelFactory.newDeliveryReceivingChannel(channelName); + IChannelReceiver channelReceiver = newReceivingChannel(channelName); Optional deliveryHandler = mySubscriptionDeliveryHandlerFactory.createDeliveryHandler(theActiveSubscription.getChannelType()); - SubscriptionChannelWithHandlers subscriptionChannelWithHandlers = new SubscriptionChannelWithHandlers(channelName, deliveryChannel); + SubscriptionChannelWithHandlers subscriptionChannelWithHandlers = new SubscriptionChannelWithHandlers(channelName, channelReceiver); deliveryHandler.ifPresent(subscriptionChannelWithHandlers::addHandler); myDeliveryReceiverChannels.put(channelName, subscriptionChannelWithHandlers); - MessageChannel sendingChannel = mySubscriptionDeliveryChannelFactory.newDeliverySendingChannel(channelName); + IChannelProducer sendingChannel = newSendingChannel(channelName); myChannelNameToSender.put(channelName, sendingChannel); } + protected IChannelReceiver newReceivingChannel(String theChannelName) { + return mySubscriptionDeliveryChannelFactory.newDeliveryReceivingChannel(theChannelName, null); + } + + protected IChannelProducer newSendingChannel(String theChannelName) { + return mySubscriptionDeliveryChannelFactory.newDeliverySendingChannel(theChannelName, null); + } + public synchronized void remove(ActiveSubscription theActiveSubscription) { String channelName = theActiveSubscription.getChannelName(); - ourLog.info("Removing subscription {} from channel {}", theActiveSubscription.getId() ,channelName); + ourLog.info("Removing subscription {} from channel {}", theActiveSubscription.getId(), channelName); boolean removed = myActiveSubscriptionByChannelName.remove(channelName, theActiveSubscription.getId()); if (!removed) { - ourLog.warn("Failed to remove subscription {} from channel {}", theActiveSubscription.getId() ,channelName); + ourLog.warn("Failed to remove subscription {} from channel {}", theActiveSubscription.getId(), channelName); } // This was the last one. Close and remove the channel diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelWithHandlers.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelWithHandlers.java index b262a3b808b..a48c4c7a7dc 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelWithHandlers.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelWithHandlers.java @@ -20,7 +20,7 @@ package ca.uhn.fhir.jpa.subscription.channel.subscription; * #L% */ -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; import com.google.common.annotations.VisibleForTesting; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionDeliveryHandlerFactory.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionDeliveryHandlerFactory.java index 6c110c616b5..1578e1183c8 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionDeliveryHandlerFactory.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionDeliveryHandlerFactory.java @@ -21,14 +21,12 @@ package ca.uhn.fhir.jpa.subscription.channel.subscription; */ import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscriptionChannelType; -import ca.uhn.fhir.jpa.subscription.process.deliver.email.IEmailSender; -import ca.uhn.fhir.jpa.subscription.process.deliver.email.SubscriptionDeliveringEmailSubscriber; -import ca.uhn.fhir.jpa.subscription.process.deliver.resthook.SubscriptionDeliveringRestHookSubscriber; +import ca.uhn.fhir.jpa.subscription.match.deliver.email.IEmailSender; +import ca.uhn.fhir.jpa.subscription.match.deliver.email.SubscriptionDeliveringEmailSubscriber; +import ca.uhn.fhir.jpa.subscription.match.deliver.resthook.SubscriptionDeliveringRestHookSubscriber; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Lookup; import org.springframework.context.ApplicationContext; import org.springframework.messaging.MessageHandler; -import org.springframework.stereotype.Component; import java.util.Optional; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/config/SubscriptionProcessorConfig.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/config/SubscriptionProcessorConfig.java similarity index 68% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/config/SubscriptionProcessorConfig.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/config/SubscriptionProcessorConfig.java index 318ab1c403a..0ba326a43a7 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/config/SubscriptionProcessorConfig.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/config/SubscriptionProcessorConfig.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.config; +package ca.uhn.fhir.jpa.subscription.match.config; /*- * #%L @@ -24,29 +24,25 @@ import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelRegi import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionDeliveryChannelNamer; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionDeliveryHandlerFactory; import ca.uhn.fhir.jpa.subscription.model.config.SubscriptionModelConfig; -import ca.uhn.fhir.jpa.subscription.process.deliver.DaoResourceRetriever; -import ca.uhn.fhir.jpa.subscription.process.deliver.IResourceRetriever; -import ca.uhn.fhir.jpa.subscription.process.deliver.email.IEmailSender; -import ca.uhn.fhir.jpa.subscription.process.deliver.email.SubscriptionDeliveringEmailSubscriber; -import ca.uhn.fhir.jpa.subscription.process.deliver.resthook.SubscriptionDeliveringRestHookSubscriber; -import ca.uhn.fhir.jpa.subscription.process.deliver.websocket.WebsocketConnectionValidator; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.CompositeInMemoryDaoSubscriptionMatcher; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.DaoSubscriptionMatcher; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.ISubscriptionMatcher; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.InMemorySubscriptionMatcher; -import ca.uhn.fhir.jpa.subscription.process.matcher.subscriber.MatchingQueueSubscriberLoader; -import ca.uhn.fhir.jpa.subscription.process.matcher.subscriber.SubscriptionActivatingSubscriber; -import ca.uhn.fhir.jpa.subscription.process.matcher.subscriber.SubscriptionMatchingSubscriber; -import ca.uhn.fhir.jpa.subscription.process.matcher.subscriber.SubscriptionRegisteringSubscriber; -import ca.uhn.fhir.jpa.subscription.process.registry.DaoSubscriptionProvider; -import ca.uhn.fhir.jpa.subscription.process.registry.ISubscriptionProvider; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionLoader; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; -import ca.uhn.fhir.jpa.subscription.triggering.ISubscriptionTriggeringSvc; -import ca.uhn.fhir.jpa.subscription.triggering.SubscriptionTriggeringSvcImpl; +import ca.uhn.fhir.jpa.subscription.match.deliver.DaoResourceRetriever; +import ca.uhn.fhir.jpa.subscription.match.deliver.IResourceRetriever; +import ca.uhn.fhir.jpa.subscription.match.deliver.email.IEmailSender; +import ca.uhn.fhir.jpa.subscription.match.deliver.email.SubscriptionDeliveringEmailSubscriber; +import ca.uhn.fhir.jpa.subscription.match.deliver.resthook.SubscriptionDeliveringRestHookSubscriber; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.CompositeInMemoryDaoSubscriptionMatcher; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.DaoSubscriptionMatcher; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.ISubscriptionMatcher; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.InMemorySubscriptionMatcher; +import ca.uhn.fhir.jpa.subscription.match.matcher.subscriber.MatchingQueueSubscriberLoader; +import ca.uhn.fhir.jpa.subscription.match.matcher.subscriber.SubscriptionActivatingSubscriber; +import ca.uhn.fhir.jpa.subscription.match.matcher.subscriber.SubscriptionMatchingSubscriber; +import ca.uhn.fhir.jpa.subscription.match.matcher.subscriber.SubscriptionRegisteringSubscriber; +import ca.uhn.fhir.jpa.subscription.match.registry.DaoSubscriptionProvider; +import ca.uhn.fhir.jpa.subscription.match.registry.ISubscriptionProvider; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionLoader; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Import; -import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Primary; import org.springframework.context.annotation.Scope; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/config/WebsocketDispatcherConfig.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/config/WebsocketDispatcherConfig.java similarity index 89% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/config/WebsocketDispatcherConfig.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/config/WebsocketDispatcherConfig.java index 845c52322b9..cbbbef5fe88 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/config/WebsocketDispatcherConfig.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/config/WebsocketDispatcherConfig.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.config; +package ca.uhn.fhir.jpa.subscription.match.config; /* * #%L @@ -21,8 +21,8 @@ package ca.uhn.fhir.jpa.subscription.process.config; */ import ca.uhn.fhir.jpa.model.entity.ModelConfig; -import ca.uhn.fhir.jpa.subscription.process.deliver.websocket.SubscriptionWebsocketHandler; -import ca.uhn.fhir.jpa.subscription.process.deliver.websocket.WebsocketConnectionValidator; +import ca.uhn.fhir.jpa.subscription.match.deliver.websocket.SubscriptionWebsocketHandler; +import ca.uhn.fhir.jpa.subscription.match.deliver.websocket.WebsocketConnectionValidator; import org.springframework.beans.factory.annotation.Autowire; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/BaseSubscriptionDeliverySubscriber.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/BaseSubscriptionDeliverySubscriber.java similarity index 95% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/BaseSubscriptionDeliverySubscriber.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/BaseSubscriptionDeliverySubscriber.java index d8745eef8d6..a9c59b8376f 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/BaseSubscriptionDeliverySubscriber.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/BaseSubscriptionDeliverySubscriber.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver; +package ca.uhn.fhir.jpa.subscription.match.deliver; /*- * #%L @@ -26,8 +26,8 @@ import ca.uhn.fhir.interceptor.api.IInterceptorBroadcaster; import ca.uhn.fhir.interceptor.api.Pointcut; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryMessage; -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import com.google.common.annotations.VisibleForTesting; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/DaoResourceRetriever.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/DaoResourceRetriever.java similarity index 92% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/DaoResourceRetriever.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/DaoResourceRetriever.java index 2b7d740841a..f7891507e40 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/DaoResourceRetriever.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/DaoResourceRetriever.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver; +package ca.uhn.fhir.jpa.subscription.match.deliver; /*- * #%L @@ -24,9 +24,8 @@ import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.RuntimeResourceDefinition; import ca.uhn.fhir.jpa.api.dao.DaoRegistry; import ca.uhn.fhir.jpa.api.dao.IFhirResourceDao; -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; import ca.uhn.fhir.rest.server.exceptions.ResourceGoneException; -import ca.uhn.fhir.util.FhirTerser; import org.hl7.fhir.instance.model.api.IBaseResource; import org.hl7.fhir.instance.model.api.IIdType; import org.slf4j.Logger; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/IResourceRetriever.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/IResourceRetriever.java similarity index 94% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/IResourceRetriever.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/IResourceRetriever.java index 930cc43f880..cba62b70fc7 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/IResourceRetriever.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/IResourceRetriever.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver; +package ca.uhn.fhir.jpa.subscription.match.deliver; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/EmailDetails.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/EmailDetails.java similarity index 96% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/EmailDetails.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/EmailDetails.java index de8c89a4928..bb1c2cfcfb1 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/EmailDetails.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/EmailDetails.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver.email; +package ca.uhn.fhir.jpa.subscription.match.deliver.email; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/IEmailSender.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/IEmailSender.java similarity index 92% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/IEmailSender.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/IEmailSender.java index f6f08d17f8b..a327d3aac76 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/IEmailSender.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/IEmailSender.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver.email; +package ca.uhn.fhir.jpa.subscription.match.deliver.email; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/JavaMailEmailSender.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/JavaMailEmailSender.java similarity index 98% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/JavaMailEmailSender.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/JavaMailEmailSender.java index 31f8aaeec6d..feb670436ba 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/JavaMailEmailSender.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/JavaMailEmailSender.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver.email; +package ca.uhn.fhir.jpa.subscription.match.deliver.email; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/SubscriptionDeliveringEmailSubscriber.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/SubscriptionDeliveringEmailSubscriber.java similarity index 94% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/SubscriptionDeliveringEmailSubscriber.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/SubscriptionDeliveringEmailSubscriber.java index cd4eeab97aa..55303d75b4f 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/email/SubscriptionDeliveringEmailSubscriber.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/email/SubscriptionDeliveringEmailSubscriber.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver.email; +package ca.uhn.fhir.jpa.subscription.match.deliver.email; /*- * #%L @@ -23,7 +23,7 @@ package ca.uhn.fhir.jpa.subscription.process.deliver.email; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.jpa.model.entity.ModelConfig; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; -import ca.uhn.fhir.jpa.subscription.process.deliver.BaseSubscriptionDeliverySubscriber; +import ca.uhn.fhir.jpa.subscription.match.deliver.BaseSubscriptionDeliverySubscriber; import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryMessage; import ca.uhn.fhir.rest.api.EncodingEnum; import org.apache.commons.lang3.StringUtils; @@ -31,7 +31,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Scope; -import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.List; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/resthook/SubscriptionDeliveringRestHookSubscriber.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/resthook/SubscriptionDeliveringRestHookSubscriber.java similarity index 96% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/resthook/SubscriptionDeliveringRestHookSubscriber.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/resthook/SubscriptionDeliveringRestHookSubscriber.java index 1af1029bd54..aab011e9e7a 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/resthook/SubscriptionDeliveringRestHookSubscriber.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/resthook/SubscriptionDeliveringRestHookSubscriber.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver.resthook; +package ca.uhn.fhir.jpa.subscription.match.deliver.resthook; /*- * #%L @@ -24,8 +24,8 @@ import ca.uhn.fhir.interceptor.api.HookParams; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; import ca.uhn.fhir.interceptor.api.Pointcut; import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryMessage; -import ca.uhn.fhir.jpa.subscription.process.deliver.BaseSubscriptionDeliverySubscriber; -import ca.uhn.fhir.jpa.subscription.process.deliver.IResourceRetriever; +import ca.uhn.fhir.jpa.subscription.match.deliver.BaseSubscriptionDeliverySubscriber; +import ca.uhn.fhir.jpa.subscription.match.deliver.IResourceRetriever; import ca.uhn.fhir.rest.api.EncodingEnum; import ca.uhn.fhir.rest.api.RequestTypeEnum; import ca.uhn.fhir.rest.client.api.*; @@ -41,7 +41,6 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Scope; import org.springframework.messaging.MessagingException; -import org.springframework.stereotype.Component; import java.io.IOException; import java.util.*; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/websocket/SubscriptionWebsocketHandler.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/websocket/SubscriptionWebsocketHandler.java similarity index 98% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/websocket/SubscriptionWebsocketHandler.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/websocket/SubscriptionWebsocketHandler.java index c36e686de85..dbefcf7249b 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/websocket/SubscriptionWebsocketHandler.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/websocket/SubscriptionWebsocketHandler.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver.websocket; +package ca.uhn.fhir.jpa.subscription.match.deliver.websocket; /* * #%L @@ -21,7 +21,7 @@ package ca.uhn.fhir.jpa.subscription.process.deliver.websocket; */ import ca.uhn.fhir.context.FhirContext; -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelRegistry; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelWithHandlers; import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryMessage; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/websocket/WebsocketConnectionValidator.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/websocket/WebsocketConnectionValidator.java similarity index 91% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/websocket/WebsocketConnectionValidator.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/websocket/WebsocketConnectionValidator.java index 73819f05db2..a454eafba10 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/websocket/WebsocketConnectionValidator.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/websocket/WebsocketConnectionValidator.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver.websocket; +package ca.uhn.fhir.jpa.subscription.match.deliver.websocket; /*- * #%L @@ -21,8 +21,8 @@ package ca.uhn.fhir.jpa.subscription.process.deliver.websocket; */ import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscriptionChannelType; -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import com.sun.istack.NotNull; import org.hl7.fhir.r4.model.IdType; import org.slf4j.Logger; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/websocket/WebsocketValidationResponse.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/websocket/WebsocketValidationResponse.java similarity index 92% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/websocket/WebsocketValidationResponse.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/websocket/WebsocketValidationResponse.java index 483143e8d3d..355ca0b7066 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/deliver/websocket/WebsocketValidationResponse.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/deliver/websocket/WebsocketValidationResponse.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver.websocket; +package ca.uhn.fhir.jpa.subscription.match.deliver.websocket; /*- * #%L @@ -20,7 +20,7 @@ package ca.uhn.fhir.jpa.subscription.process.deliver.websocket; * #L% */ -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; public class WebsocketValidationResponse { private final boolean myValid; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/CompositeInMemoryDaoSubscriptionMatcher.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/CompositeInMemoryDaoSubscriptionMatcher.java similarity index 97% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/CompositeInMemoryDaoSubscriptionMatcher.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/CompositeInMemoryDaoSubscriptionMatcher.java index 46bd57c02e6..5b16a5400b2 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/CompositeInMemoryDaoSubscriptionMatcher.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/CompositeInMemoryDaoSubscriptionMatcher.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.matching; +package ca.uhn.fhir.jpa.subscription.match.matcher.matching; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/DaoSubscriptionMatcher.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/DaoSubscriptionMatcher.java similarity index 92% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/DaoSubscriptionMatcher.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/DaoSubscriptionMatcher.java index d01676ad6f0..35e0d01e3d9 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/DaoSubscriptionMatcher.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/DaoSubscriptionMatcher.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.matching; +package ca.uhn.fhir.jpa.subscription.match.matcher.matching; /*- * #%L @@ -35,9 +35,6 @@ import org.hl7.fhir.instance.model.api.IIdType; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.transaction.PlatformTransactionManager; -import org.springframework.transaction.TransactionDefinition; -import org.springframework.transaction.support.TransactionTemplate; public class DaoSubscriptionMatcher implements ISubscriptionMatcher { @Autowired diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/IResourceModifiedConsumer.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/IResourceModifiedConsumer.java similarity index 95% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/IResourceModifiedConsumer.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/IResourceModifiedConsumer.java index d03b0054ad7..e02a5bdd82d 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/IResourceModifiedConsumer.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/IResourceModifiedConsumer.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.matching; +package ca.uhn.fhir.jpa.subscription.match.matcher.matching; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/ISubscriptionMatcher.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/ISubscriptionMatcher.java similarity index 94% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/ISubscriptionMatcher.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/ISubscriptionMatcher.java index 7545ef16db6..0880bbadfb9 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/ISubscriptionMatcher.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/ISubscriptionMatcher.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.matching; +package ca.uhn.fhir.jpa.subscription.match.matcher.matching; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/InMemorySubscriptionMatcher.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/InMemorySubscriptionMatcher.java similarity index 96% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/InMemorySubscriptionMatcher.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/InMemorySubscriptionMatcher.java index f81d23a7e98..5eb0d304e9b 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/InMemorySubscriptionMatcher.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/InMemorySubscriptionMatcher.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.matching; +package ca.uhn.fhir.jpa.subscription.match.matcher.matching; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/SubscriptionMatchingStrategy.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/SubscriptionMatchingStrategy.java similarity index 94% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/SubscriptionMatchingStrategy.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/SubscriptionMatchingStrategy.java index 63303994d9d..b8f9e034d43 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/SubscriptionMatchingStrategy.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/SubscriptionMatchingStrategy.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.matching; +package ca.uhn.fhir.jpa.subscription.match.matcher.matching; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/SubscriptionStrategyEvaluator.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/SubscriptionStrategyEvaluator.java similarity index 95% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/SubscriptionStrategyEvaluator.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/SubscriptionStrategyEvaluator.java index e0ac8dbcdbc..8075ae877c1 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/SubscriptionStrategyEvaluator.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/SubscriptionStrategyEvaluator.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.matching; +package ca.uhn.fhir.jpa.subscription.match.matcher.matching; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/BaseSubscriberForSubscriptionResources.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/BaseSubscriberForSubscriptionResources.java similarity index 96% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/BaseSubscriberForSubscriptionResources.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/BaseSubscriberForSubscriptionResources.java index d81a86a8212..1fec3659b80 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/BaseSubscriberForSubscriptionResources.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/BaseSubscriberForSubscriptionResources.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.subscriber; +package ca.uhn.fhir.jpa.subscription.match.matcher.subscriber; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/MatchingQueueSubscriberLoader.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/MatchingQueueSubscriberLoader.java similarity index 86% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/MatchingQueueSubscriberLoader.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/MatchingQueueSubscriberLoader.java index ddb73db0863..8c3d63a1841 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/MatchingQueueSubscriberLoader.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/MatchingQueueSubscriberLoader.java @@ -1,19 +1,16 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.subscriber; +package ca.uhn.fhir.jpa.subscription.match.matcher.subscriber; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelFactory; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.event.ContextRefreshedEvent; -import org.springframework.context.event.ContextStartedEvent; import org.springframework.context.event.EventListener; -import org.springframework.messaging.MessageHandler; import org.springframework.messaging.SubscribableChannel; -import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; -import static ca.uhn.fhir.jpa.subscription.process.matcher.subscriber.SubscriptionMatchingSubscriber.SUBSCRIPTION_MATCHING_CHANNEL_NAME; +import static ca.uhn.fhir.jpa.subscription.match.matcher.subscriber.SubscriptionMatchingSubscriber.SUBSCRIPTION_MATCHING_CHANNEL_NAME; /*- * #%L @@ -52,7 +49,7 @@ public class MatchingQueueSubscriberLoader { @EventListener(classes = {ContextRefreshedEvent.class}) public void handleContextRefreshEvent() { if (myMatchingChannel == null) { - myMatchingChannel = mySubscriptionChannelFactory.newMatchingReceivingChannel(SUBSCRIPTION_MATCHING_CHANNEL_NAME); + myMatchingChannel = mySubscriptionChannelFactory.newMatchingReceivingChannel(SUBSCRIPTION_MATCHING_CHANNEL_NAME, null); } if (myMatchingChannel != null) { myMatchingChannel.subscribe(mySubscriptionMatchingSubscriber); diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/SubscriptionActivatingSubscriber.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/SubscriptionActivatingSubscriber.java similarity index 93% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/SubscriptionActivatingSubscriber.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/SubscriptionActivatingSubscriber.java index a40495af6c0..19244caa86a 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/SubscriptionActivatingSubscriber.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/SubscriptionActivatingSubscriber.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.subscriber; +package ca.uhn.fhir.jpa.subscription.match.matcher.subscriber; /*- * #%L @@ -26,10 +26,10 @@ import ca.uhn.fhir.jpa.api.dao.IFhirResourceDao; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscriptionChannelType; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedJsonMessage; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedMessage; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.SubscriptionStrategyEvaluator; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionCanonicalizer; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionConstants; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionStrategyEvaluator; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionCanonicalizer; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionConstants; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import ca.uhn.fhir.rest.server.exceptions.UnprocessableEntityException; import ca.uhn.fhir.util.SubscriptionUtil; import org.hl7.fhir.instance.model.api.IBaseResource; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/SubscriptionMatchingSubscriber.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/SubscriptionMatchingSubscriber.java similarity index 96% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/SubscriptionMatchingSubscriber.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/SubscriptionMatchingSubscriber.java index e987eddfdc0..fe96e8f0340 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/SubscriptionMatchingSubscriber.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/SubscriptionMatchingSubscriber.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.subscriber; +package ca.uhn.fhir.jpa.subscription.match.matcher.subscriber; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.interceptor.api.HookParams; @@ -11,9 +11,9 @@ import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryJsonMessage; import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryMessage; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedJsonMessage; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedMessage; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.ISubscriptionMatcher; -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.ISubscriptionMatcher; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import ca.uhn.fhir.rest.api.EncodingEnum; import org.apache.commons.lang3.StringUtils; import org.hl7.fhir.instance.model.api.IBaseResource; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/SubscriptionRegisteringSubscriber.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/SubscriptionRegisteringSubscriber.java similarity index 93% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/SubscriptionRegisteringSubscriber.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/SubscriptionRegisteringSubscriber.java index cd64a0b07b2..7684d0d760f 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/matcher/subscriber/SubscriptionRegisteringSubscriber.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/matcher/subscriber/SubscriptionRegisteringSubscriber.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.subscriber; +package ca.uhn.fhir.jpa.subscription.match.matcher.subscriber; /*- * #%L @@ -22,8 +22,8 @@ package ca.uhn.fhir.jpa.subscription.process.matcher.subscriber; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedMessage; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionCanonicalizer; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionCanonicalizer; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedJsonMessage; import org.hl7.fhir.instance.model.api.IBaseResource; import org.slf4j.Logger; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/ActiveSubscription.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/ActiveSubscription.java similarity index 97% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/ActiveSubscription.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/ActiveSubscription.java index 1ea5160ac6d..cfab5cf8f8c 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/ActiveSubscription.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/ActiveSubscription.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.registry; +package ca.uhn.fhir.jpa.subscription.match.registry; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/ActiveSubscriptionCache.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/ActiveSubscriptionCache.java similarity index 97% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/ActiveSubscriptionCache.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/ActiveSubscriptionCache.java index d21161f5370..e9bbef87d90 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/ActiveSubscriptionCache.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/ActiveSubscriptionCache.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.registry; +package ca.uhn.fhir.jpa.subscription.match.registry; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/DaoSubscriptionProvider.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/DaoSubscriptionProvider.java similarity index 91% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/DaoSubscriptionProvider.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/DaoSubscriptionProvider.java index adb4b885534..6a0fb5b98c8 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/DaoSubscriptionProvider.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/DaoSubscriptionProvider.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.registry; +package ca.uhn.fhir.jpa.subscription.match.registry; /*- * #%L @@ -23,7 +23,7 @@ package ca.uhn.fhir.jpa.subscription.process.registry; import ca.uhn.fhir.jpa.api.dao.DaoRegistry; import ca.uhn.fhir.jpa.api.dao.IFhirResourceDao; import ca.uhn.fhir.jpa.searchparam.SearchParameterMap; -import ca.uhn.fhir.jpa.subscription.process.matcher.subscriber.SubscriptionActivatingSubscriber; +import ca.uhn.fhir.jpa.subscription.match.matcher.subscriber.SubscriptionActivatingSubscriber; import ca.uhn.fhir.rest.api.server.IBundleProvider; import org.hl7.fhir.instance.model.api.IBaseResource; import org.springframework.beans.factory.annotation.Autowired; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/ISubscriptionProvider.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/ISubscriptionProvider.java similarity index 94% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/ISubscriptionProvider.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/ISubscriptionProvider.java index a8afb1ccde4..2e3be81b188 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/ISubscriptionProvider.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/ISubscriptionProvider.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.registry; +package ca.uhn.fhir.jpa.subscription.match.registry; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionCanonicalizer.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionCanonicalizer.java similarity index 99% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionCanonicalizer.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionCanonicalizer.java index bd8d75f3cf2..2d482011869 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionCanonicalizer.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionCanonicalizer.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.registry; +package ca.uhn.fhir.jpa.subscription.match.registry; /*- * #%L @@ -25,7 +25,7 @@ import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.jpa.model.util.JpaConstants; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscriptionChannelType; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.SubscriptionMatchingStrategy; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionMatchingStrategy; import ca.uhn.fhir.model.dstu2.resource.Subscription; import ca.uhn.fhir.rest.server.exceptions.InternalErrorException; import ca.uhn.fhir.rest.server.exceptions.PreconditionFailedException; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionConstants.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionConstants.java similarity index 96% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionConstants.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionConstants.java index e4f9254c845..c0d2b5860b1 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionConstants.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionConstants.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.registry; +package ca.uhn.fhir.jpa.subscription.match.registry; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionLoader.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionLoader.java similarity index 99% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionLoader.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionLoader.java index 90757e100f0..e27e27ea6d5 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionLoader.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionLoader.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.registry; +package ca.uhn.fhir.jpa.subscription.match.registry; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionRegistry.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionRegistry.java similarity index 99% rename from hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionRegistry.java rename to hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionRegistry.java index 0a03f8b11a3..fbe09f6452e 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/process/registry/SubscriptionRegistry.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/match/registry/SubscriptionRegistry.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.registry; +package ca.uhn.fhir.jpa.subscription.match.registry; /*- * #%L diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/model/config/SubscriptionModelConfig.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/model/config/SubscriptionModelConfig.java index 2812747cf41..4cb80cb599d 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/model/config/SubscriptionModelConfig.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/model/config/SubscriptionModelConfig.java @@ -21,8 +21,8 @@ package ca.uhn.fhir.jpa.subscription.model.config; */ import ca.uhn.fhir.context.FhirContext; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.SubscriptionStrategyEvaluator; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionCanonicalizer; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionStrategyEvaluator; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionCanonicalizer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionMatcherInterceptor.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionMatcherInterceptor.java index 49b6c74380d..d8136070cb4 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionMatcherInterceptor.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionMatcherInterceptor.java @@ -6,12 +6,12 @@ import ca.uhn.fhir.interceptor.api.HookParams; import ca.uhn.fhir.interceptor.api.IInterceptorBroadcaster; import ca.uhn.fhir.interceptor.api.Interceptor; import ca.uhn.fhir.interceptor.api.Pointcut; -import ca.uhn.fhir.jpa.subscription.channel.queue.LinkedBlockingQueueChannel; +import ca.uhn.fhir.jpa.subscription.channel.impl.LinkedBlockingChannel; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelFactory; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedJsonMessage; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedMessage; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.IResourceModifiedConsumer; -import ca.uhn.fhir.jpa.subscription.process.matcher.subscriber.SubscriptionMatchingSubscriber; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.IResourceModifiedConsumer; +import ca.uhn.fhir.jpa.subscription.match.matcher.subscriber.SubscriptionMatchingSubscriber; import ca.uhn.fhir.jpa.util.JpaInterceptorBroadcaster; import ca.uhn.fhir.rest.api.server.RequestDetails; import com.google.common.annotations.VisibleForTesting; @@ -26,8 +26,6 @@ import org.springframework.messaging.MessageChannel; import org.springframework.transaction.support.TransactionSynchronizationAdapter; import org.springframework.transaction.support.TransactionSynchronizationManager; -import javax.annotation.PostConstruct; - /*- * #%L * HAPI FHIR Subscription Server @@ -70,7 +68,7 @@ public class SubscriptionMatcherInterceptor implements IResourceModifiedConsumer @EventListener(classes = {ContextRefreshedEvent.class}) public void startIfNeeded() { if (myMatchingChannel == null) { - myMatchingChannel = mySubscriptionChannelFactory.newMatchingSendingChannel(SubscriptionMatchingSubscriber.SUBSCRIPTION_MATCHING_CHANNEL_NAME); + myMatchingChannel = mySubscriptionChannelFactory.newMatchingSendingChannel(SubscriptionMatchingSubscriber.SUBSCRIPTION_MATCHING_CHANNEL_NAME, null); } } @@ -148,7 +146,7 @@ public class SubscriptionMatcherInterceptor implements IResourceModifiedConsumer } @VisibleForTesting - public LinkedBlockingQueueChannel getProcessingChannelForUnitTest() { - return (LinkedBlockingQueueChannel) myMatchingChannel; + public LinkedBlockingChannel getProcessingChannelForUnitTest() { + return (LinkedBlockingChannel) myMatchingChannel; } } diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionValidatingInterceptor.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionValidatingInterceptor.java index 4cf26006cbe..b140507ff5e 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionValidatingInterceptor.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionValidatingInterceptor.java @@ -27,9 +27,9 @@ import ca.uhn.fhir.interceptor.api.Pointcut; import ca.uhn.fhir.jpa.api.dao.DaoRegistry; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscriptionChannelType; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.SubscriptionMatchingStrategy; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.SubscriptionStrategyEvaluator; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionCanonicalizer; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionMatchingStrategy; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.SubscriptionStrategyEvaluator; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionCanonicalizer; import ca.uhn.fhir.parser.DataFormatException; import ca.uhn.fhir.rest.api.EncodingEnum; import ca.uhn.fhir.rest.server.exceptions.InvalidRequestException; diff --git a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/triggering/SubscriptionTriggeringSvcImpl.java b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/triggering/SubscriptionTriggeringSvcImpl.java index 5a268329c62..8809d516262 100644 --- a/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/triggering/SubscriptionTriggeringSvcImpl.java +++ b/hapi-fhir-jpaserver-subscription/src/main/java/ca/uhn/fhir/jpa/subscription/triggering/SubscriptionTriggeringSvcImpl.java @@ -33,7 +33,7 @@ import ca.uhn.fhir.jpa.model.sched.ScheduledJobDefinition; import ca.uhn.fhir.jpa.searchparam.MatchUrlService; import ca.uhn.fhir.jpa.searchparam.SearchParameterMap; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedMessage; -import ca.uhn.fhir.jpa.subscription.process.matcher.matching.IResourceModifiedConsumer; +import ca.uhn.fhir.jpa.subscription.match.matcher.matching.IResourceModifiedConsumer; import ca.uhn.fhir.model.dstu2.valueset.ResourceTypeEnum; import ca.uhn.fhir.rest.annotation.IdParam; import ca.uhn.fhir.rest.api.CacheControlDirective; diff --git a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelFactoryTest.java b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelFactoryTest.java index 6f3b979551d..d3406d03c0a 100644 --- a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelFactoryTest.java +++ b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/channel/subscription/SubscriptionChannelFactoryTest.java @@ -1,7 +1,7 @@ package ca.uhn.fhir.jpa.subscription.channel.subscription; -import ca.uhn.fhir.jpa.subscription.channel.queue.IQueueChannelReceiver; -import ca.uhn.fhir.jpa.subscription.channel.queue.LinkedBlockingQueueChannelFactory; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelReceiver; +import ca.uhn.fhir.jpa.subscription.channel.impl.LinkedBlockingChannelFactory; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -36,7 +36,7 @@ public class SubscriptionChannelFactoryTest { @Before public void before() { - mySvc = new SubscriptionChannelFactory(new LinkedBlockingQueueChannelFactory()); + mySvc = new SubscriptionChannelFactory(new LinkedBlockingChannelFactory()); } /** @@ -45,7 +45,7 @@ public class SubscriptionChannelFactoryTest { @Test public void testInterceptorsOnChannelWrapperArePropagated() { - IQueueChannelReceiver channel = mySvc.newDeliveryReceivingChannel("CHANNEL_NAME"); + IChannelReceiver channel = mySvc.newDeliveryReceivingChannel("CHANNEL_NAME", null); channel.subscribe(new NpeThrowingHandler()); channel.addInterceptor(myInterceptor); diff --git a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/process/deliver/BaseSubscriptionDeliverySubscriberTest.java b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/match/deliver/BaseSubscriptionDeliverySubscriberTest.java similarity index 96% rename from hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/process/deliver/BaseSubscriptionDeliverySubscriberTest.java rename to hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/match/deliver/BaseSubscriptionDeliverySubscriberTest.java index 6b81b9de74b..b4dc18f037d 100644 --- a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/process/deliver/BaseSubscriptionDeliverySubscriberTest.java +++ b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/match/deliver/BaseSubscriptionDeliverySubscriberTest.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.deliver; +package ca.uhn.fhir.jpa.subscription.match.deliver; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.interceptor.api.IInterceptorBroadcaster; @@ -7,8 +7,8 @@ import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryJsonMessage; import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryMessage; import ca.uhn.fhir.jpa.subscription.model.ResourceModifiedMessage; -import ca.uhn.fhir.jpa.subscription.process.deliver.resthook.SubscriptionDeliveringRestHookSubscriber; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.deliver.resthook.SubscriptionDeliveringRestHookSubscriber; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import ca.uhn.fhir.rest.api.EncodingEnum; import ca.uhn.fhir.rest.client.api.IGenericClient; import ca.uhn.fhir.rest.client.api.IRestfulClientFactory; diff --git a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/DaoSubscriptionMatcherTest.java b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/DaoSubscriptionMatcherTest.java similarity index 94% rename from hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/DaoSubscriptionMatcherTest.java rename to hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/DaoSubscriptionMatcherTest.java index 4d2bc26a60f..6bc73f9c525 100644 --- a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/process/matcher/matching/DaoSubscriptionMatcherTest.java +++ b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/match/matcher/matching/DaoSubscriptionMatcherTest.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.matcher.matching; +package ca.uhn.fhir.jpa.subscription.match.matcher.matching; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.support.IValidationSupport; @@ -10,7 +10,7 @@ import ca.uhn.fhir.jpa.model.sched.ISchedulerService; import ca.uhn.fhir.jpa.searchparam.config.SearchParamConfig; import ca.uhn.fhir.jpa.searchparam.registry.ISearchParamProvider; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelFactory; -import ca.uhn.fhir.jpa.subscription.process.config.SubscriptionProcessorConfig; +import ca.uhn.fhir.jpa.subscription.match.config.SubscriptionProcessorConfig; import ca.uhn.fhir.jpa.subscription.submit.config.SubscriptionSubmitterConfig; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/process/registry/ActiveSubscriptionCacheTest.java b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/match/registry/ActiveSubscriptionCacheTest.java similarity index 98% rename from hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/process/registry/ActiveSubscriptionCacheTest.java rename to hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/match/registry/ActiveSubscriptionCacheTest.java index c165297f9d8..7dd69d83bfa 100644 --- a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/process/registry/ActiveSubscriptionCacheTest.java +++ b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/match/registry/ActiveSubscriptionCacheTest.java @@ -1,4 +1,4 @@ -package ca.uhn.fhir.jpa.subscription.process.registry; +package ca.uhn.fhir.jpa.subscription.match.registry; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; import ca.uhn.fhir.model.primitive.IdDt; diff --git a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/CanonicalSubscriptionTest.java b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/CanonicalSubscriptionTest.java index d2823865868..b0c9751cff6 100644 --- a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/CanonicalSubscriptionTest.java +++ b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/CanonicalSubscriptionTest.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.jpa.subscription.module; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionCanonicalizer; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionCanonicalizer; import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryJsonMessage; import ca.uhn.fhir.jpa.subscription.model.ResourceDeliveryMessage; import com.fasterxml.jackson.databind.ObjectMapper; diff --git a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/SubscriptionTestConfig.java b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/SubscriptionTestConfig.java index 21b31aaeb13..9ea109593bf 100644 --- a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/SubscriptionTestConfig.java +++ b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/SubscriptionTestConfig.java @@ -23,8 +23,8 @@ package ca.uhn.fhir.jpa.subscription.module; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.context.support.IValidationSupport; import ca.uhn.fhir.jpa.searchparam.config.SearchParamConfig; -import ca.uhn.fhir.jpa.subscription.channel.queue.LinkedBlockingQueueChannelFactory; -import ca.uhn.fhir.jpa.subscription.channel.queue.IQueueChannelFactory; +import ca.uhn.fhir.jpa.subscription.channel.api.IChannelFactory; +import ca.uhn.fhir.jpa.subscription.channel.impl.LinkedBlockingChannelFactory; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelFactory; import org.springframework.beans.factory.annotation.Autowire; import org.springframework.beans.factory.annotation.Autowired; @@ -49,12 +49,12 @@ public class SubscriptionTestConfig { } @Bean - public IQueueChannelFactory subscribableChannelFactory() { - return new LinkedBlockingQueueChannelFactory(); + public IChannelFactory subscribableChannelFactory() { + return new LinkedBlockingChannelFactory(); } @Bean - public SubscriptionChannelFactory subscriptionChannelFactory(IQueueChannelFactory theQueueChannelFactory) { + public SubscriptionChannelFactory subscriptionChannelFactory(IChannelFactory theQueueChannelFactory) { return new SubscriptionChannelFactory(theQueueChannelFactory); } diff --git a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/channel/SubscriptionChannelRegistryTest.java b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/channel/SubscriptionChannelRegistryTest.java index 7fdbfa36e93..ea850a80a76 100644 --- a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/channel/SubscriptionChannelRegistryTest.java +++ b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/channel/SubscriptionChannelRegistryTest.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.jpa.subscription.module.channel; import ca.uhn.fhir.jpa.model.entity.ModelConfig; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelFactory; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelRegistry; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionDeliveryHandlerFactory; @@ -17,7 +17,6 @@ import org.springframework.test.context.junit4.SpringRunner; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; -import static org.mockito.Mockito.when; @RunWith(SpringRunner.class) public class SubscriptionChannelRegistryTest { diff --git a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/subscriber/websocket/WebsocketConnectionValidatorTest.java b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/subscriber/websocket/WebsocketConnectionValidatorTest.java index 606d15f6cd6..0d58fb07c2b 100644 --- a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/subscriber/websocket/WebsocketConnectionValidatorTest.java +++ b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/module/subscriber/websocket/WebsocketConnectionValidatorTest.java @@ -13,11 +13,11 @@ import ca.uhn.fhir.jpa.subscription.channel.config.SubscriptionChannelConfig; import ca.uhn.fhir.jpa.subscription.channel.subscription.SubscriptionChannelFactory; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscription; import ca.uhn.fhir.jpa.subscription.model.CanonicalSubscriptionChannelType; -import ca.uhn.fhir.jpa.subscription.process.config.SubscriptionProcessorConfig; -import ca.uhn.fhir.jpa.subscription.process.deliver.websocket.WebsocketConnectionValidator; -import ca.uhn.fhir.jpa.subscription.process.deliver.websocket.WebsocketValidationResponse; -import ca.uhn.fhir.jpa.subscription.process.registry.ActiveSubscription; -import ca.uhn.fhir.jpa.subscription.process.registry.SubscriptionRegistry; +import ca.uhn.fhir.jpa.subscription.match.config.SubscriptionProcessorConfig; +import ca.uhn.fhir.jpa.subscription.match.deliver.websocket.WebsocketConnectionValidator; +import ca.uhn.fhir.jpa.subscription.match.deliver.websocket.WebsocketValidationResponse; +import ca.uhn.fhir.jpa.subscription.match.registry.ActiveSubscription; +import ca.uhn.fhir.jpa.subscription.match.registry.SubscriptionRegistry; import org.hl7.fhir.r4.model.IdType; import org.junit.Before; import org.junit.Test; @@ -26,7 +26,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Primary; import org.springframework.core.task.AsyncTaskExecutor; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.transaction.PlatformTransactionManager; diff --git a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionSubmitInterceptorLoaderTest.java b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionSubmitInterceptorLoaderTest.java index de8f1910397..33d7c7a19f0 100644 --- a/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionSubmitInterceptorLoaderTest.java +++ b/hapi-fhir-jpaserver-subscription/src/test/java/ca/uhn/fhir/jpa/subscription/submit/interceptor/SubscriptionSubmitInterceptorLoaderTest.java @@ -52,7 +52,7 @@ public class SubscriptionSubmitInterceptorLoaderTest { /** * It should be possible to run only the {@link SubscriptionSubmitterConfig} without the - * {@link ca.uhn.fhir.jpa.subscription.process.config.SubscriptionProcessorConfig} + * {@link ca.uhn.fhir.jpa.subscription.match.config.SubscriptionProcessorConfig} */ @Test public void testLoaderCanRunWithoutProcessorConfigLoaded() { diff --git a/hapi-fhir-jpaserver-uhnfhirtest/src/main/java/ca/uhn/fhirtest/TestRestfulServer.java b/hapi-fhir-jpaserver-uhnfhirtest/src/main/java/ca/uhn/fhirtest/TestRestfulServer.java index c1bdde59ea3..d53aa8928b9 100644 --- a/hapi-fhir-jpaserver-uhnfhirtest/src/main/java/ca/uhn/fhirtest/TestRestfulServer.java +++ b/hapi-fhir-jpaserver-uhnfhirtest/src/main/java/ca/uhn/fhirtest/TestRestfulServer.java @@ -6,7 +6,7 @@ import ca.uhn.fhir.jpa.api.config.DaoConfig; import ca.uhn.fhir.jpa.api.dao.DaoRegistry; import ca.uhn.fhir.jpa.api.dao.IFhirSystemDao; import ca.uhn.fhir.jpa.bulk.BulkDataExportProvider; -import ca.uhn.fhir.jpa.subscription.process.config.WebsocketDispatcherConfig; +import ca.uhn.fhir.jpa.subscription.match.config.WebsocketDispatcherConfig; import ca.uhn.fhir.jpa.interceptor.CascadingDeleteInterceptor; import ca.uhn.fhir.jpa.provider.GraphQLProvider; import ca.uhn.fhir.jpa.provider.JpaConformanceProviderDstu2; diff --git a/hapi-fhir-jpaserver-uhnfhirtest/src/main/java/ca/uhn/fhirtest/config/CommonConfig.java b/hapi-fhir-jpaserver-uhnfhirtest/src/main/java/ca/uhn/fhirtest/config/CommonConfig.java index 9a964fd103b..0075db72db9 100644 --- a/hapi-fhir-jpaserver-uhnfhirtest/src/main/java/ca/uhn/fhirtest/config/CommonConfig.java +++ b/hapi-fhir-jpaserver-uhnfhirtest/src/main/java/ca/uhn/fhirtest/config/CommonConfig.java @@ -1,8 +1,8 @@ package ca.uhn.fhirtest.config; -import ca.uhn.fhir.jpa.subscription.process.config.WebsocketDispatcherConfig; +import ca.uhn.fhir.jpa.subscription.match.config.WebsocketDispatcherConfig; import ca.uhn.fhir.jpa.subscription.channel.config.SubscriptionChannelConfig; -import ca.uhn.fhir.jpa.subscription.process.config.SubscriptionProcessorConfig; +import ca.uhn.fhir.jpa.subscription.match.config.SubscriptionProcessorConfig; import ca.uhn.fhir.jpa.subscription.submit.config.SubscriptionSubmitterConfig; import ca.uhn.fhir.rest.server.interceptor.IServerInterceptor; import ca.uhn.fhir.rest.server.interceptor.LoggingInterceptor; diff --git a/hapi-fhir-spring-boot/hapi-fhir-spring-boot-autoconfigure/src/main/java/ca/uhn/fhir/spring/boot/autoconfigure/FhirAutoConfiguration.java b/hapi-fhir-spring-boot/hapi-fhir-spring-boot-autoconfigure/src/main/java/ca/uhn/fhir/spring/boot/autoconfigure/FhirAutoConfiguration.java index 0306728a29a..c84e17cad24 100644 --- a/hapi-fhir-spring-boot/hapi-fhir-spring-boot-autoconfigure/src/main/java/ca/uhn/fhir/spring/boot/autoconfigure/FhirAutoConfiguration.java +++ b/hapi-fhir-spring-boot/hapi-fhir-spring-boot-autoconfigure/src/main/java/ca/uhn/fhir/spring/boot/autoconfigure/FhirAutoConfiguration.java @@ -31,7 +31,7 @@ import ca.uhn.fhir.jpa.model.entity.ModelConfig; import ca.uhn.fhir.jpa.provider.BaseJpaProvider; import ca.uhn.fhir.jpa.provider.BaseJpaSystemProvider; import ca.uhn.fhir.jpa.subscription.channel.config.SubscriptionChannelConfig; -import ca.uhn.fhir.jpa.subscription.process.config.SubscriptionProcessorConfig; +import ca.uhn.fhir.jpa.subscription.match.config.SubscriptionProcessorConfig; import ca.uhn.fhir.jpa.subscription.submit.config.SubscriptionSubmitterConfig; import ca.uhn.fhir.okhttp.client.OkHttpRestfulClientFactory; import ca.uhn.fhir.rest.client.apache.ApacheRestfulClientFactory;