com.ibm.diameter.charging.util
Class IMSInformation

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

public class IMSInformation
extends java.lang.Object

IMSInformation is a lightweight representation of the Grouped [IMS-Information] Avp. It is used to record accounting and charging information that is service-specific to the IP Multimedia Subsystem.

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


Constructor Summary
IMSInformation()
          Constructs an empty IMSInformation object representing the [IMS-Information] Avp.
IMSInformation(java.util.List<Avp> avps)
          Constructs an IMSInformation object representing the Grouped [IMS-Information] Avp.
 
Method Summary
 ApplicationServerInformation[] getApplicationServerInformation()
          Gets the values corresponding to the payloads of the [Application-Server-Information] Avps.
 java.lang.String[] getAssociatedURIs()
          Gets the values corresponding to the payloads of the [Associated-URI] Avps.
 byte[] getBearerService()
          Gets the value corresponding to the payload of the [Bearer-Service] Avp.
 java.lang.String[] getCalledAssertedIdentities()
          Gets the values corresponding to the payloads of the [Called-Asserted-Identity] Avps.
 java.lang.String getCalledPartyAddress()
          Gets the value corresponding to the payload of the [Called-Party-Address] Avp.
 java.lang.String[] getCallingPartyAddresses()
          Gets the values corresponding to the payloads of the [Calling-Party-Address] Avps.
 java.lang.Integer getCauseCode()
          Gets the value corresponding to the payload of the [Cause-Code] Avp.
 EventType getEventType()
          Gets the value corresponding to the payload of the [Event-Type] Avp.
 java.lang.String getImsChargingIdentifier()
          Gets the value corresponding to the payload of the [IMS-Charging-Identifier] Avp.
 InterOperatorIdentifier[] getInterOperatorIdentifiers()
          Gets the values corresponding to the payloads of the [Inter-Operator-Identifier] Avps.
 MessageBody[] getMessageBodies()
          Gets the values corresponding to the payloads of the [Message-Body] Avps.
 java.lang.Integer getNodeFunctionality()
          Gets the value corresponding to the payload of the {Node-Functionality} Avp.
 java.lang.String getRequestedPartyAddress()
          Gets the value corresponding to the payload of the [Requested-Party-Address] Avp.
 java.lang.Integer getRoleOfNode()
          Gets the value corresponding to the payload of the [Role-Of-Node] Avp.
 SDPMediaComponent[] getSdpMediaComponents()
          Gets the values corresponding to the payloads of the [SDP-Media-Component] Avps.
 java.lang.String[] getSdpSessionDescription()
          Gets the values corresponding to the payloads of the [SDP-Session-Description] Avps.
 java.lang.String getServedPartyIpAddress()
          Gets the value corresponding to the payload of the [Served-Party-IP-Address] Avp.
 ServerCapabilities getServerCapabilities()
          Gets the value corresponding to the payload of the [Server-Capabilities] Avp.
 java.lang.String getServiceId()
          Gets the value corresponding to the payload of the [Service-Id] Avp.
 java.lang.String getServiceSpecificData()
          Gets the value corresponding to the payload of the [Service-Specific-Data] Avp.
 TimeStamps getTimeStamps()
          Gets the value corresponding to the payload of the [Time-Stamps] Avp.
 TrunkGroupId getTrunkGroupId()
          Gets the value corresponding to the payload of the [Trunk-Group-Id] Avp.
 java.lang.String getUserSessionId()
          Gets the value corresponding to the payload of the {User-Session-Id} Avp.
 void setApplicationServerInformation(ApplicationServerInformation[] applicationServerInformation)
          Sets the values corresponding to the payloads of the [Application-Server-Information] Avps.
 void setAssociatedURIs(java.lang.String[] associatedURI)
          Sets the values corresponding to the payloads of the [Associated-URI] Avps.
 void setBearerService(byte[] bearerService)
          Sets the value corresponding to the payload of the [Bearer-Service] Avp.
 void setCalledAssertedIdentities(java.lang.String[] calledAssertedIdentity)
          Sets the values corresponding to the payloads of the [Called-Asserted-Identity] Avps.
 void setCalledPartyAddress(java.lang.String calledPartyAddress)
          Sets the value corresponding to the payload of the [Called-Party-Address] Avp.
 void setCallingPartyAddresses(java.lang.String[] callingPartyAddress)
          Sets the values corresponding to the payloads of the [Calling-Party-Address] Avps.
 void setCauseCode(java.lang.Integer causeCode)
          Sets the value corresponding to the payload of the [Cause-Code] Avp.
 void setEventType(EventType eventType)
          Sets the value corresponding to the payload of the [Event-Type] Avp.
 void setImsChargingIdentifier(java.lang.String imsChargingIdentifier)
          Sets the value corresponding to the payload of the [IMS-Charging-Identifier] Avp.
 void setInterOperatorIdentifiers(InterOperatorIdentifier[] interOperatorIdentifiers)
          Sets the values corresponding to the payloads of the [Inter-Operator-Identifier] Avps.
 void setMessageBodies(MessageBody[] messageBodies)
          Sets the value corresponding to the payload of the [Domain-Name] Avp.
 void setNodeFunctionality(java.lang.Integer nodeFunctionality)
          Sets the value corresponding to the payload of the {Node-Functionality} Avp.
 void setRequestedPartyAddress(java.lang.String requestedPartyAddress)
          Sets the value corresponding to the payload of the [Requested-Party-Address] Avp.
 void setRoleOfNode(java.lang.Integer roleOfNode)
          Sets the value corresponding to the payload of the [Role-Of-Node] Avp.
 void setSdpMediaComponents(SDPMediaComponent[] sdpMediaComponents)
          Sets the values corresponding to the payloads of the [SDP-Media-Component] Avps.
 void setSdpSessionDescription(java.lang.String[] sdpSessionDescription)
          Sets the values corresponding to the payloads of the [SDP-Session-Description] Avps.
 void setServedPartyIpAddress(java.lang.String servedPartyIPAddress)
          Sets the value corresponding to the payload of the [Served-Party-IP-Address] Avp.
 void setServerCapabilities(ServerCapabilities serverCapabilities)
          Sets the value corresponding to the payload of the [Server-Capabilities] Avp.
 void setServiceId(java.lang.String serviceId)
          Sets the value corresponding to the payload of the [Service-Id] Avp.
 void setServiceSpecificData(java.lang.String serviceSpecificData)
          Sets the value corresponding to the payload of the [Service-Specific-Data] Avp.
 void setTimeStamps(TimeStamps timeStamps)
          Sets the value corresponding to the payload of the [Time-Stamps] Avp.
 void setTrunkGroupId(TrunkGroupId trunkGroupId)
          Sets the value corresponding to the payload of the [Trunk-Group-Id] Avp.
 void setUserSessionId(java.lang.String userSessionId)
          Sets the value corresponding to the payload of the {User-Session-Id} Avp.
 Avp toAvp()
          Transforms an IMSInformation object into a Grouped [IMS-Information] Avp.
 void validate()
          Validates the members of the IMSInformation object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IMSInformation

public IMSInformation()
Constructs an empty IMSInformation object representing the [IMS-Information] Avp.


IMSInformation

public IMSInformation(java.util.List<Avp> avps)
               throws AvpTransformationException
Constructs an IMSInformation object representing the Grouped [IMS-Information] Avp.

The method takes a List of Avps as an input. If an Avp code inside the list corresponds to a member of IMSInformation, 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 [IMS-Information] Avp.
Throws:
AvpTransformationException - if the Avp value is in an unexpected format.
Method Detail

getApplicationServerInformation

public ApplicationServerInformation[] getApplicationServerInformation()
Gets the values corresponding to the payloads of the [Application-Server-Information] Avps.

Returns:
the values corresponding to the payloads of the [Application-Server-Information] Avps.

setApplicationServerInformation

public void setApplicationServerInformation(ApplicationServerInformation[] applicationServerInformation)
Sets the values corresponding to the payloads of the [Application-Server-Information] Avps.

Parameters:
applicationServerInformation - the values corresponding to the payloads of the [Application-Server-Information] Avps.

getAssociatedURIs

public java.lang.String[] getAssociatedURIs()
Gets the values corresponding to the payloads of the [Associated-URI] Avps.

Returns:
the values corresponding to the payloads of the [Associated-URI] Avps.

setAssociatedURIs

public void setAssociatedURIs(java.lang.String[] associatedURI)
Sets the values corresponding to the payloads of the [Associated-URI] Avps.

Parameters:
associatedURIs - the values corresponding to the payloads of the [Associated-URI] Avps.

getBearerService

public byte[] getBearerService()
Gets the value corresponding to the payload of the [Bearer-Service] Avp.

Returns:
the value corresponding to the payload of the [Bearer-Service] Avp.

setBearerService

public void setBearerService(byte[] bearerService)
Sets the value corresponding to the payload of the [Bearer-Service] Avp.

Parameters:
bearerService - the value corresponding to the payload of the [Bearer-Service] Avp.

getCalledAssertedIdentities

public java.lang.String[] getCalledAssertedIdentities()
Gets the values corresponding to the payloads of the [Called-Asserted-Identity] Avps.

Returns:
the values corresponding to the payloads of the [Called-Asserted-Identity] Avps.

setCalledAssertedIdentities

public void setCalledAssertedIdentities(java.lang.String[] calledAssertedIdentity)
Sets the values corresponding to the payloads of the [Called-Asserted-Identity] Avps.

Parameters:
calledAssertedIdentities - the values corresponding to the payloads of the [Called-Asserted-Identity] Avps.

getCalledPartyAddress

public java.lang.String getCalledPartyAddress()
Gets the value corresponding to the payload of the [Called-Party-Address] Avp.

Returns:
the value corresponding to the payload of the [Called-Party-Address] Avp.

setCalledPartyAddress

public void setCalledPartyAddress(java.lang.String calledPartyAddress)
Sets the value corresponding to the payload of the [Called-Party-Address] Avp.

Parameters:
calledPartyAddress - the value corresponding to the payload of the [Called-Party-Address] Avp.

getCallingPartyAddresses

public java.lang.String[] getCallingPartyAddresses()
Gets the values corresponding to the payloads of the [Calling-Party-Address] Avps.

Returns:
the values corresponding to the payloads of the [Calling-Party-Address] Avps.

setCallingPartyAddresses

public void setCallingPartyAddresses(java.lang.String[] callingPartyAddress)
Sets the values corresponding to the payloads of the [Calling-Party-Address] Avps.

Parameters:
callingPartyAddresses - the values corresponding to the payloads of the [Calling-Party-Address] Avps.

getCauseCode

public java.lang.Integer getCauseCode()
Gets the value corresponding to the payload of the [Cause-Code] Avp.

Returns:
the value corresponding to the payload of the [Cause-Code] Avp.

setCauseCode

public void setCauseCode(java.lang.Integer causeCode)
Sets the value corresponding to the payload of the [Cause-Code] Avp.

Parameters:
causeCode - the value corresponding to the payload of the [Cause-Code] Avp.

getEventType

public EventType getEventType()
Gets the value corresponding to the payload of the [Event-Type] Avp.

Returns:
the value corresponding to the payload of the [Event-Type] Avp.

setEventType

public void setEventType(EventType eventType)
Sets the value corresponding to the payload of the [Event-Type] Avp.

Parameters:
eventType - the value corresponding to the payload of the [Event-Type] Avp.

getImsChargingIdentifier

public java.lang.String getImsChargingIdentifier()
Gets the value corresponding to the payload of the [IMS-Charging-Identifier] Avp.

Returns:
the value corresponding to the payload of the [IMS-Charging-Identifier] Avp.

setImsChargingIdentifier

public void setImsChargingIdentifier(java.lang.String imsChargingIdentifier)
Sets the value corresponding to the payload of the [IMS-Charging-Identifier] Avp.

Parameters:
imsChargingIdentifier - the value corresponding to the payload of the [IMS-Charging-Identifier] Avp.

getInterOperatorIdentifiers

public InterOperatorIdentifier[] getInterOperatorIdentifiers()
Gets the values corresponding to the payloads of the [Inter-Operator-Identifier] Avps.

Returns:
the values corresponding to the payloads of the [Inter-Operator-Identifier] Avps.

setInterOperatorIdentifiers

public void setInterOperatorIdentifiers(InterOperatorIdentifier[] interOperatorIdentifiers)
Sets the values corresponding to the payloads of the [Inter-Operator-Identifier] Avps.

Parameters:
interOperatorIdentifiers - the values corresponding to the payloads of the [Inter-Operator-Identifier] Avps.

getMessageBodies

public MessageBody[] getMessageBodies()
Gets the values corresponding to the payloads of the [Message-Body] Avps.

Returns:
the values corresponding to the payloads of the [Message-Body] Avps.

setMessageBodies

public void setMessageBodies(MessageBody[] messageBodies)
Sets the value corresponding to the payload of the [Domain-Name] Avp.

Parameters:
messageBodies - the value corresponding to the payload of the [Domain-Name] Avp.

getNodeFunctionality

public java.lang.Integer getNodeFunctionality()
Gets the value corresponding to the payload of the {Node-Functionality} Avp.

Returns:
the value corresponding to the payload of the {Node-Functionality} Avp.

setNodeFunctionality

public void setNodeFunctionality(java.lang.Integer nodeFunctionality)
Sets the value corresponding to the payload of the {Node-Functionality} Avp.

Parameters:
nodeFunctionality - the value corresponding to the payload of the {Node-Functionality} Avp.

getRequestedPartyAddress

public java.lang.String getRequestedPartyAddress()
Gets the value corresponding to the payload of the [Requested-Party-Address] Avp.

Returns:
the value corresponding to the payload of the [Requested-Party-Address] Avp.

setRequestedPartyAddress

public void setRequestedPartyAddress(java.lang.String requestedPartyAddress)
Sets the value corresponding to the payload of the [Requested-Party-Address] Avp.

Parameters:
requestedPartyAddress - the value corresponding to the payload of the [Requested-Party-Address] Avp.

getRoleOfNode

public java.lang.Integer getRoleOfNode()
Gets the value corresponding to the payload of the [Role-Of-Node] Avp.

Returns:
the value corresponding to the payload of the [Role-Of-Node] Avp.

setRoleOfNode

public void setRoleOfNode(java.lang.Integer roleOfNode)
Sets the value corresponding to the payload of the [Role-Of-Node] Avp.

Parameters:
roleOfNode - the value corresponding to the payload of the [Role-Of-Node] Avp.

getSdpMediaComponents

public SDPMediaComponent[] getSdpMediaComponents()
Gets the values corresponding to the payloads of the [SDP-Media-Component] Avps.

Returns:
the values corresponding to the payloads of the [SDP-Media-Component] Avps.

setSdpMediaComponents

public void setSdpMediaComponents(SDPMediaComponent[] sdpMediaComponents)
Sets the values corresponding to the payloads of the [SDP-Media-Component] Avps.

Parameters:
sdpMediaComponents - the values corresponding to the payloads of the [SDP-Media-Component] Avps.

getSdpSessionDescription

public java.lang.String[] getSdpSessionDescription()
Gets the values corresponding to the payloads of the [SDP-Session-Description] Avps.

Returns:
the values corresponding to the payloads of the [SDP-Session-Description] Avps.

setSdpSessionDescription

public void setSdpSessionDescription(java.lang.String[] sdpSessionDescription)
Sets the values corresponding to the payloads of the [SDP-Session-Description] Avps.

Parameters:
sdpSessionDescription - the values corresponding to the payloads of the [SDP-Session-Description] Avps.

getServedPartyIpAddress

public java.lang.String getServedPartyIpAddress()
Gets the value corresponding to the payload of the [Served-Party-IP-Address] Avp.

Returns:
the value corresponding to the payload of the [Served-Party-IP-Address] Avp.

setServedPartyIpAddress

public void setServedPartyIpAddress(java.lang.String servedPartyIPAddress)
Sets the value corresponding to the payload of the [Served-Party-IP-Address] Avp.

Parameters:
servedPartyIPAddress - the value corresponding to the payload of the [Served-Party-IP-Address] Avp.

getServerCapabilities

public ServerCapabilities getServerCapabilities()
Gets the value corresponding to the payload of the [Server-Capabilities] Avp.

Returns:
the value corresponding to the payload of the [Server-Capabilities] Avp.

setServerCapabilities

public void setServerCapabilities(ServerCapabilities serverCapabilities)
Sets the value corresponding to the payload of the [Server-Capabilities] Avp.

Parameters:
serverCapabilities - the value corresponding to the payload of the [Server-Capabilities] Avp.

getServiceId

public java.lang.String getServiceId()
Gets the value corresponding to the payload of the [Service-Id] Avp.

Returns:
the value corresponding to the payload of the [Service-Id] Avp.

setServiceId

public void setServiceId(java.lang.String serviceId)
Sets the value corresponding to the payload of the [Service-Id] Avp.

Parameters:
serviceId - the value corresponding to the payload of the [Service-Id] Avp.

getServiceSpecificData

public java.lang.String getServiceSpecificData()
Gets the value corresponding to the payload of the [Service-Specific-Data] Avp.

Returns:
the value corresponding to the payload of the [Service-Specific-Data] Avp.

setServiceSpecificData

public void setServiceSpecificData(java.lang.String serviceSpecificData)
Sets the value corresponding to the payload of the [Service-Specific-Data] Avp.

Parameters:
serviceSpecificData - the value corresponding to the payload of the [Service-Specific-Data] Avp.

getTimeStamps

public TimeStamps getTimeStamps()
Gets the value corresponding to the payload of the [Time-Stamps] Avp.

Returns:
the value corresponding to the payload of the [Time-Stamps] Avp.

setTimeStamps

public void setTimeStamps(TimeStamps timeStamps)
Sets the value corresponding to the payload of the [Time-Stamps] Avp.

Parameters:
timeStamps - the value corresponding to the payload of the [Time-Stamps] Avp.

getTrunkGroupId

public TrunkGroupId getTrunkGroupId()
Gets the value corresponding to the payload of the [Trunk-Group-Id] Avp.

Returns:
the value corresponding to the payload of the [Trunk-Group-Id] Avp.

setTrunkGroupId

public void setTrunkGroupId(TrunkGroupId trunkGroupId)
Sets the value corresponding to the payload of the [Trunk-Group-Id] Avp.

Parameters:
trunkGroupId - the value corresponding to the payload of the [Trunk-Group-Id] Avp.

getUserSessionId

public java.lang.String getUserSessionId()
Gets the value corresponding to the payload of the {User-Session-Id} Avp.

Returns:
the value corresponding to the payload of the {User-Session-Id} Avp.

setUserSessionId

public void setUserSessionId(java.lang.String userSessionId)
Sets the value corresponding to the payload of the {User-Session-Id} Avp.

Parameters:
userSessionId - the value corresponding to the payload of the {User-Session-Id} Avp.

validate

public void validate()
              throws ChargingValidationException
Validates the members of the IMSInformation 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 IMSInformation is in an unexpected format.

toAvp

public Avp toAvp()
          throws AvpTransformationException
Transforms an IMSInformation object into a Grouped [IMS-Information] Avp.

All non-null members of IMSInformation will be transformed into Avps nested inside of the [IMS-Information] Avp.

Returns:
the [IMS-Information] Avp.
Throws:
AvpTransformationException - if a member of IMSInformation is in an unexpected format.


Copyright © 2006 IBM Corp. All Rights Reserved.