com.sap.security.api

Class UMException

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by com.sap.security.api.UMException
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
AttributeValueAlreadyExistsException, AuthenticationFailedException, CertificateAlreadyInUseException, DuplicateKeyException, InvalidIDException, InvalidLogonIdException, InvalidPasswordException, NoLogonDataAvailableException, NoSuchPrincipalException, ObjectAlreadyExistsException, PrincipalAlreadyExistsException, SearchResultSizeLimitExceededException, TicketException, UserLockedException

public class UMException
extends Exception

This is the superclass of all checked exceptions employed in the user management; it indicates error conditions that reasonable applications might want to catch.

See Also:
Serialized Form

Field Summary
protected  Throwable m_throwable
          Nested exception for backwards compatibility with NW04s (federated portal)
protected  List mMessageBuffer
          Message Buffer
 
Constructor Summary
UMException()
          This constructor should not be used because it does not reveal any error information to the caller.
UMException(String message)
           
UMException(Throwable nestedException)
          Constructor for PersistenceException wrapping another exception.
UMException(Throwable nestedException, String message)
          Constructor with nested exception and additional explanation text.
 
Method Summary
 void addMessage(IMessage message)
          Adds a message to the message buffer of this exception.
 String getLocalizedMessage()
          Returns the message text of the exception and of all nested exceptions in concatenated form.
 String getMessage()
          The same as getLocalizedMessage(), but using getMessage() first and if nothing delivered from there then using getLocalizedMessage().
 Iterator getMessages(boolean clearPermanentMessages)
          Returns an iterator which contains the IMessage objects assigned to this IPrincipal or null if no messages are assigned.
 Throwable getNestedException()
          Return the nested exception.
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_throwable

protected Throwable m_throwable
Nested exception for backwards compatibility with NW04s (federated portal)


mMessageBuffer

protected transient List mMessageBuffer
Message Buffer

Constructor Detail

UMException

public UMException(Throwable nestedException,
                   String message)
Constructor with nested exception and additional explanation text.

Parameters:
nestedException - The exception that is wrapped into the PersistenceException.
message - A String with the message of the PersistenceException. Callers should not repeat the message text of the nested exception becasue its message is already printed out automatically.

UMException

public UMException(Throwable nestedException)
Constructor for PersistenceException wrapping another exception.

Parameters:
nestedException - The wrapped exception.

UMException

public UMException(String message)

UMException

public UMException()
This constructor should not be used because it does not reveal any error information to the caller.

Method Detail

addMessage

public void addMessage(IMessage message)
Adds a message to the message buffer of this exception.

Parameters:
message - The message to add at the end of the message buffer.

getNestedException

public Throwable getNestedException()
Return the nested exception.

Returns:
The wrapped exception, or null if there is none.

getLocalizedMessage

public String getLocalizedMessage()
Returns the message text of the exception and of all nested exceptions in concatenated form. The message texts of this exception and of the nested exceptions are determined by calling method getLocalizedMessage() on the respective objects. If the method does not return a useful content (which might be the case for faulty implementations of exceptions), then the getMessage() method is used instead. Better any information than no information at all. The concatenation recognizes if the nested exception starts with the same text as the wrapping exception and in this case removes the duplicate parts. This avoids duplicate appearance of the same message if when filling the UMException the caller fills in a nested exception and uses its texts as the message text for the wrapper itself.

Overrides:
getLocalizedMessage in class Throwable
Returns:
The most information about the exception and the nested exception as possible.

getMessage

public String getMessage()
The same as getLocalizedMessage(), but using getMessage() first and if nothing delivered from there then using getLocalizedMessage().

Overrides:
getMessage in class Throwable
See Also:
getLocalizedMessage()

getMessages

public Iterator getMessages(boolean clearPermanentMessages)
Returns an iterator which contains the IMessage objects assigned to this IPrincipal or null if no messages are assigned. If the method is called with parameter true, every subsequent call will return null if no new message was assigned to this IPrincipal.

Parameters:
clearPermanentMessages - Specifies whether permanent messages with life time IMessage.LIFETIME_PERMANENT should be removed from the message buffer.
Returns:
The messages assigned to this IPrincipal object or null.
Access Rights

This class can be accessed from:


SC DC
[sap.com] ENGINEAPI [sap.com] com.sap.security.api.sda
[sap.com] ENGFACADE [sap.com] tc/je/usermanagement/api
[sap.com] CORE-TOOLS [sap.com] com.sap.engine.client.lib


Copyright 2010 SAP AG Complete Copyright Notice