Interface SmDeviceTriggerInformation

  • All Superinterfaces:
    Cloneable, DiameterAvp, GroupedAvp

    public interface SmDeviceTriggerInformation
    extends GroupedAvp
    Defines an interface representing the SM-Device-Trigger-Information grouped AVP type. From the Diameter Ro Reference Point Protocol Details (3GPP TS 32.299 V12.11.0) specification:
     7.2.205 B    SM-Device-Trigger-Information AVP
     
     The SM-Device-Trigger-Information  AVP (AVP code 3405) is of type Grouped and holds the specific device trigger details for the Short Message.
     It has the following ABNF grammar:
     
         SM-Device-Trigger-Information ::=   < AVP Header: 3405>
                                                 [ MTC-IWF-Address ]
                                                 [ Reference-Number ]
                                                 [ Serving-Node ]
                                                 [ Validity-Time ]
                                                 [ Priority-Indication ]
                                                 [ Application-Port-Identifier ] 
     
    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

      • hasMtcIwfAddress

        boolean hasMtcIwfAddress()
        Returns true if the MTC-IWF-Address AVP is present in the SM-Device-Trigger-Information AVP.
      • getMtcIwfAddress

        Address getMtcIwfAddress()
        Returns the value of the MTC-IWF-Address AVP, of type Address.
        Returns:
        the value of the MTC-IWF-Address AVP, or null if it has not been set.
      • setMtcIwfAddress

        void setMtcIwfAddress​(Address mtcIwfAddress)
        Sets the value of the MTC-IWF-Address AVP, of type Address.
        Throws:
        NullPointerException - if mtcIwfAddress is null.
      • removeMtcIwfAddress

        void removeMtcIwfAddress()
        Removes the MTC-IWF-Address AVP from the SM-Device-Trigger-Information AVP. If the MTC-IWF-Address AVP is not present, this method returns silently.
      • hasReferenceNumber

        boolean hasReferenceNumber()
        Returns true if the Reference-Number AVP is present in the SM-Device-Trigger-Information AVP.
      • getReferenceNumber

        long getReferenceNumber()
        Returns the value of the Reference-Number AVP, of type Unsigned32. Use hasReferenceNumber() to check the existence of this AVP.
        Returns:
        the value of the Reference-Number AVP
        Throws:
        IllegalStateException - if the Reference-Number AVP has not been set.
      • setReferenceNumber

        void setReferenceNumber​(long referenceNumber)
        Sets the value of the Reference-Number AVP, of type Unsigned32.
      • removeReferenceNumber

        void removeReferenceNumber()
        Removes the Reference-Number AVP from the SM-Device-Trigger-Information AVP. If the Reference-Number AVP is not present, this method returns silently.
      • hasServingNode

        boolean hasServingNode()
        Returns true if the Serving-Node AVP is present in the SM-Device-Trigger-Information AVP.
      • getServingNode

        ServingNode getServingNode()
        Returns the value of the Serving-Node AVP, of type Grouped.
        Returns:
        the value of the Serving-Node AVP, or null if it has not been set.
      • setServingNode

        void setServingNode​(ServingNode servingNode)
        Sets the value of the Serving-Node AVP, of type Grouped.
        Throws:
        NullPointerException - if servingNode is null.
      • removeServingNode

        void removeServingNode()
        Removes the Serving-Node AVP from the SM-Device-Trigger-Information AVP. If the Serving-Node AVP is not present, this method returns silently.
      • hasValidityTime

        boolean hasValidityTime()
        Returns true if the Validity-Time AVP is present in the SM-Device-Trigger-Information AVP.
      • getValidityTime

        long getValidityTime()
        Returns the value of the Validity-Time AVP, of type Unsigned32. Use hasValidityTime() to check the existence of this AVP.
        Returns:
        the value of the Validity-Time AVP
        Throws:
        IllegalStateException - if the Validity-Time AVP has not been set.
      • setValidityTime

        void setValidityTime​(long validityTime)
        Sets the value of the Validity-Time AVP, of type Unsigned32.
      • removeValidityTime

        void removeValidityTime()
        Removes the Validity-Time AVP from the SM-Device-Trigger-Information AVP. If the Validity-Time AVP is not present, this method returns silently.
      • hasPriorityIndication

        boolean hasPriorityIndication()
        Returns true if the Priority-Indication AVP is present in the SM-Device-Trigger-Information AVP.
      • getPriorityIndication

        PriorityIndication getPriorityIndication()
        Returns the value of the Priority-Indication AVP, of type Enumerated.
        Returns:
        the value of the Priority-Indication AVP, or null if it has not been set.
      • setPriorityIndication

        void setPriorityIndication​(PriorityIndication priorityIndication)
        Sets the value of the Priority-Indication AVP, of type Enumerated.
        Throws:
        NullPointerException - if priorityIndication is null.
      • removePriorityIndication

        void removePriorityIndication()
        Removes the Priority-Indication AVP from the SM-Device-Trigger-Information AVP. If the Priority-Indication AVP is not present, this method returns silently.
      • hasApplicationPortIdentifier

        boolean hasApplicationPortIdentifier()
        Returns true if the Application-Port-Identifier AVP is present in the SM-Device-Trigger-Information AVP.
      • getApplicationPortIdentifier

        long getApplicationPortIdentifier()
        Returns the value of the Application-Port-Identifier AVP, of type Unsigned32. Use hasApplicationPortIdentifier() to check the existence of this AVP.
        Returns:
        the value of the Application-Port-Identifier AVP
        Throws:
        IllegalStateException - if the Application-Port-Identifier AVP has not been set.
      • setApplicationPortIdentifier

        void setApplicationPortIdentifier​(long applicationPortIdentifier)
        Sets the value of the Application-Port-Identifier AVP, of type Unsigned32.
      • removeApplicationPortIdentifier

        void removeApplicationPortIdentifier()
        Removes the Application-Port-Identifier AVP from the SM-Device-Trigger-Information AVP. If the Application-Port-Identifier AVP is not 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 SM-Device-Trigger-Information 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 SM-Device-Trigger-Information 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 SM-Device-Trigger-Information AVP. If no extension AVPs are present, this method returns silently.