NIST-SIP: The Reference Implementation for JAIN-SIP 1.2

gov.nist.javax.sip.header.ims
Class PChargingFunctionAddresses

java.lang.Object
  extended by gov.nist.core.GenericObject
      extended by gov.nist.javax.sip.header.SIPObject
          extended by gov.nist.javax.sip.header.SIPHeader
              extended by gov.nist.javax.sip.header.ParametersHeader
                  extended by gov.nist.javax.sip.header.ims.PChargingFunctionAddresses
All Implemented Interfaces:
HeaderExt, PChargingFunctionAddressesHeader, SIPHeaderNamesIms, SIPHeaderNames, Serializable, Cloneable, ExtensionHeader, Header, Parameters

public class PChargingFunctionAddresses
extends ParametersHeader
implements PChargingFunctionAddressesHeader, SIPHeaderNamesIms, ExtensionHeader

P-Charging-Function-Addresses SIP Private Header.

Sintax (RFC 3455):

 P-Charging-Addr        = "P-Charging-Function-Addresses" HCOLON
                           charge-addr-params
                           *(SEMI charge-addr-params)
 charge-addr-params     = ccf / ecf / generic-param
 ccf                    = "ccf" EQUAL gen-value
 ecf                    = "ecf" EQUAL gen-value
 gen-value              = token / host / quoted-string
 

example:

P-Charging-Function-Addresses: ccf=192.1.1.1; ccf=192.1.1.2; ecf=192.1.1.3; ecf=192.1.1.4

TODO: add PARSER support for IPv6 address. eg: P-Charging-Function-Addresses: ccf=[5555.b99.c88.d77.e66]; ecf=[5555.6aa.7bb.8cc.9dd]

Author:
ALEXANDRE MIGUEL SILVA SANTOS - N?? 10045401
See Also:
Serialized Form

Field Summary
 
Fields inherited from interface gov.nist.javax.sip.header.ims.PChargingFunctionAddressesHeader
NAME
 
Fields inherited from interface gov.nist.javax.sip.header.ims.SIPHeaderNamesIms
CALLED_PARTY_ID, P_ACCESS_NETWORK_INFO, P_ASSERTED_IDENTITY, P_ASSERTED_SERVICE, P_ASSOCIATED_URI, P_CHARGING_FUNCTION_ADDRESSES, P_CHARGING_VECTOR, P_MEDIA_AUTHORIZATION, P_PREFERRED_IDENTITY, P_PREFERRED_SERVICE, P_PROFILE_KEY, P_SERVED_USER, P_USER_DATABASE, P_VISITED_NETWORK_ID, PATH, PRIVACY, SECURITY_CLIENT, SECURITY_SERVER, SECURITY_VERIFY, SERVICE_ROUTE
 
Fields inherited from interface gov.nist.javax.sip.header.SIPHeaderNames
ACCEPT, ACCEPT_ENCODING, ACCEPT_LANGUAGE, ALERT_INFO, ALLOW, ALLOW_EVENTS, AUTHENTICATION_INFO, AUTHORIZATION, CALL_ID, CALL_INFO, CONTACT, CONTENT_DISPOSITION, CONTENT_ENCODING, CONTENT_LANGUAGE, CONTENT_LENGTH, CONTENT_TYPE, CSEQ, DATE, ERROR_INFO, EVENT, EXPIRES, FROM, IN_REPLY_TO, JOIN, MAX_FORWARDS, MIME_VERSION, MIN_EXPIRES, MIN_SE, ORGANIZATION, PRIORITY, PROXY_AUTHENTICATE, PROXY_AUTHORIZATION, PROXY_REQUIRE, RACK, REASON, RECORD_ROUTE, REFERRED_BY, REPLACES, REPLY_TO, REQUIRE, RETRY_AFTER, ROUTE, RSEQ, SERVER, SESSION_EXPIRES, SIP_ETAG, SIP_IF_MATCH, SUBJECT, SUBSCRIPTION_STATE, SUPPORTED, TIMESTAMP, TO, UNSUPPORTED, USER_AGENT, VIA, WARNING, WWW_AUTHENTICATE
 
Constructor Summary
PChargingFunctionAddresses()
          Defaul Constructor
 
Method Summary
 void addChargingCollectionFunctionAddress(String ccfAddress)
          Add another Charging Collection Function (CCF) Address to this header
 void addEventChargingFunctionAddress(String ecfAddress)
          Add another Event Charging Function (ECF) Address to this header
 boolean delete(String value, String name)
          Remove parameter
 ListIterator getChargingCollectionFunctionAddresses()
          Get all the Charging Collection Function (CCF) Addresses set in this header
 ListIterator getEventChargingFunctionAddresses()
          Get all the Event Charging Function (ECF) Addresses set in this header
 void removeChargingCollectionFunctionAddress(String ccfAddress)
          Remove a Charging Collection Function (CCF) Address set in this header
 void removeEventChargingFunctionAddress(String ecfAddress)
          Remove a Event Charging Function (ECF) Address set in this header
 void setChargingCollectionFunctionAddress(String ccfAddress)
          Set the Charging Collection Function (CCF) Address
 void setEventChargingFunctionAddress(String ecfAddress)
          Set the Event Charging Function (ECF) Address
 void setValue(String value)
          Sets the value parameter of the ExtensionHeader.
 
Methods inherited from class gov.nist.javax.sip.header.ParametersHeader
clone, getNameValue, getParameter, getParameterNames, getParameters, getParameterValue, hasParameter, hasParameters, removeParameter, removeParameters, setParameter, setParameter, setParameters, setQuotedParameter
 
Methods inherited from class gov.nist.javax.sip.header.SIPHeader
encode, encode, getHeaderName, getHeaderValue, getName, getValue, hashCode, isHeaderList, setHeaderName, toString
 
Methods inherited from class gov.nist.javax.sip.header.SIPObject
dbgPrint, debugDump, debugDump, equals, match
 
Methods inherited from class gov.nist.core.GenericObject
getClassFromName, getMatcher, isMySubclass, makeClone, merge, setMatcher
 
Methods inherited from class java.lang.Object
equals, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface javax.sip.header.Parameters
getParameter, getParameterNames, removeParameter, setParameter
 
Methods inherited from interface javax.sip.header.ExtensionHeader
getValue
 
Methods inherited from interface javax.sip.header.Header
clone, equals, getName, hashCode, toString
 

Constructor Detail

PChargingFunctionAddresses

public PChargingFunctionAddresses()
Defaul Constructor

Method Detail

setChargingCollectionFunctionAddress

public void setChargingCollectionFunctionAddress(String ccfAddress)
                                          throws ParseException

Set the Charging Collection Function (CCF) Address

Specified by:
setChargingCollectionFunctionAddress in interface PChargingFunctionAddressesHeader
Parameters:
ccfAddress - - the address to set in the CCF parameter
Throws:
ParseException

addChargingCollectionFunctionAddress

public void addChargingCollectionFunctionAddress(String ccfAddress)
                                          throws ParseException

Add another Charging Collection Function (CCF) Address to this header

Specified by:
addChargingCollectionFunctionAddress in interface PChargingFunctionAddressesHeader
Parameters:
ccfAddress - - the address to set in the CCF parameter
Throws:
ParseException

removeChargingCollectionFunctionAddress

public void removeChargingCollectionFunctionAddress(String ccfAddress)
                                             throws ParseException

Remove a Charging Collection Function (CCF) Address set in this header

Specified by:
removeChargingCollectionFunctionAddress in interface PChargingFunctionAddressesHeader
Parameters:
ccfAddress - - the address in the CCF parameter to remove
Throws:
ParseException - if the address was not removed

getChargingCollectionFunctionAddresses

public ListIterator getChargingCollectionFunctionAddresses()

Get all the Charging Collection Function (CCF) Addresses set in this header

Specified by:
getChargingCollectionFunctionAddresses in interface PChargingFunctionAddressesHeader
Returns:
ListIterator that constains all CCF addresses of this header

setEventChargingFunctionAddress

public void setEventChargingFunctionAddress(String ecfAddress)
                                     throws ParseException

Set the Event Charging Function (ECF) Address

Specified by:
setEventChargingFunctionAddress in interface PChargingFunctionAddressesHeader
Parameters:
ecfAddress - - the address to set in the ECF parameter
Throws:
ParseException

addEventChargingFunctionAddress

public void addEventChargingFunctionAddress(String ecfAddress)
                                     throws ParseException

Add another Event Charging Function (ECF) Address to this header

Specified by:
addEventChargingFunctionAddress in interface PChargingFunctionAddressesHeader
Parameters:
ecfAddress - - the address to set in the ECF parameter
Throws:
ParseException

removeEventChargingFunctionAddress

public void removeEventChargingFunctionAddress(String ecfAddress)
                                        throws ParseException

Remove a Event Charging Function (ECF) Address set in this header

Specified by:
removeEventChargingFunctionAddress in interface PChargingFunctionAddressesHeader
Parameters:
ecfAddress - - the address in the ECF parameter to remove
Throws:
ParseException - if the address was not removed

getEventChargingFunctionAddresses

public ListIterator getEventChargingFunctionAddresses()

Get all the Event Charging Function (ECF) Addresses set in this header

Specified by:
getEventChargingFunctionAddresses in interface PChargingFunctionAddressesHeader
Returns:
ListIterator that constains all CCF addresses of this header

delete

public boolean delete(String value,
                      String name)

Remove parameter

Parameters:
value - - of the parameter
name - - of the parameter
Returns:
true if parameter was removed, and false if not

setValue

public void setValue(String value)
              throws ParseException
Description copied from interface: ExtensionHeader
Sets the value parameter of the ExtensionHeader.

Specified by:
setValue in interface ExtensionHeader
Parameters:
value - - the new value of the ExtensionHeader
Throws:
ParseException - which signals that an error has been reached unexpectedly while parsing the value parameter.

NIST-SIP: The Reference Implementation for JAIN-SIP 1.2

A product of the NIST/ITL Advanced Networking Technologies Division.
See conditions of use.
Submit a bug report or feature request.