com.ibm.diameter.charging.util
Class PSFurnishChargingInformation

java.lang.Object
  extended by com.ibm.diameter.charging.util.PSFurnishChargingInformation

public class PSFurnishChargingInformation
extends java.lang.Object

PSFurnishChargingInformation is a lightweight representation of the Grouped [PS-Furnish-Charging-Information] Avp. It is used to provide online charging session data to the CCF for the inclusion in CDRs. It is received in a Credit-Control-Answer (RoChargingResults) from the OCS. If online and offline charging are interacting at the same time, it is copied into the Accounting-Request (RfAccountingInfo) to be sent to the CCF.

The [PS-Furnish-Charging-Information] Avp is defined by the 3GPP in ETSI TS 132 299 V6.9.0 (2006-12) - Diameter charging applications.


Constructor Summary
PSFurnishChargingInformation()
          Constructs an empty PSFurnishChargingInformation object representing the [PS-Furnish-Charging-Information] Avp.
PSFurnishChargingInformation(java.util.List<Avp> avps)
          Constructs a PSFurnishChargingInformation object representing the Grouped [PS-Furnish-Charging-Information] Avp.
 
Method Summary
 java.lang.Integer getPsAppendFreeFormatData()
          Gets the value corresponding to the payload of the [PS-Append-Free-Format-Data] Avp.
 byte[] getPsFreeFormatData()
          Gets the value corresponding to the payload of the {PS-Free-Format-Data} Avp.
 java.lang.Integer getTgppChargingId()
          Gets the values corresponding to the payloads of the {3GPP-Charging-Id} Avps.
 void setPsAppendFreeFormatData(java.lang.Integer psAppendFreeFormatData)
          Sets the value corresponding to the payload of the [PS-Append-Free-Format-Data] Avp.
 void setPsFreeFormatData(byte[] psFreeFormatData)
          Sets the value corresponding to the payload of the {PS-Free-Format-Data} Avp.
 void setTgppChargingId(java.lang.Integer tgppChargingId)
          Sets the value corresponding to the payload of the {3GPP-Charging-Id} Avp.
 Avp toAvp()
          Transforms a PSFurnishChargingInformation object into a Grouped [PS-Furnish-Charging-Information] Avp.
 void validate()
          Validates the members of the PSFurnishChargingInformation object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PSFurnishChargingInformation

public PSFurnishChargingInformation()
Constructs an empty PSFurnishChargingInformation object representing the [PS-Furnish-Charging-Information] Avp.


PSFurnishChargingInformation

public PSFurnishChargingInformation(java.util.List<Avp> avps)
                             throws AvpTransformationException
Constructs a PSFurnishChargingInformation object representing the Grouped [PS-Furnish-Charging-Information] Avp.

The method takes a List of Avps as an input. If an Avp code inside the list corresponds to a member of PSFurnishChargingInformation, the member will be populated with the Avp value during construction. If an Avp code is unknown, the value will be silently discarded.

Parameters:
avps - a list of Avps that can appear in the Grouped [PS-Furnish-Charging-Information] Avp.
Throws:
AvpTransformationException - if the Avp value is in an unexpected format.
Method Detail

getPsAppendFreeFormatData

public java.lang.Integer getPsAppendFreeFormatData()
Gets the value corresponding to the payload of the [PS-Append-Free-Format-Data] Avp.

Returns:
the value corresponding to the payload of the [PS-Append-Free-Format-Data] Avp.

setPsAppendFreeFormatData

public void setPsAppendFreeFormatData(java.lang.Integer psAppendFreeFormatData)
Sets the value corresponding to the payload of the [PS-Append-Free-Format-Data] Avp.

Parameters:
psAppendFreeFormatData - the value corresponding to the payload of the [PS-Append-Free-Format-Data] Avp.

getPsFreeFormatData

public byte[] getPsFreeFormatData()
Gets the value corresponding to the payload of the {PS-Free-Format-Data} Avp.

Returns:
the value corresponding to the payload of the {PS-Free-Format-Data} Avp.

setPsFreeFormatData

public void setPsFreeFormatData(byte[] psFreeFormatData)
Sets the value corresponding to the payload of the {PS-Free-Format-Data} Avp.

Parameters:
psFreeFormatData - the value corresponding to the payload of the {PS-Free-Format-Data} Avp.

getTgppChargingId

public java.lang.Integer getTgppChargingId()
Gets the values corresponding to the payloads of the {3GPP-Charging-Id} Avps.

Returns:
the values corresponding to the payloads of the {3GPP-Charging-Id} Avps.

setTgppChargingId

public void setTgppChargingId(java.lang.Integer tgppChargingId)
Sets the value corresponding to the payload of the {3GPP-Charging-Id} Avp.

Parameters:
tgppChargingId - the value corresponding to the payload of the {3GPP-Charging-Id} Avp.

validate

public void validate()
              throws ChargingValidationException
Validates the members of the PSFurnishChargingInformation object. The charging Web Services call this method before transforming the object into a Grouped Avp. This ensures that improperly formed Avps are not sent to the Diameter peer.

Throws:
ChargingValidationException - if a member of PSFurnishChargingInformation is in an unexpected format.

toAvp

public Avp toAvp()
          throws AvpTransformationException
Transforms a PSFurnishChargingInformation object into a Grouped [PS-Furnish-Charging-Information] Avp.

All non-null members of PSFurnishChargingInformation will be transformed into Avps nested inside of the [PS-Furnish-Charging-Information] Avp.

Returns:
the [PS-Furnish-Charging-Information] Avp.
Throws:
AvpTransformationException - if a member of PSFurnishChargingInformation is in an unexpected format.


Copyright © 2006 IBM Corp. All Rights Reserved.