public class ChargingContractRevisionModel extends HCIModelAdapter implements XMLMapping
Java class represents a version of a charging contract; You cannot manage such data with the Java APIs of SAP CC.
Implementation Note and Concepts
A charging contract is the pricing and charging view of a provider contract stored in SAP Convergent Charging.
In this Java API Reference, consider the following Java classes:
A contract is a long-term agreement between a service provider and a customer based on specific terms that have been negotiated beforehand which defines how and how much the customer shall be charged:
A Charging Contract is composed of:
id which uniquely identifies the Charging Contract in the systemsubscriberAccountId which uniquely identifies the Subscriber Account which has subscribed to the present Charging ContractsubscriberAccountServiceProviderName which specifies the name of the service provider who has delivered the present Charging Contract.
The name of the service provider matches the catalog owner.rootChargingContractId which uniquely identifies the Root Charging Contract of the present Linked Charging ContractCharge Plan Classes
whose catalog owner must match the declared service provider...
A Charging Contract with a rootChargingContractId set is called a Linked Charging Contract.
This type of contract is linked to a Root Charging Contract.
A Root Charging Contract may define counter(s) that can be shared with the Charging Contract Item(s) of this Linked Charging Contract(s).
These counter are pooled counters.
The XML APIs specify the following XSD fragment:
XSD Fragment
<xs:element name="chargingContractRevision">
<xs:complexType>
<xs:sequence>
<xs:element name="additionalInfo" type="AdditionalInfoType" minOccurs="0" maxOccurs="unbounded" />
<xs:element ref="chargingContractItemRevision" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="id" use="required" type="xs:string"/>
<xs:attribute name="subscriberAccountId" type="xs:string"/>
<xs:attribute name="subscriberAccountServiceProviderName" type="xs:string"/>
<xs:attribute name="rootChargingContractId" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
| Modifier and Type | Field and Description |
|---|---|
static String |
TAG_NAME
The XML tag name of the Charging Contract XML representation
|
| Constructor and Description |
|---|
ChargingContractRevisionModel() |
| Modifier and Type | Method and Description |
|---|---|
void |
addCharacterData(String cData)
Adds character data to the content element.
|
void |
addChild(String tagName,
XMLMarshallable child)
Adds a child to the object, the
child representing
the marshallable object which must be added to the element. |
List<AdditionalInfoModel> |
getAdditionalInfoList()
Gets the list of
Additional Information of the Charging Contract. |
List<ChargingContractItemRevisionModel> |
getChargingContractItemList()
Gets the list of
Charging Contract Items. |
Class<?> |
getClass(String nsUri,
String tag,
XMLAttributes atts)
Returns the
Java class for a specified XML tag and its attributes in a namespace. |
String |
getId()
Gets the unique identifier of the Charging Contract in the system.
|
String |
getRootChargingContractId()
Gets the unique identifier of the root charging contract if this contract is linked for counter pooling purpose, null if
the contract is not linked.
|
String |
getSubscriberAccountId()
Gets the unique identifier of the
Subscriber Account which has subscribed to the present Charging Contract. |
String |
getSubscriberAccountServiceProviderName()
Gets the name of the service provider who has delivered the present Charging Contract.
|
String |
getTagName()
Gets the XML tag name of the HCI model.
|
void |
marshalAttributes(XMLOutputter output)
Gives an XML representation of the attributes of an object.
|
void |
marshalChildren(XMLOutputter output)
Gives an XML representation of the child objects of an object.
|
void |
setAttributes(XMLAttributes atts)
Sets the attributes of the XML representation of the element being
processed.
|
void |
setId(String id)
Sets the unique identifier of the Charging Contract in the system.
|
void |
setRootChargingContractId(String rootChargingContractId)
Sets the unique identifier of the root charging contract.
|
void |
setSubscriberAccountId(String subscriberAccountId)
Sets the unique identifier of the
Subscriber Account which has subscribed to the present Charging Contract. |
void |
setSubscriberAccountServiceProviderName(String subscriberAccountServiceProviderName)
Sets the name of the service provider who has delivered the present Charging Contract.
|
marshalpublic static final String TAG_NAME
public String getId()
This identifier is defined by the provisioning system.
public void setId(String id)
This identifier is defined by the provisioning system.
id - The unique identifier in the system to set in the Charging Contractpublic String getSubscriberAccountId()
Subscriber Account which has subscribed to the present Charging Contract.public void setSubscriberAccountId(String subscriberAccountId)
Subscriber Account which has subscribed to the present Charging Contract.subscriberAccountId - The unique identifier of the Subscriber Account in the system to set in the Charging Contractpublic String getSubscriberAccountServiceProviderName()
The name of the service provider matches the catalog owner of the subscribed Charging Contract Items.
So, Charge Plan Classes referred by the subscribed Charging Contract Items
must be owned by this service provider.
public void setSubscriberAccountServiceProviderName(String subscriberAccountServiceProviderName)
The name of the service provider matches the catalog owner of the subscribed Charging Contract Items.
So, Charge Plan Classes referred by the subscribed Charging Contract Items
must be owned by this service provider.
subscriberAccountServiceProviderName - The name of the service provider to set in the Charging Contractpublic String getRootChargingContractId()
public void setRootChargingContractId(String rootChargingContractId)
rootChargingContractId - The unique identifier of the linked charging contractpublic List<AdditionalInfoModel> getAdditionalInfoList()
Additional Information of the Charging Contract.public List<ChargingContractItemRevisionModel> getChargingContractItemList()
Charging Contract Items.
The Charging Contract includes a description and customizable.Charging Contract Items.public String getTagName()
ITagNameProvidergetTagName in interface ITagNameProviderpublic void marshalAttributes(XMLOutputter output)
IXMLMarshallablemarshalAttributes in interface IXMLMarshallableoutput - The XML output to marshal the object attributes intopublic void marshalChildren(XMLOutputter output)
IXMLMarshallablemarshalChildren in interface IXMLMarshallableoutput - The XML output to marshal the child objects intopublic void addCharacterData(String cData)
XMLMarshallableaddCharacterData in interface XMLMarshallablecData - The character data to be addedpublic void addChild(String tagName, XMLMarshallable child)
XMLMarshallablechild representing
the marshallable object which must be added to the element.addChild in interface XMLMarshallabletagName - The name of tag for the childchild - The child to be addedpublic void setAttributes(XMLAttributes atts)
XMLMarshallablesetAttributes in interface XMLMarshallableatts - The XML attributes of the current elementpublic Class<?> getClass(String nsUri, String tag, XMLAttributes atts)
XMLMappingJava class for a specified XML tag and its attributes in a namespace.getClass in interface XMLMappingnsUri - The unique resource identifier of the namespace of the XML tagtag - The local part of the XML tagatts - The attributes of the XML tagJava class with a default constructor