Interface NniInformation

  • All Superinterfaces:
    Cloneable, DiameterAvp, GroupedAvp

    public interface NniInformation
    extends GroupedAvp
    Defines an interface representing the NNI-Information grouped AVP type. From the Diameter Rf Reference Point Protocol Details (3GPP TS 32.299 V10.0.0) specification:
     7.2.112 A NNI-Information AVP
     The NNI-Information AVP  (AVP code 2703) is of type Grouped and holds information about the NNI used for interconnection and roaming. 
     
     It has the following ABNF grammar:
     
         NNI-Information ::= < AVP Header: 2703>
                             [ Session-Direction ]
                             [ NNI-Type ]
                             [ Relationship-Mode ]
                             [ Neighbour-Node-Address ]                            
     
    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

      • hasSessionDirection

        boolean hasSessionDirection()
        Returns true if the Session-Direction AVP is present in the NNI-Information AVP.
      • getSessionDirection

        SessionDirection getSessionDirection()
        Returns the value of the Session-Direction AVP, of type Enumerated.
        Returns:
        the value of the Session-Direction AVP, or null if it has not been set.
      • setSessionDirection

        void setSessionDirection​(SessionDirection sessionDirection)
        Sets the value of the Session-Direction AVP, of type Enumerated.
        Throws:
        NullPointerException - if sessionDirection is null.
      • removeSessionDirection

        void removeSessionDirection()
        Removes the Session-Direction AVP from the NNI-Information AVP. If the Session-Direction AVP is not present, this method returns silently.
      • hasNniType

        boolean hasNniType()
        Returns true if the NNI-Type AVP is present in the NNI-Information AVP.
      • getNniType

        NniType getNniType()
        Returns the value of the NNI-Type AVP, of type Enumerated.
        Returns:
        the value of the NNI-Type AVP, or null if it has not been set.
      • setNniType

        void setNniType​(NniType nniType)
        Sets the value of the NNI-Type AVP, of type Enumerated.
        Throws:
        NullPointerException - if nniType is null.
      • removeNniType

        void removeNniType()
        Removes the NNI-Type AVP from the NNI-Information AVP. If the NNI-Type AVP is not present, this method returns silently.
      • hasRelationshipMode

        boolean hasRelationshipMode()
        Returns true if the Relationship-Mode AVP is present in the NNI-Information AVP.
      • getRelationshipMode

        RelationshipMode getRelationshipMode()
        Returns the value of the Relationship-Mode AVP, of type Enumerated.
        Returns:
        the value of the Relationship-Mode AVP, or null if it has not been set.
      • setRelationshipMode

        void setRelationshipMode​(RelationshipMode relationshipMode)
        Sets the value of the Relationship-Mode AVP, of type Enumerated.
        Throws:
        NullPointerException - if relationshipMode is null.
      • removeRelationshipMode

        void removeRelationshipMode()
        Removes the Relationship-Mode AVP from the NNI-Information AVP. If the Relationship-Mode AVP is not present, this method returns silently.
      • hasNeighbourNodeAddress

        boolean hasNeighbourNodeAddress()
        Returns true if the Neighbour-Node-Address AVP is present in the NNI-Information AVP.
      • getNeighbourNodeAddress

        Address getNeighbourNodeAddress()
        Returns the value of the Neighbour-Node-Address AVP, of type Address.
        Returns:
        the value of the Neighbour-Node-Address AVP, or null if it has not been set.
      • setNeighbourNodeAddress

        void setNeighbourNodeAddress​(Address neighbourNodeAddress)
        Sets the value of the Neighbour-Node-Address AVP, of type Address.
        Throws:
        NullPointerException - if neighbourNodeAddress is null.
      • removeNeighbourNodeAddress

        void removeNeighbourNodeAddress()
        Removes the Neighbour-Node-Address AVP from the NNI-Information AVP. If the Neighbour-Node-Address 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 NNI-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 NNI-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 NNI-Information AVP. If no extension AVPs are present, this method returns silently.