Class JmsAuditEventHandler

    • Constructor Detail

      • JmsAuditEventHandler

        @Inject
        public JmsAuditEventHandler​(JmsContextManager jmsContextManager,
                                    BatchPublisherFactory publisherFactory,
                                    JmsAuditEventHandlerConfiguration configuration,
                                    EventTopicsMetaData eventTopicsMetaData)
                             throws ResourceException
        Creates a new AuditEventHandler instance that publishes JMS messages on a JMS Topic for each Audit event.
        Parameters:
        jmsContextManager - optional injected JmsContextManager.
        publisherFactory - the batch publisher factory or null
        configuration - Configuration parameters that can be adjusted by system administrators.
        eventTopicsMetaData - Meta-data for all audit event topics.
        Throws:
        ResourceException - If JMS connections cannot be established.
    • Method Detail

      • startup

        public void startup()
                     throws ResourceException
        Creates the JMS Topic and ConnectionFactory from the context configuration settings and opens the JMS connection.
        Specified by:
        startup in interface AuditEventHandler
        Throws:
        ResourceException - if starting the AuditEventHandler fails
      • queryEvents

        public Promise<QueryResponse,​ResourceException> queryEvents​(org.forgerock.services.context.Context context,
                                                                          String topic,
                                                                          QueryRequest queryRequest,
                                                                          QueryResourceHandler queryResourceHandler)

        Returns NotSupportedException as query is not implemented for JMS.

        Query some events from the provided topic.
        Specified by:
        queryEvents in interface AuditEventHandler
        Parameters:
        context - The context chain that initiated the event.
        topic - The topic on which query is performed.
        queryRequest - The request with the query.
        queryResourceHandler - The handler to process responses for the query.
        Returns:
        NotSupportedException as query is not implemented for JMS.
      • readEvent

        public Promise<ResourceResponse,​ResourceException> readEvent​(org.forgerock.services.context.Context context,
                                                                           String topic,
                                                                           String resourceId)

        Returns NotSupportedException as read is not implemented for JMS.

        Reads an event with the provided resource id from the provided topic.
        Specified by:
        readEvent in interface AuditEventHandler
        Parameters:
        context - The context chain that initiated the event.
        topic - The topic where event is read.
        resourceId - The identifier of the event.
        Returns:
        NotSupportedException as read is not implemented for JMS.
      • publishEvent

        public Promise<ResourceResponse,​ResourceException> publishEvent​(org.forgerock.services.context.Context context,
                                                                              String topic,
                                                                              JsonValue event)
        Description copied from interface: AuditEventHandler
        Publishes an event to the provided topic.
        Specified by:
        publishEvent in interface AuditEventHandler
        Parameters:
        context - The context chain that initiated the event.
        topic - The topic where to publish the event.
        event - The event to publish.
        Returns:
        a promise with either a response or an exception