Interface UsedServiceUnit

  • All Superinterfaces:
    Cloneable, DiameterAvp, GroupedAvp

    public interface UsedServiceUnit
    extends GroupedAvp
    Defines an interface representing the Used-Service-Unit grouped AVP type. From the Diameter Credit-Control Application (rfc4006.txt) specification:
     8.19.  Used-Service-Unit AVP
     
        The Used-Service-Unit AVP is of type Grouped (AVP Code 446) and
        contains the amount of used units measured from the point when the
        service became active or, if interim interrogations are used during
        the session, from the point when the previous measurement ended.
        The Used-Service-Unit AVP is defined as follows (per the grouped-
        avp-def of RFC 3588 [DIAMBASE]):
     
           Used-Service-Unit ::= < AVP Header: 446 >
                                 [ Tariff-Change-Usage ]
                                 [ CC-Time ]
                                 [ CC-Money ]
                                 [ CC-Total-Octets ]
                                 [ CC-Input-Octets ]
                                 [ CC-Output-Octets ]
                                 [ CC-Service-Specific-Units ]
                                *[ AVP ]
     
     
    • Method Detail

      • hasTariffChangeUsage

        boolean hasTariffChangeUsage()
        Returns true if the Tariff-Change-Usage AVP is present in the Used-Service-Unit AVP.
      • getTariffChangeUsage

        TariffChangeUsage getTariffChangeUsage()
        Returns the value of the Tariff-Change-Usage AVP, of type Enumerated.
        Returns:
        the value of the Tariff-Change-Usage AVP, or null if it has not been set.
      • setTariffChangeUsage

        void setTariffChangeUsage​(TariffChangeUsage tariffChangeUsage)
        Sets the value of the Tariff-Change-Usage AVP, of type Enumerated.
        Throws:
        NullPointerException - if tariffChangeUsage is null.
      • removeTariffChangeUsage

        void removeTariffChangeUsage()
        Removes the Tariff-Change-Usage AVP from the Used-Service-Unit AVP. If the Tariff-Change-Usage AVP is not present, this method returns silently.
      • hasCcTime

        boolean hasCcTime()
        Returns true if the CC-Time AVP is present in the Used-Service-Unit AVP.
      • getCcTime

        long getCcTime()
        Returns the value of the CC-Time AVP, of type Unsigned32. Use hasCcTime() to check the existence of this AVP.
        Returns:
        the value of the CC-Time AVP
        Throws:
        IllegalStateException - if the CC-Time AVP has not been set.
      • setCcTime

        void setCcTime​(long ccTime)
        Sets the value of the CC-Time AVP, of type Unsigned32.
      • removeCcTime

        void removeCcTime()
        Removes the CC-Time AVP from the Used-Service-Unit AVP. If the CC-Time AVP is not present, this method returns silently.
      • hasCcMoney

        boolean hasCcMoney()
        Returns true if the CC-Money AVP is present in the Used-Service-Unit AVP.
      • getCcMoney

        CcMoney getCcMoney()
        Returns the value of the CC-Money AVP, of type Grouped.
        Returns:
        the value of the CC-Money AVP, or null if it has not been set.
      • setCcMoney

        void setCcMoney​(CcMoney ccMoney)
        Sets the value of the CC-Money AVP, of type Grouped.
        Throws:
        NullPointerException - if ccMoney is null.
      • removeCcMoney

        void removeCcMoney()
        Removes the CC-Money AVP from the Used-Service-Unit AVP. If the CC-Money AVP is not present, this method returns silently.
      • hasCcTotalOctets

        boolean hasCcTotalOctets()
        Returns true if the CC-Total-Octets AVP is present in the Used-Service-Unit AVP.
      • getCcTotalOctets

        long getCcTotalOctets()
        Returns the value of the CC-Total-Octets AVP, of type Unsigned64. Use hasCcTotalOctets() to check the existence of this AVP.
        Returns:
        the value of the CC-Total-Octets AVP
        Throws:
        IllegalStateException - if the CC-Total-Octets AVP has not been set.
      • setCcTotalOctets

        void setCcTotalOctets​(long ccTotalOctets)
        Sets the value of the CC-Total-Octets AVP, of type Unsigned64.
      • removeCcTotalOctets

        void removeCcTotalOctets()
        Removes the CC-Total-Octets AVP from the Used-Service-Unit AVP. If the CC-Total-Octets AVP is not present, this method returns silently.
      • hasCcInputOctets

        boolean hasCcInputOctets()
        Returns true if the CC-Input-Octets AVP is present in the Used-Service-Unit AVP.
      • getCcInputOctets

        long getCcInputOctets()
        Returns the value of the CC-Input-Octets AVP, of type Unsigned64. Use hasCcInputOctets() to check the existence of this AVP.
        Returns:
        the value of the CC-Input-Octets AVP
        Throws:
        IllegalStateException - if the CC-Input-Octets AVP has not been set.
      • setCcInputOctets

        void setCcInputOctets​(long ccInputOctets)
        Sets the value of the CC-Input-Octets AVP, of type Unsigned64.
      • removeCcInputOctets

        void removeCcInputOctets()
        Removes the CC-Input-Octets AVP from the Used-Service-Unit AVP. If the CC-Input-Octets AVP is not present, this method returns silently.
      • hasCcOutputOctets

        boolean hasCcOutputOctets()
        Returns true if the CC-Output-Octets AVP is present in the Used-Service-Unit AVP.
      • getCcOutputOctets

        long getCcOutputOctets()
        Returns the value of the CC-Output-Octets AVP, of type Unsigned64. Use hasCcOutputOctets() to check the existence of this AVP.
        Returns:
        the value of the CC-Output-Octets AVP
        Throws:
        IllegalStateException - if the CC-Output-Octets AVP has not been set.
      • setCcOutputOctets

        void setCcOutputOctets​(long ccOutputOctets)
        Sets the value of the CC-Output-Octets AVP, of type Unsigned64.
      • removeCcOutputOctets

        void removeCcOutputOctets()
        Removes the CC-Output-Octets AVP from the Used-Service-Unit AVP. If the CC-Output-Octets AVP is not present, this method returns silently.
      • hasCcServiceSpecificUnits

        boolean hasCcServiceSpecificUnits()
        Returns true if the CC-Service-Specific-Units AVP is present in the Used-Service-Unit AVP.
      • getCcServiceSpecificUnits

        long getCcServiceSpecificUnits()
        Returns the value of the CC-Service-Specific-Units AVP, of type Unsigned64. Use hasCcServiceSpecificUnits() to check the existence of this AVP.
        Returns:
        the value of the CC-Service-Specific-Units AVP
        Throws:
        IllegalStateException - if the CC-Service-Specific-Units AVP has not been set.
      • setCcServiceSpecificUnits

        void setCcServiceSpecificUnits​(long ccServiceSpecificUnits)
        Sets the value of the CC-Service-Specific-Units AVP, of type Unsigned64.
      • removeCcServiceSpecificUnits

        void removeCcServiceSpecificUnits()
        Removes the CC-Service-Specific-Units AVP from the Used-Service-Unit AVP. If the CC-Service-Specific-Units 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 Used-Service-Unit 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 Used-Service-Unit 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 Used-Service-Unit AVP. If no extension AVPs are present, this method returns silently.