SAP CC 3.0 Core API

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 HTTP Communication Interface.

A User is any person who is authorized to work with SAP Convergent Charging 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.

Users are divided into 2 categories: human and non-human users. Human users are dialog users as opposed to service users. They have different policies regarding passwords. Dialog users can be locked because of a number of failed authentication attempts, and must modify their password regularly. On the other hand, service users cannot be locked for unsuccessful login attempts and their password never expire. The latter category of is intended for automated processes where such restrictions could cause an interruption of service.

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.

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
  • Tier Tables
  • Charges
  • Discount templates
  • Transaction patterns


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="catalogName" type="xs:string"/>
    <xs:attribute name="locked" type="xs:boolean"/>
    <xs:attribute name="human" type="xs:boolean" use="optional" default="true" /> <!-- deprecated -->
    <xs:attribute name="technical" type="xs:boolean" use="optional" default="false" />
    <xs:attribute name="passwordRevoked" type="xs:boolean" use="optional" default="false" />
  </xs:complexType>
 </xs:element>

Field Summary
static java.lang.String PASSWORD_REVOKED_ATTRIBUTE_NAME
          The XML node tag name for the user model
static java.lang.String TAG_NAME
          The XML node tag name for the user model
 
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 object, the child representing the marshallable object which must be added to the element.
 java.lang.String getCatalogName()
          Returns the name of the catalog associated to this user.
 java.lang.String getLoginID()
          Returns the login of this user.
 java.lang.String getPassword()
          Returns the password of this user.
 java.util.Vector<java.lang.String> getPermissions()
          Returns the list of role(s)/permission(s) allowed to this user.
 boolean isHuman()
          Deprecated. Use isTechnical() instead.
 boolean isLocked()
          Returns whether the user is locked.
 boolean isPasswordRevoked()
          Tells whether or not this user must change is password on next login.
 boolean isTechnical()
          Gets whether the user is a technical user.
 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 element being processed.
 void setCatalogName(java.lang.String catalogName)
          Sets the name of the catalog associated to this user.
 void setHuman(boolean human)
          Deprecated. Use setTechnical(boolean) instead.
 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 setPasswordRevoked(boolean passwordRevoked)
          Sets the flag that force this user to change its password.
 void setTechnical(boolean technical)
          Sets whether the user is a technical user.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TAG_NAME

public static final java.lang.String TAG_NAME
The XML node tag name for the user model

See Also:
Constant Field Values

PASSWORD_REVOKED_ATTRIBUTE_NAME

public static final java.lang.String PASSWORD_REVOKED_ATTRIBUTE_NAME
The XML node tag name for the user model

See Also:
Constant Field Values
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.

getCatalogName

public java.lang.String getCatalogName()
Returns the name of the catalog associated to this user.

Returns:
the name of the catalog associated to this user, or null if the user is not associated to a catalog.

setCatalogName

public void setCatalogName(java.lang.String catalogName)
Sets the name of the catalog associated to this user.

Parameters:
catalogName - the name of the catalog associated to this user, or null if the user is not associated to a catalog.

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.

isHuman

@Deprecated
public boolean isHuman()
Deprecated. Use isTechnical() instead.

Gets whether the user is not a technical user.

Returns:
true if the user is not a technical user, false otherwise

setHuman

@Deprecated
public void setHuman(boolean human)
Deprecated. Use setTechnical(boolean) instead.

Sets whether the user is not a technical user.

Parameters:
human - whether the user is not a technical user

isTechnical

public boolean isTechnical()
Gets whether the user is a technical user.

Returns:
true if the user is a technical user, false otherwise

setTechnical

public void setTechnical(boolean technical)
Sets whether the user is a technical user.

Parameters:
technical - whether the user is a technical user

isPasswordRevoked

public boolean isPasswordRevoked()
Tells whether or not this user must change is password on next login.

Returns:
true if this user must change is password.

setPasswordRevoked

public void setPasswordRevoked(boolean passwordRevoked)
Sets the flag that force this user to change its password.

Parameters:
passwordRevoked - true if this user must change is password.

setAttributes

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

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

addChild

public void addChild(java.lang.String tagName,
                     XMLMarshallable child)
Description copied from interface: XMLMarshallable
Adds a child to the object, the child representing the marshallable object which must be added to the element.

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 3.0 Core API

SAP Convergent Charging 3.0

Document Version: SP04 and later

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