Interface Trigger

  • All Superinterfaces:
    Cloneable, DiameterAvp, GroupedAvp

    public interface Trigger
    extends GroupedAvp
    Defines an interface representing the Trigger grouped AVP type. From the Diameter Ro Reference Point Protocol Details (3GPP TS 32.299 V10.0.0) specification:
     7.2.235     Trigger AVP
     
     The Trigger AVP (AVP code 1264) is of type Grouped and holds the trigger types. The presence of the Trigger AVP
     without any Trigger-Type AVP in a CCA allows OCS to disable all the triggers. The presence of the Trigger AVP in the
     CCR identifies the event(s) triggering the CCR.
     It has the following ABNF grammar:
     
         Trigger ::= < AVP Header: 1264 >
                     * [ Trigger-Type ]
     
    Note:
    The support for extension AVPs is present even thou the ABNF grammar for this AVP does not contain the "* [ AVP ]" line. Be aware that adding any extension AVPs may result in interoperability problems with products that strongly validate the incoming diameter message for it's adherence to the specification.
    • Method Detail

      • getTriggerTypes

        TriggerType[] getTriggerTypes()
        Returns the set of Trigger-Type AVPs. The returned array contains the AVPs in the order they appear in the Trigger AVP. A return value of null implies that no Trigger-Type AVPs have been set. The elements in the given array are TriggerType objects.
      • setTriggerType

        void setTriggerType​(TriggerType triggerType)
        Sets a single Trigger-Type AVP in the Trigger AVP, of type Enumerated.
        Throws:
        NullPointerException - if triggerType is null.
      • setTriggerTypes

        void setTriggerTypes​(TriggerType[] triggerTypes)
        Sets the set of Trigger-Type AVPs, with all the values in the given array. The AVPs will be added to the Trigger AVP in the order in which they appear in the array. Note: the array must not be altered by the caller following this call, and getTriggerTypes() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Throws:
        NullPointerException - if triggerTypes is null.
      • removeTriggerTypes

        void removeTriggerTypes()
        Removes all Trigger-Type AVPs from the Trigger AVP. If no Trigger-Type AVPs are present, this method returns silently.
      • getExtensionAvps

        DiameterAvp[] getExtensionAvps()
        Returns the set of extension AVPs. The returned array contains the extension AVPs in the order they appear in the Trigger AVP. A return value of null implies that no extensions AVPs have been set.
      • setExtensionAvps

        void setExtensionAvps​(DiameterAvp[] avps)
                       throws AvpNotAllowedException
        Sets the set of extension AVPs with all the values in the given array. The AVPs will be added to Trigger AVP in the order in which they appear in the array. Note: the array must not be altered by the caller following this call, and getExtensionAvps() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Throws:
        AvpNotAllowedException - if an AVP is encountered of a type already known to this class (i.e. an AVP for which get/set methods already appear in this class)
        NullPointerException - if avps is null.
      • removeExtensionAvps

        void removeExtensionAvps()
        Removes all extension AVPs from the Trigger AVP. If no extension AVPs are present, this method returns silently.