SAP CC 1.0
API 4.2 (Core)

com.highdeal.hci
Class UserModel

java.lang.Object
  extended by com.highdeal.hci.UserModel
All Implemented Interfaces:
XMLMarshallable

public class UserModel
extends java.lang.Object
implements XMLMarshallable

This class represents a user of HighDeal Communication Infrastructure.

A User is any person who is authorized to work with SAP Convergent Charging 1.0 and who is assigned one or more roles in the organization.

A user is identified by a login/password.

If the advanced password management feature is enabled, each password has to conform to the complexity rules that have been defined by the administrator. Passwords may also have an expiration date after which they must be changed. A user can also be locked and thus prevented to do any operation if his password is wrongly entered several times.

To each user, a list of permissions (or role) is associated. Optionally, a perimeter code can be associated to a user. This code will refer to a perimeter which will define a subset of buyers/customers which will be accessible to this user.

ROLE DEFINITION

Roles are predefined levels of authorization that grant Users specific access and control rights within the system. The various roles that are available and the level of authority associated with each is listed in the table that follows.
To each user, a list of permissions (or role) is associated.
So, according to permissions associated to a user, this user will be allowed to use only the related set of APIs. For each API, the java documentation will present the list of roles for which the API is available.

USER PERIMETER DEFINITION

A user perimeter is used to limit the objects which are accessible by a given user. In other terms, if a perimeter code C is set for a user, then, all operations performed by this user will be limited to buyer/customer belonging to the related perimeter identified by C.
A user perimeter will be defined by a set of constraints (porting on Party table) which will apply each time the user will try to access to any kind of object concerning a buyer or a customer (subscription, account, transaction, call for payment ...).
By example, if the operator defines a perimeter CA which represents all customers living into California and if this operator creates a user U by setting the perimeter code to CA, by example, through the SAP Convergent Charging 1.0 API, then when U will try to : This few examples can be easly extended to other BnR, ARP objects if this object concern customer (AccountOperation, CallForPayment ....). But for objects which concern exclusively the vendor (VendorDunningSettings, VendorPaymentSettings ....) not perimeter is applied.
NOTE : As the current user perimeter notion is based on the Party notion, the user perimeter notion requires the Bill'nReport module to work. No perimeter is applied whith the Transactive Rate configuration. a Bill or Full configuration is required.
For more information about user perimeters, please consult PerimeterModel.

TRANSACTIVE EXISTING ROLES

Role Name ID Authorized domain Main authorized actions
Transactive Administrator "admin" all all
User Administrator "useradmin" Users Manage the users and their rights
Customer Sale Representative (CSR) "csr" Subscriptions (Price & Rate) Manage subscriptions.
Marketing "marketing"
  • Offers (PnR)
  • Discount templates (if BnR available)
Manage :
  • Products
  • Pricing Macros
  • Translation Tables
  • Charges
  • Discount templates
  • Transaction patterns
Account Manager "accountmanager" Bill, Settle & Report Manage :
  • Parties
  • Accounts
  • Account operations
  • Calls for payment
  • Disputes
  • Discount templates
  • Transaction patterns
  • Bulk operations
Financial Administrator "arpadmin" Account Receivable & Payable Manage :
  • Payments
  • Aging reports
Collections manager "collectionsmanager" Account Receivable & Payable Manage :
  • Collection files
  • Dunning steps
  • Call for payment schedules


XML Schema Fragment
<xs:element name="user">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="permission" minOccurs="0" maxOccurs="unbounded">
        <xs:complexType>
          <xs:attribute name="value" type="xs:string"/>
        </xs:complexType>
     </xs:element>
    </xs:sequence>
    <xs:attribute name="login" type="xs:string"/>
    <xs:attribute name="password" type="xs:string"/>
    <xs:attribute name="perimeterCode" type="xs:string"/>
    <xs:attribute name="locked" type="xs:boolean"/>
  </xs:complexType>
 </xs:element>

Constructor Summary
UserModel()
          Constructs an empty user.
 
Method Summary
 void addCharacterData(java.lang.String cData)
          Adds character data to the content element.
 void addChild(java.lang.String tagName, XMLMarshallable child)
          Adds a child to the objects, the child represents the marshallable object to be added into the content tree.
 java.lang.String getLoginID()
          Returns the login of this user.
 java.lang.String getPassword()
          Returns the password of this user.
 java.lang.String getPerimeterCode()
          Returns the code of the the related perimeter if a perimeter exits or null if no restricted perimeter is set.
 java.util.Vector<java.lang.String> getPermissions()
          Returns the list of role(s)/permission(s) allowed to this user.
 boolean isLocked()
          Returns whether the user is locked.
 void marshal(XMLOutputter output)
          Gives an XML representation of this object, and of its children.
 void setAttributes(XMLAttributes atts)
          Sets the attributes of the XML representation of the tag beeing processed.
 void setLocked(boolean locked)
          Sets whether the user is locked.
 void setLoginID(java.lang.String id)
          Sets the login for this user.
 void setPassword(java.lang.String pw)
          Sets the password for this user.
 void setPerimeterCode(java.lang.String code)
          Sets the code of the the related perimeter.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UserModel

public UserModel()
Constructs an empty user.

Method Detail

getLoginID

public java.lang.String getLoginID()
Returns the login of this user.

Returns:
the login of this user.

setLoginID

public void setLoginID(java.lang.String id)
Sets the login for this user.

Parameters:
id - the login for this user.

getPassword

public java.lang.String getPassword()
Returns the password of this user.

Returns:
the password of this user.

setPassword

public void setPassword(java.lang.String pw)
Sets the password for this user.

Parameters:
pw - the password for this user.

getPermissions

public java.util.Vector<java.lang.String> getPermissions()
Returns the list of role(s)/permission(s) allowed to this user.

Returns:
a list of String representing existing role names.

getPerimeterCode

public java.lang.String getPerimeterCode()
Returns the code of the the related perimeter if a perimeter exits or null if no restricted perimeter is set.

Returns:
the perimeter code.

setPerimeterCode

public void setPerimeterCode(java.lang.String code)
Sets the code of the the related perimeter. If no perimeter must be set, please use null value.

Parameters:
code - the perimeter code.

isLocked

public boolean isLocked()
Returns whether the user is locked.

Returns:
whether the user is locked.

setLocked

public void setLocked(boolean locked)
Sets whether the user is locked.

Parameters:
locked - whether the user is locked.

setAttributes

public void setAttributes(XMLAttributes atts)
Description copied from interface: XMLMarshallable
Sets the attributes of the XML representation of the tag beeing processed.

Specified by:
setAttributes in interface XMLMarshallable
Parameters:
atts - the XML attributes of the current tag.

addChild

public void addChild(java.lang.String tagName,
                     XMLMarshallable child)
Description copied from interface: XMLMarshallable
Adds a child to the objects, the child represents the marshallable object to be added into the content tree.

Specified by:
addChild in interface XMLMarshallable
Parameters:
tagName - the name of tag for the child.
child - the child to be added.

addCharacterData

public void addCharacterData(java.lang.String cData)
Description copied from interface: XMLMarshallable
Adds character data to the content element.

Specified by:
addCharacterData in interface XMLMarshallable
Parameters:
cData - the character data to be added.

marshal

public void marshal(XMLOutputter output)
Description copied from interface: XMLMarshallable
Gives an XML representation of this object, and of its children.

Specified by:
marshal in interface XMLMarshallable
Parameters:
output - the XML output to marshall the object into.

SAP CC 1.0
API 4.2 (Core)


API Reference - July 2009

SAP Convergent Charging 1.0 (build R4.2.1.35.0.0)
CONVERGENT CHARGING 4.2

(c) Copyright 2009 SAP AG. All rights reserved.