Class WebSubHelper


  • @Component
    public class WebSubHelper
    extends Object
    The Class WebSubHelper.
    Author:
    Loganathan Sekar
    • Field Detail

      • subscriptionClient

        @Autowired
        protected io.mosip.kernel.core.websub.spi.SubscriptionClient<io.mosip.kernel.websub.api.model.SubscriptionChangeRequest,​io.mosip.kernel.websub.api.model.UnsubscriptionRequest,​io.mosip.kernel.websub.api.model.SubscriptionChangeResponse> subscriptionClient
        The subscription client.
      • subscriptionExtendedClient

        @Autowired
        protected io.mosip.kernel.core.websub.spi.SubscriptionExtendedClient<io.mosip.kernel.websub.api.model.FailedContentResponse,​io.mosip.kernel.websub.api.model.FailedContentRequest> subscriptionExtendedClient
        The subscription extended client.
    • Constructor Detail

      • WebSubHelper

        public WebSubHelper()
    • Method Detail

      • initSubscriber

        public int initSubscriber​(WebSubEventSubcriber subscriber)
        Inits the subscriber.
        Parameters:
        subscriber - the subscriber
        Returns:
      • initSubscriber

        public int initSubscriber​(WebSubEventSubcriber subscriber,
                                  Supplier<Boolean> enableTester)
        Inits the subscriber.
        Parameters:
        subscriber - the subscriber
        enableTester - the enable tester
        Returns:
      • initRegistrar

        public int initRegistrar​(WebSubEventTopicRegistrar registrar)
        Inits the registrar.
        Parameters:
        registrar - the registrar
        Returns:
      • initRegistrar

        public void initRegistrar​(WebSubEventTopicRegistrar registrar,
                                  Supplier<Boolean> enableTester)
        Inits the registrar.
        Parameters:
        registrar - the registrar
        enableTester - the enable tester
      • publishEvent

        @Async("webSubHelperExecutor")
        public <U> void publishEvent​(String eventTopic,
                                     U eventModel)
        Publish event.
        Type Parameters:
        U - the generic type
        Parameters:
        eventTopic - the event topic
        eventModel - the event model
      • createEventModel

        public <T extends EventInterface,​S> EventModel<T> createEventModel​(String topic,
                                                                                 T event)
        Creates the event model.
        Type Parameters:
        T - the generic type
        S - the generic type
        Parameters:
        topic - the topic
        event - the event
        Returns:
        the event model
      • createEventModel

        public io.mosip.kernel.core.websub.model.EventModel createEventModel​(String topic)
        Creates the event model.
        Parameters:
        topic - the topic
        Returns:
        the io.mosip.kernel.core.websub.model. event model
      • registerTopic

        public void registerTopic​(String eventTopic)
        Register topic.
        Parameters:
        eventTopic - the event topic
      • subscribe

        public io.mosip.kernel.websub.api.model.SubscriptionChangeResponse subscribe​(io.mosip.kernel.websub.api.model.SubscriptionChangeRequest subscriptionRequest)
        Subscribe.
        Parameters:
        subscriptionRequest - the subscription request
        Returns:
        the subscription change response