Interface InterceptorExtensionInvocationEvent


  • public interface InterceptorExtensionInvocationEvent
    Event type denoting that an interceptor directly invoked by a SLEE application has requested an interceptor extension be invoked. This event is fired on an InterceptorInvocationActivity to the referenced interceptor extension component.

    This event type is used rather than the more specific events typically fired on an InterceptorActivity when the SIS invokes an interceptor extension because the SLEE application has provided the input object to the interceptor. Since this object could be anything, and the SIS has no idea what this object is, the SIS uses this generic event type for the interceptor extension invocation. It's left to the interceptor extension to interpret the input object and make decisions as appropriate.

    Since:
    SIS 2.5.0
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void continueProcessing()
      Notify the SIS that evaluation of the interceptor invocation related to this event should be continued.
      void continueProcessing​(Object input)
      Notify the SIS that evaluation of the interceptor invocation related to this event should be continued.
      Object getInput()
      Get the input object that the interceptor is currently processing.
      int getInvocationID()
      Get the invocation id of the interceptor invocation.
      void halt()
      Notify the SIS that further evaluation of the interceptor invocation related to this event should be immediately halted.
    • Method Detail

      • getInvocationID

        int getInvocationID()
        Get the invocation id of the interceptor invocation. This invocation id should be used if the methods on the InterceptorInvocationActivity are used to return a response to the extension component invocation rather than the methods on this class.
        Returns:
        the interceptor invocation id.
      • getInput

        Object getInput()
        Get the input object that the interceptor is currently processing.
        Returns:
        the input object.
      • continueProcessing

        void continueProcessing()
                         throws IllegalStateException
        Notify the SIS that evaluation of the interceptor invocation related to this event should be continued.
        Throws:
        IllegalStateException - if the SIS is not currently waiting on the extension component to provide a response. This exception could be thrown for example if the extension component has taken too long to respond to the request and a timeout has occurred in the SIS.
      • continueProcessing

        void continueProcessing​(Object input)
                         throws IllegalStateException
        Notify the SIS that evaluation of the interceptor invocation related to this event should be continued. The current input object for the interceptor is replaced with the specified object.
        Parameters:
        input - the new input object to replace the current input.
        Throws:
        IllegalStateException - if the SIS is not currently waiting on the extension component to provide a response. This exception could be thrown for example if the extension component has taken too long to respond to the request and a timeout has occurred in the SIS.
      • halt

        void halt()
           throws IllegalStateException
        Notify the SIS that further evaluation of the interceptor invocation related to this event should be immediately halted.
        Throws:
        IllegalStateException - if the SIS is not currently waiting on the extension component to provide a response. This exception could be thrown for example if the extension component has taken too long to respond to the request and a timeout has occurred in the SIS.