Interface SipOverloadControlPlugin


  • public interface SipOverloadControlPlugin
    This interface allows Rhino's overload control system to be extended for SIP.

    Implementations of this interface must be thread safe, non-blocking, and as close to O(1) as is practical. If an expensive operation is required, consider doing this at or prior to construction and also consider the use of caching.

    An instance of this interface can be registered with the SIS using SipFactory.registerOverloadControlPlugin(SipOverloadControlPlugin).

    • Method Detail

      • invoke

        LimiterInstruction invoke​(SipRequest request)
        This operation is invoked by the SIS when it receives a SIP request from the network. It allows the overload control plugin to dictate how the request should be further processed by the SIP stack.

        This operation is invoked in the critical path of the SIP stack, for all received SIP requests. Implementations of this operation must be thread safe, non-blocking, and as close to O(1) as is possible.

        Parameters:
        request - the SIP request.
        Returns:
        a LimiterInstruction indicating how the request should be further processed. A null return value is treated as though the instruction has an action of LimiterInstruction.Action.ACCEPT.