Interface RecipientReceivedAddress

  • All Superinterfaces:
    Cloneable, DiameterAvp, GroupedAvp

    public interface RecipientReceivedAddress
    extends GroupedAvp
    Defines an interface representing the Recipient-Received-Address grouped AVP type. From the Diameter Rf Reference Point Protocol Details (3GPP TS 32.299 V9.6.0) specification:
     7.2.169    Recipient-Received-Address AVP
     
     The Recipient-Received-Address AVP (AVP code 2028) is of type Grouped. Its purpose is to identify the recipient of a message 
     with the original, unmodified address information as received before any address manipulations has taken place 
     in the entity generating the charging information. This field allows correlation of address information with information 
     generated by other nodes  in the message flow.
     It has the following ABNF grammar:
     
         Recipient-Received-Address ::=  < AVP Header: 2028>
                                         [ Address-Type ]
                                         [ Address-Data ]
                                         [ Address-Domain ]
     
    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

      • hasAddressType

        boolean hasAddressType()
        Returns true if the Address-Type AVP is present in the Recipient-Received-Address AVP.
      • getAddressType

        AddressType getAddressType()
        Returns the value of the Address-Type AVP, of type Enumerated.
        Returns:
        the value of the Address-Type AVP, or null if it has not been set.
      • setAddressType

        void setAddressType​(AddressType addressType)
        Sets the value of the Address-Type AVP, of type Enumerated.
        Throws:
        NullPointerException - if addressType is null.
      • removeAddressType

        void removeAddressType()
        Removes the Address-Type AVP from the Recipient-Received-Address AVP. If the Address-Type AVP is not present, this method returns silently.
      • hasAddressData

        boolean hasAddressData()
        Returns true if the Address-Data AVP is present in the Recipient-Received-Address AVP.
      • getAddressData

        String getAddressData()
        Returns the value of the Address-Data AVP, of type UTF8String.
        Returns:
        the value of the Address-Data AVP, or null if it has not been set.
      • setAddressData

        void setAddressData​(String addressData)
        Sets the value of the Address-Data AVP, of type UTF8String.
        Throws:
        NullPointerException - if addressData is null.
      • removeAddressData

        void removeAddressData()
        Removes the Address-Data AVP from the Recipient-Received-Address AVP. If the Address-Data AVP is not present, this method returns silently.
      • hasAddressDomain

        boolean hasAddressDomain()
        Returns true if the Address-Domain AVP is present in the Recipient-Received-Address AVP.
      • getAddressDomain

        AddressDomain getAddressDomain()
        Returns the value of the Address-Domain AVP, of type Grouped.
        Returns:
        the value of the Address-Domain AVP, or null if it has not been set.
      • setAddressDomain

        void setAddressDomain​(AddressDomain addressDomain)
        Sets the value of the Address-Domain AVP, of type Grouped.
        Throws:
        NullPointerException - if addressDomain is null.
      • removeAddressDomain

        void removeAddressDomain()
        Removes the Address-Domain AVP from the Recipient-Received-Address AVP. If the Address-Domain 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 Recipient-Received-Address 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 Recipient-Received-Address 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 Recipient-Received-Address AVP. If no extension AVPs are present, this method returns silently.