Interface TrafficDataVolumes
-
- All Superinterfaces:
Cloneable,DiameterAvp,GroupedAvp
public interface TrafficDataVolumes extends GroupedAvp
Defines an interface representing the Traffic-Data-Volumes grouped AVP type. From the Diameter Rf Reference Point Protocol Details (3GPP TS 32.299 V10.0.0) specification:7.2.233 Traffic-Data-Volumes AVP The Traffic-Data-Volumes AVP (AVP code 2046) is of type Grouped. Its purpose is to allow the transmission of the IP-CAN bearer container, on encountering change on charging condition for this IP-CAN bearer.This container reports the volume count (separated for uplink and downlink). It has the following ABNF grammar: Traffic-Data-Volumes ::= < AVP Header: 2046> [ QoS-Information ] [ Accounting-Input-Octets ] [ Accounting-Input-Packets ] [ Accounting-Output-Octets ] [ Accounting-Output-Packets ] [ Change-Condition ] [ Change-Time ] [ TGPP-User-Location-Info ]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.
-
-
Field Summary
-
Fields inherited from interface org.jainslee.resources.diameter.base.DiameterAvp
FLAG_RULE_MAY, FLAG_RULE_MUST, FLAG_RULE_MUSTNOT
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description longgetAccountingInputOctets()Returns the value of the Accounting-Input-Octets AVP, of type Unsigned64.longgetAccountingInputPackets()Returns the value of the Accounting-Input-Packets AVP, of type Unsigned64.longgetAccountingOutputOctets()Returns the value of the Accounting-Output-Octets AVP, of type Unsigned64.longgetAccountingOutputPackets()Returns the value of the Accounting-Output-Packets AVP, of type Unsigned64.intgetChangeCondition()Returns the value of the Change-Condition AVP, of type Integer32.DategetChangeTime()Returns the value of the Change-Time AVP, of type Time.DiameterAvp[]getExtensionAvps()Returns the set of extension AVPs.QosInformationgetQosInformation()Returns the value of the QoS-Information AVP, of type Grouped.byte[]getTgppUserLocationInfo()Returns the value of the TGPP-User-Location-Info AVP, of type OctetString.booleanhasAccountingInputOctets()Returns true if the Accounting-Input-Octets AVP is present in the Traffic-Data-Volumes AVP.booleanhasAccountingInputPackets()Returns true if the Accounting-Input-Packets AVP is present in the Traffic-Data-Volumes AVP.booleanhasAccountingOutputOctets()Returns true if the Accounting-Output-Octets AVP is present in the Traffic-Data-Volumes AVP.booleanhasAccountingOutputPackets()Returns true if the Accounting-Output-Packets AVP is present in the Traffic-Data-Volumes AVP.booleanhasChangeCondition()Returns true if the Change-Condition AVP is present in the Traffic-Data-Volumes AVP.booleanhasChangeTime()Returns true if the Change-Time AVP is present in the Traffic-Data-Volumes AVP.booleanhasQosInformation()Returns true if the QoS-Information AVP is present in the Traffic-Data-Volumes AVP.booleanhasTgppUserLocationInfo()Returns true if the TGPP-User-Location-Info AVP is present in the Traffic-Data-Volumes AVP.voidremoveAccountingInputOctets()Removes the Accounting-Input-Octets AVP from the Traffic-Data-Volumes AVP.voidremoveAccountingInputPackets()Removes the Accounting-Input-Packets AVP from the Traffic-Data-Volumes AVP.voidremoveAccountingOutputOctets()Removes the Accounting-Output-Octets AVP from the Traffic-Data-Volumes AVP.voidremoveAccountingOutputPackets()Removes the Accounting-Output-Packets AVP from the Traffic-Data-Volumes AVP.voidremoveChangeCondition()Removes the Change-Condition AVP from the Traffic-Data-Volumes AVP.voidremoveChangeTime()Removes the Change-Time AVP from the Traffic-Data-Volumes AVP.voidremoveExtensionAvps()Removes all extension AVPs from the Traffic-Data-Volumes AVP.voidremoveQosInformation()Removes the QoS-Information AVP from the Traffic-Data-Volumes AVP.voidremoveTgppUserLocationInfo()Removes the TGPP-User-Location-Info AVP from the Traffic-Data-Volumes AVP.voidsetAccountingInputOctets(long accountingInputOctets)Sets the value of the Accounting-Input-Octets AVP, of type Unsigned64.voidsetAccountingInputPackets(long accountingInputPackets)Sets the value of the Accounting-Input-Packets AVP, of type Unsigned64.voidsetAccountingOutputOctets(long accountingOutputOctets)Sets the value of the Accounting-Output-Octets AVP, of type Unsigned64.voidsetAccountingOutputPackets(long accountingOutputPackets)Sets the value of the Accounting-Output-Packets AVP, of type Unsigned64.voidsetChangeCondition(int changeCondition)Sets the value of the Change-Condition AVP, of type Integer32.voidsetChangeTime(Date changeTime)Sets the value of the Change-Time AVP, of type Time.voidsetExtensionAvps(DiameterAvp[] avps)Sets the set of extension AVPs with all the values in the given array.voidsetQosInformation(QosInformation qosInformation)Sets the value of the QoS-Information AVP, of type Grouped.voidsetTgppUserLocationInfo(byte[] tgppUserLocationInfo)Sets the value of the TGPP-User-Location-Info AVP, of type OctetString.-
Methods inherited from interface org.jainslee.resources.diameter.base.DiameterAvp
byteArrayValue, clone, doubleValue, floatValue, getCode, getMandatoryRule, getName, getProtectedRule, getType, getVendorID, groupedAvpValue, intValue, longValue, stringValue
-
-
-
-
Method Detail
-
hasQosInformation
boolean hasQosInformation()
Returns true if the QoS-Information AVP is present in the Traffic-Data-Volumes AVP.
-
getQosInformation
QosInformation getQosInformation()
Returns the value of the QoS-Information AVP, of type Grouped.- Returns:
- the value of the QoS-Information AVP, or null if it has not been set.
-
setQosInformation
void setQosInformation(QosInformation qosInformation)
Sets the value of the QoS-Information AVP, of type Grouped.- Throws:
NullPointerException- ifqosInformationisnull.
-
removeQosInformation
void removeQosInformation()
Removes the QoS-Information AVP from the Traffic-Data-Volumes AVP. If the QoS-Information AVP is not present, this method returns silently.
-
hasAccountingInputOctets
boolean hasAccountingInputOctets()
Returns true if the Accounting-Input-Octets AVP is present in the Traffic-Data-Volumes AVP.
-
getAccountingInputOctets
long getAccountingInputOctets()
Returns the value of the Accounting-Input-Octets AVP, of type Unsigned64. UsehasAccountingInputOctets()to check the existence of this AVP.- Returns:
- the value of the Accounting-Input-Octets AVP
- Throws:
IllegalStateException- if the Accounting-Input-Octets AVP has not been set.
-
setAccountingInputOctets
void setAccountingInputOctets(long accountingInputOctets)
Sets the value of the Accounting-Input-Octets AVP, of type Unsigned64.
-
removeAccountingInputOctets
void removeAccountingInputOctets()
Removes the Accounting-Input-Octets AVP from the Traffic-Data-Volumes AVP. If the Accounting-Input-Octets AVP is not present, this method returns silently.
-
hasAccountingInputPackets
boolean hasAccountingInputPackets()
Returns true if the Accounting-Input-Packets AVP is present in the Traffic-Data-Volumes AVP.
-
getAccountingInputPackets
long getAccountingInputPackets()
Returns the value of the Accounting-Input-Packets AVP, of type Unsigned64. UsehasAccountingInputPackets()to check the existence of this AVP.- Returns:
- the value of the Accounting-Input-Packets AVP
- Throws:
IllegalStateException- if the Accounting-Input-Packets AVP has not been set.
-
setAccountingInputPackets
void setAccountingInputPackets(long accountingInputPackets)
Sets the value of the Accounting-Input-Packets AVP, of type Unsigned64.
-
removeAccountingInputPackets
void removeAccountingInputPackets()
Removes the Accounting-Input-Packets AVP from the Traffic-Data-Volumes AVP. If the Accounting-Input-Packets AVP is not present, this method returns silently.
-
hasAccountingOutputOctets
boolean hasAccountingOutputOctets()
Returns true if the Accounting-Output-Octets AVP is present in the Traffic-Data-Volumes AVP.
-
getAccountingOutputOctets
long getAccountingOutputOctets()
Returns the value of the Accounting-Output-Octets AVP, of type Unsigned64. UsehasAccountingOutputOctets()to check the existence of this AVP.- Returns:
- the value of the Accounting-Output-Octets AVP
- Throws:
IllegalStateException- if the Accounting-Output-Octets AVP has not been set.
-
setAccountingOutputOctets
void setAccountingOutputOctets(long accountingOutputOctets)
Sets the value of the Accounting-Output-Octets AVP, of type Unsigned64.
-
removeAccountingOutputOctets
void removeAccountingOutputOctets()
Removes the Accounting-Output-Octets AVP from the Traffic-Data-Volumes AVP. If the Accounting-Output-Octets AVP is not present, this method returns silently.
-
hasAccountingOutputPackets
boolean hasAccountingOutputPackets()
Returns true if the Accounting-Output-Packets AVP is present in the Traffic-Data-Volumes AVP.
-
getAccountingOutputPackets
long getAccountingOutputPackets()
Returns the value of the Accounting-Output-Packets AVP, of type Unsigned64. UsehasAccountingOutputPackets()to check the existence of this AVP.- Returns:
- the value of the Accounting-Output-Packets AVP
- Throws:
IllegalStateException- if the Accounting-Output-Packets AVP has not been set.
-
setAccountingOutputPackets
void setAccountingOutputPackets(long accountingOutputPackets)
Sets the value of the Accounting-Output-Packets AVP, of type Unsigned64.
-
removeAccountingOutputPackets
void removeAccountingOutputPackets()
Removes the Accounting-Output-Packets AVP from the Traffic-Data-Volumes AVP. If the Accounting-Output-Packets AVP is not present, this method returns silently.
-
hasChangeCondition
boolean hasChangeCondition()
Returns true if the Change-Condition AVP is present in the Traffic-Data-Volumes AVP.
-
getChangeCondition
int getChangeCondition()
Returns the value of the Change-Condition AVP, of type Integer32. UsehasChangeCondition()to check the existence of this AVP.- Returns:
- the value of the Change-Condition AVP
- Throws:
IllegalStateException- if the Change-Condition AVP has not been set.
-
setChangeCondition
void setChangeCondition(int changeCondition)
Sets the value of the Change-Condition AVP, of type Integer32.
-
removeChangeCondition
void removeChangeCondition()
Removes the Change-Condition AVP from the Traffic-Data-Volumes AVP. If the Change-Condition AVP is not present, this method returns silently.
-
hasChangeTime
boolean hasChangeTime()
Returns true if the Change-Time AVP is present in the Traffic-Data-Volumes AVP.
-
getChangeTime
Date getChangeTime()
Returns the value of the Change-Time AVP, of type Time.- Returns:
- the value of the Change-Time AVP, or null if it has not been set.
-
setChangeTime
void setChangeTime(Date changeTime)
Sets the value of the Change-Time AVP, of type Time.- Throws:
NullPointerException- ifchangeTimeisnull.
-
removeChangeTime
void removeChangeTime()
Removes the Change-Time AVP from the Traffic-Data-Volumes AVP. If the Change-Time AVP is not present, this method returns silently.
-
hasTgppUserLocationInfo
boolean hasTgppUserLocationInfo()
Returns true if the TGPP-User-Location-Info AVP is present in the Traffic-Data-Volumes AVP.
-
getTgppUserLocationInfo
byte[] getTgppUserLocationInfo()
Returns the value of the TGPP-User-Location-Info AVP, of type OctetString.- Returns:
- the value of the TGPP-User-Location-Info AVP, or null if it has not been set.
-
setTgppUserLocationInfo
void setTgppUserLocationInfo(byte[] tgppUserLocationInfo)
Sets the value of the TGPP-User-Location-Info AVP, of type OctetString.- Throws:
NullPointerException- iftgppUserLocationInfoisnull.
-
removeTgppUserLocationInfo
void removeTgppUserLocationInfo()
Removes the TGPP-User-Location-Info AVP from the Traffic-Data-Volumes AVP. If the TGPP-User-Location-Info 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 Traffic-Data-Volumes 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 Traffic-Data-Volumes 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- ifavpsisnull.
-
removeExtensionAvps
void removeExtensionAvps()
Removes all extension AVPs from the Traffic-Data-Volumes AVP. If no extension AVPs are present, this method returns silently.
-
-