This commit is contained in:
Ken Stevens 2019-02-02 19:07:06 -05:00
parent 37670ac039
commit 84db66d2e3
1 changed files with 9 additions and 11 deletions

View File

@ -62,25 +62,23 @@ public class StandaloneSubscriptionMessageHandler implements MessageHandler {
} }
public void updateSubscriptionRegistryAndPerformMatching(ResourceModifiedMessage theResourceModifiedMessage) { public void updateSubscriptionRegistryAndPerformMatching(ResourceModifiedMessage theResourceModifiedMessage) {
if (isSubscription(theResourceModifiedMessage)) {
handleSubscriptionActivation(theResourceModifiedMessage);
}
mySubscriptionMatchingSubscriber.matchActiveSubscriptionsAndDeliver(theResourceModifiedMessage);
}
private void handleSubscriptionActivation(ResourceModifiedMessage theResourceModifiedMessage) {
switch (theResourceModifiedMessage.getOperationType()) { switch (theResourceModifiedMessage.getOperationType()) {
case DELETE: case DELETE:
if (isSubscription(theResourceModifiedMessage)) {
mySubscriptionRegistry.unregisterSubscription(theResourceModifiedMessage.getId(myFhirContext)); mySubscriptionRegistry.unregisterSubscription(theResourceModifiedMessage.getId(myFhirContext));
break; }
return;
case CREATE: case CREATE:
case UPDATE: case UPDATE:
if (isSubscription(theResourceModifiedMessage)) {
registerActiveSubscription(theResourceModifiedMessage.getNewPayload(myFhirContext)); registerActiveSubscription(theResourceModifiedMessage.getNewPayload(myFhirContext));
}
break; break;
default: default:
break; break;
} }
mySubscriptionMatchingSubscriber.matchActiveSubscriptionsAndDeliver(theResourceModifiedMessage);
} }
private boolean isSubscription(ResourceModifiedMessage theResourceModifiedMessage) { private boolean isSubscription(ResourceModifiedMessage theResourceModifiedMessage) {