Class AccessModel
- All Implemented Interfaces:
XMLMarshallable
Java class represents an access in master data that grants a timed license to an end customer of a service provider to
access and use its digital services; In return for this service usage, the access identifies
a charge that must be computed and debited for this service consumption. This fee is part of a commercial agreement (subscription, provider contract).
The access establishes a business relationship between:
- a technical key that depends on the digital service infrastructure and that identifies a point of service consumption resource (like a phone number or an email addresse)
- a commercial agreement
Important Note
An access has a particular lifecycle. The technical key may be reassigned to another commercial agreement. See the Version and Chronology section.
An access is an association between technical information related to the usage of a digital service by an end customer and business information for charging this consumption.
- Technical information includes both an identifier of the service (SERVICE ID), and of an identifier of the end customer of this service (USER SERVICE ID - USID)
-
Business agreement information includes the link to the (
charge activations(*) for this user (end customer).
Example of user service ID and service ID: A phone number in the phone service, or an e-mail address in a messaging service
Notes (*)
-
Only the master charges that include a price plan configured with a usage rate can be part of an access.
These APIs define these particular charges as an
accessible charge. The business agreement information includes only accessible charges. -
An access may have an
owner. In this case, the access can only include accessible charges onsubscriptionsand provider contracts (seecharging contractsrelated to asubscriber accountwhoseservice provideris the same as the owner of the access.
Version and Chronology
The access is not directly managed. It contains a chronology of accessible charge(s). Anaccessible charge represents a charge activation linked by the access.
If a linked activation charge is removed, the corresponding accessible charge is replaced by the previous accessible charge in the chronology. If there is no previous accessible charge, the deleted accessible charge is replaced by the following accessible charge. If the deleted accessible charge was alone, the access is removed.
Note
Since release 3.0 of SAP Convergent Charging, accesses are automatically created during the provisioning of provider contracts. You cannot customize this creation. Make sure you do not corrupt the accesses master data stored in SAP CC when your project implementation mixes subscriptions and provider contracts that shared the same accesses.
- See Also:
XML API for HCI
The XML APIs specify the following XSD fragment:
XSD Fragment
<xs:element name="access">
<xs:complexType>
<xs:sequence>
<xs:element ref="accessibleChargeChronology" minOccurs="0" maxOccurs="1"/>
<xs:element ref="accessibleCharge" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="service" type="xs:string" use="required"/> <!-- means Service ID -->
<xs:attribute name="user" type="xs:string" use="required"/> <!-- means User Service ID -->
<xs:attribute name="owner" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="accessibleChargeChronology">
<xs:complexType>
<xs:sequence>
<xs:element ref="chronology" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionConstructs an empty access.AccessModel(String serviceId, String userServiceId) Constructs an access with a service identifier and a user service identifier. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCharacterData(String cData) Adds character data to the content element.voidaddChild(String tagName, XMLMarshallable child) Adds a child to the object, thechildrepresenting the marshallable object which must be added to the element.Gets the accessible charge for modification.Gets the accessible charge chronology of the access.getOwner()Gets the owner of the access.Gets the service identifier of the access.Gets the user service identifier of the access.voidmarshal(XMLOutputter output) Gives an XML representation of this object, including its children.voidsetAccessibleCharge(AccessibleChargeModel accessibleCharge) Sets the accessible charge for modification.voidsetAttributes(XMLAttributes atts) Sets the attributes of the XML representation of the element being processed.voidSets the owner of the access.voidsetServiceId(String serviceId) Sets the service identifier of the access.voidsetUserServiceId(String userServiceId) Sets the user service identifier of the access.
-
Field Details
-
NAME
The XML tag name of the data model: "access"- See Also:
-
-
Constructor Details
-
AccessModel
public AccessModel()Constructs an empty access. -
AccessModel
Constructs an access with a service identifier and a user service identifier.- Parameters:
serviceId- The service identifier of the accessuserServiceId- The user service identifier of the access
-
-
Method Details
-
getServiceId
Gets the service identifier of the access.- Returns:
- The service identifier of the access
-
setServiceId
Sets the service identifier of the access.- Parameters:
serviceId- The service identifier of the access
-
getUserServiceId
Gets the user service identifier of the access.- Returns:
- The user service identifier of the access
-
setUserServiceId
Sets the user service identifier of the access.- Parameters:
userServiceId- The user service identifier of the access
-
getOwner
Gets the owner of the access.- Returns:
- The owner of the access
-
setOwner
Sets the owner of the access.- Parameters:
owner- The owner of the access
-
getAccessibleChargeChronology
Gets the accessible charge chronology of the access.- Returns:
- The accessible charge chronology of the access
-
getAccessibleCharge
Gets the accessible charge for modification.- Returns:
- The accessible charge for modification
-
setAccessibleCharge
Sets the accessible charge for modification.- Parameters:
accessibleCharge- The accessible charge for modification
-
setAttributes
Description copied from interface:XMLMarshallableSets the attributes of the XML representation of the element being processed.- Specified by:
setAttributesin interfaceXMLMarshallable- Parameters:
atts- TheXML attributesof the current element
-
addChild
Description copied from interface:XMLMarshallableAdds a child to the object, thechildrepresenting the marshallable object which must be added to the element.- Specified by:
addChildin interfaceXMLMarshallable- Parameters:
tagName- The name of tag for the childchild- The child to be added
-
addCharacterData
Description copied from interface:XMLMarshallableAdds character data to the content element.- Specified by:
addCharacterDatain interfaceXMLMarshallable- Parameters:
cData- The character data to be added
-
marshal
Description copied from interface:XMLMarshallableGives an XML representation of this object, including its children.- Specified by:
marshalin interfaceXMLMarshallable- Parameters:
output- TheXML outputto marshal the object into
-