Interface MbmsInformation

  • All Superinterfaces:
    Cloneable, DiameterAvp, GroupedAvp

    public interface MbmsInformation
    extends GroupedAvp
    Defines an interface representing the MBMS-Information grouped AVP type. From the Diameter Rf Reference Point Protocol Details (3GPP TS 32.299 V8.13.0) specification:
     7.2.77      MBMS-Information AVP
     
     The MBMS-Information AVP (AVP code 880) is of type Grouped. Its purpose is
     to allow the transmission of additional MBMS service specific information
     elements.
     It has the following ABNF grammar:
     
         MBMS-Information ::=   < AVP Header: 880>
                                   [ TMGI ]
                                   [ MBMS-Service-Type ]
                                   [ MBMS-User-Service-Type ]
                                   [ File-Repair-Supported ]
                                   [ Required-MBMS-Bearer-Capabilities ]
                                   [ MBMS-2G-3G-Indicator ]
                                   [ RAI ]
                                 * [ MBMS-Service-Area ]
                                   [ MBMS-Session-Identity ]
                                   [ CN-IP-Multicast-Distribution ]
     
    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

      • hasTmgi

        boolean hasTmgi()
        Returns true if the TMGI AVP is present in the MBMS-Information AVP.
      • getTmgi

        byte[] getTmgi()
        Returns the value of the TMGI AVP, of type OctetString.
        Returns:
        the value of the TMGI AVP, or null if it has not been set.
      • setTmgi

        void setTmgi​(byte[] tmgi)
        Sets the value of the TMGI AVP, of type OctetString.
        Throws:
        NullPointerException - if tmgi is null.
      • removeTmgi

        void removeTmgi()
        Removes the TMGI AVP from the MBMS-Information AVP. If the TMGI AVP is not present, this method returns silently.
      • hasMbmsServiceType

        boolean hasMbmsServiceType()
        Returns true if the MBMS-Service-Type AVP is present in the MBMS-Information AVP.
      • getMbmsServiceType

        byte[] getMbmsServiceType()
        Returns the value of the MBMS-Service-Type AVP, of type OctetString.
        Returns:
        the value of the MBMS-Service-Type AVP, or null if it has not been set.
      • setMbmsServiceType

        void setMbmsServiceType​(byte[] mbmsServiceType)
        Sets the value of the MBMS-Service-Type AVP, of type OctetString.
        Throws:
        NullPointerException - if mbmsServiceType is null.
      • removeMbmsServiceType

        void removeMbmsServiceType()
        Removes the MBMS-Service-Type AVP from the MBMS-Information AVP. If the MBMS-Service-Type AVP is not present, this method returns silently.
      • hasMbmsUserServiceType

        boolean hasMbmsUserServiceType()
        Returns true if the MBMS-User-Service-Type AVP is present in the MBMS-Information AVP.
      • getMbmsUserServiceType

        MbmsUserServiceType getMbmsUserServiceType()
        Returns the value of the MBMS-User-Service-Type AVP, of type Enumerated.
        Returns:
        the value of the MBMS-User-Service-Type AVP, or null if it has not been set.
      • setMbmsUserServiceType

        void setMbmsUserServiceType​(MbmsUserServiceType mbmsUserServiceType)
        Sets the value of the MBMS-User-Service-Type AVP, of type Enumerated.
        Throws:
        NullPointerException - if mbmsUserServiceType is null.
      • removeMbmsUserServiceType

        void removeMbmsUserServiceType()
        Removes the MBMS-User-Service-Type AVP from the MBMS-Information AVP. If the MBMS-User-Service-Type AVP is not present, this method returns silently.
      • hasFileRepairSupported

        boolean hasFileRepairSupported()
        Returns true if the File-Repair-Supported AVP is present in the MBMS-Information AVP.
      • getFileRepairSupported

        FileRepairSupported getFileRepairSupported()
        Returns the value of the File-Repair-Supported AVP, of type Enumerated.
        Returns:
        the value of the File-Repair-Supported AVP, or null if it has not been set.
      • setFileRepairSupported

        void setFileRepairSupported​(FileRepairSupported fileRepairSupported)
        Sets the value of the File-Repair-Supported AVP, of type Enumerated.
        Throws:
        NullPointerException - if fileRepairSupported is null.
      • removeFileRepairSupported

        void removeFileRepairSupported()
        Removes the File-Repair-Supported AVP from the MBMS-Information AVP. If the File-Repair-Supported AVP is not present, this method returns silently.
      • hasRequiredMbmsBearerCapabilities

        boolean hasRequiredMbmsBearerCapabilities()
        Returns true if the Required-MBMS-Bearer-Capabilities AVP is present in the MBMS-Information AVP.
      • getRequiredMbmsBearerCapabilities

        byte[] getRequiredMbmsBearerCapabilities()
        Returns the value of the Required-MBMS-Bearer-Capabilities AVP, of type OctetString.
        Returns:
        the value of the Required-MBMS-Bearer-Capabilities AVP, or null if it has not been set.
      • setRequiredMbmsBearerCapabilities

        void setRequiredMbmsBearerCapabilities​(byte[] requiredMbmsBearerCapabilities)
        Sets the value of the Required-MBMS-Bearer-Capabilities AVP, of type OctetString.
        Throws:
        NullPointerException - if requiredMbmsBearerCapabilities is null.
      • removeRequiredMbmsBearerCapabilities

        void removeRequiredMbmsBearerCapabilities()
        Removes the Required-MBMS-Bearer-Capabilities AVP from the MBMS-Information AVP. If the Required-MBMS-Bearer-Capabilities AVP is not present, this method returns silently.
      • hasMbms2g3gIndicator

        boolean hasMbms2g3gIndicator()
        Returns true if the MBMS-2G-3G-Indicator AVP is present in the MBMS-Information AVP.
      • getMbms2g3gIndicator

        byte[] getMbms2g3gIndicator()
        Returns the value of the MBMS-2G-3G-Indicator AVP, of type OctetString.
        Returns:
        the value of the MBMS-2G-3G-Indicator AVP, or null if it has not been set.
      • setMbms2g3gIndicator

        void setMbms2g3gIndicator​(byte[] mbms2g3gIndicator)
        Sets the value of the MBMS-2G-3G-Indicator AVP, of type OctetString.
        Throws:
        NullPointerException - if mbms2g3gIndicator is null.
      • removeMbms2g3gIndicator

        void removeMbms2g3gIndicator()
        Removes the MBMS-2G-3G-Indicator AVP from the MBMS-Information AVP. If the MBMS-2G-3G-Indicator AVP is not present, this method returns silently.
      • hasRai

        boolean hasRai()
        Returns true if the RAI AVP is present in the MBMS-Information AVP.
      • getRai

        byte[] getRai()
        Returns the value of the RAI AVP, of type OctetString.
        Returns:
        the value of the RAI AVP, or null if it has not been set.
      • setRai

        void setRai​(byte[] rai)
        Sets the value of the RAI AVP, of type OctetString.
        Throws:
        NullPointerException - if rai is null.
      • removeRai

        void removeRai()
        Removes the RAI AVP from the MBMS-Information AVP. If the RAI AVP is not present, this method returns silently.
      • getMbmsServiceAreas

        byte[][] getMbmsServiceAreas()
        Returns the set of MBMS-Service-Area AVPs. The returned array contains the AVPs in the order they appear in the MBMS-Information AVP. A return value of null implies that no MBMS-Service-Area AVPs have been set. The elements in the given array are byte[] objects.
      • setMbmsServiceArea

        void setMbmsServiceArea​(byte[] mbmsServiceArea)
        Sets a single MBMS-Service-Area AVP in the MBMS-Information AVP, of type OctetString.
        Throws:
        NullPointerException - if mbmsServiceArea is null.
      • setMbmsServiceAreas

        void setMbmsServiceAreas​(byte[][] mbmsServiceAreas)
        Sets the set of MBMS-Service-Area AVPs, with all the values in the given array. The AVPs will be added to the MBMS-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 getMbmsServiceAreas() is not guaranteed to return the same array instance, e.g. an "==" check would fail.
        Throws:
        NullPointerException - if mbmsServiceAreas is null.
      • removeMbmsServiceAreas

        void removeMbmsServiceAreas()
        Removes all MBMS-Service-Area AVPs from the MBMS-Information AVP. If no MBMS-Service-Area AVPs are present, this method returns silently.
      • hasMbmsSessionIdentity

        boolean hasMbmsSessionIdentity()
        Returns true if the MBMS-Session-Identity AVP is present in the MBMS-Information AVP.
      • getMbmsSessionIdentity

        byte[] getMbmsSessionIdentity()
        Returns the value of the MBMS-Session-Identity AVP, of type OctetString.
        Returns:
        the value of the MBMS-Session-Identity AVP, or null if it has not been set.
      • setMbmsSessionIdentity

        void setMbmsSessionIdentity​(byte[] mbmsSessionIdentity)
        Sets the value of the MBMS-Session-Identity AVP, of type OctetString.
        Throws:
        NullPointerException - if mbmsSessionIdentity is null.
      • removeMbmsSessionIdentity

        void removeMbmsSessionIdentity()
        Removes the MBMS-Session-Identity AVP from the MBMS-Information AVP. If the MBMS-Session-Identity AVP is not present, this method returns silently.
      • hasCnIpMulticastDistribution

        boolean hasCnIpMulticastDistribution()
        Returns true if the CN-IP-Multicast-Distribution AVP is present in the MBMS-Information AVP.
      • getCnIpMulticastDistribution

        CnIpMulticastDistribution getCnIpMulticastDistribution()
        Returns the value of the CN-IP-Multicast-Distribution AVP, of type Enumerated.
        Returns:
        the value of the CN-IP-Multicast-Distribution AVP, or null if it has not been set.
      • setCnIpMulticastDistribution

        void setCnIpMulticastDistribution​(CnIpMulticastDistribution cnIpMulticastDistribution)
        Sets the value of the CN-IP-Multicast-Distribution AVP, of type Enumerated.
        Throws:
        NullPointerException - if cnIpMulticastDistribution is null.
      • removeCnIpMulticastDistribution

        void removeCnIpMulticastDistribution()
        Removes the CN-IP-Multicast-Distribution AVP from the MBMS-Information AVP. If the CN-IP-Multicast-Distribution 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 MBMS-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 MBMS-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 MBMS-Information AVP. If no extension AVPs are present, this method returns silently.