CASA/c_jwrapper/src/com/novell/casa/MiCasaException.java
2006-02-01 17:48:29 +00:00

821 lines
27 KiB
Java

/***********************************************************************
*
* Copyright (C) 2005-2006 Novell, Inc. All Rights Reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; version 2.1
* of the License.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, Novell, Inc.
*
* To contact Novell about this file by physical or electronic mail,
* you may find current contact information at www.novell.com.
*
***********************************************************************/
package com.novell.casa;
public class MiCasaException extends RuntimeException
{
/**
* Can't find the target object DN in NDS.
*
* @since 3.0
*/
public static final short NSSCS_E_OBJECT_NOT_FOUND = 0xFFFFFCE0; /* -800 */
/**
* NICI operations have failed.
*/
public static final short NSSCS_E_NICI_FAILURE = 0xFFFFFCDF; /* -801 */
/**
* Secret ID is not in the User Secret Store.
*/
public static final short NSSCS_E_INVALID_SECRET_ID = 0xFFFFFCDE; /* -802 */
/**
* Some internal operating system services have not been available.
*/
public static final short NSSCS_E_SYSTEM_FAILURE = 0xFFFFFCDD; /* -803 */
/**
* Access to the target SecretStore has been denied.
*/
public static final short NSSCS_E_ACCESS_DENIED = 0xFFFFFCDC; /* -804 */
/**
* Some internal NDS services have not been available.
*/
public static final short NSSCS_E_NDS_INTERNAL_FAILURE = 0xFFFFFCDB; /* -805 */
/**
* Secret has not been initialized with a write.
*/
public static final short NSSCS_E_SECRET_UNINITIALIZED = 0xFFFFFCDA; /* -806 */
/**
* Size of the buffer is not in a nominal range between minimum and maximum.
*/
public static final short NSSCS_E_BUFFER_LEN = 0xFFFFFCD9; /* -807 */
/**
* Client and server components are not of the compatible versions.
*/
public static final short NSSCS_E_INCOMPATIBLE_VERSION = 0xFFFFFCD8; /* -808 */
/**
* SecretStore data on the server has been corrupted.
*/
public static final short NSSCS_E_CORRUPTED_STORE = 0xFFFFFCD7; /* -809 */
/**
* Secret ID already exists in the Secret Store.
*/
public static final short NSSCS_E_SECRET_ID_EXISTS = 0xFFFFFCD6; /* -810 */
/**
* User NDS password has been changed by the administrator.
*/
public static final short NSSCS_E_NDS_PWORD_CHANGED = 0xFFFFFCD5; /* -811 */
/**
* Target NDS User object not found.
*/
public static final short NSSCS_E_INVALID_TARGET_OBJECT = 0xFFFFFCD4; /* -812 */
/**
* Target NDS User object does not have a SecretStore.
*/
public static final short NSSCS_E_STORE_NOT_FOUND = 0xFFFFFCD3; /* -813 */
/**
* SecretStore not on the Network.
*/
public static final short NSSCS_E_SERVICE_NOT_FOUND = 0xFFFFFCD2; /* -814 */
/**
* Length of the Secret ID buffer exceeds the limit.
*/
public static final short NSSCS_E_SECRET_ID_TOO_LONG = 0xFFFFFCD1; /* -815 */
/**
* User not authenticated.
*/
public static final short NSSCS_E_NOT_AUTHENTICATED = 0xFFFFFCCF; /* -817 */
/**
* Not supported operations.
*/
public static final short NSSCS_E_NOT_SUPPORTED = 0xFFFFFCCE; /* -818 */
/**
* Typed in NDS password not valid.
*/
public static final short NSSCS_E_NDS_PWORD_INVALID = 0xFFFFFCCD; /* -819 */
/**
* Length of the Enumeration buffer too short.
*/
public static final short NSSCS_E_ENUM_BUFF_TOO_SHORT = 0xFFFFFCD0; /* -816 */
/**
* Session keys of the client and server NICI are out of sync.
*/
public static final short NSSCS_E_NICI_OUTOF_SYNC = 0xFFFFFCCC; /* -820 */
/**
* Requested service not supported yet.
*/
public static final short NSSCS_E_SERVICE_NOT_SUPPORTED = 0xFFFFFCCB; /* -821 */
/**
* NDS authentication type not supported.
*/
public static final short NSSCS_E_TOKEN_NOT_SUPPORTED = 0xFFFFFCCA; /* -822 */
/**
* Unicode text conversion operation failed.
*/
public static final short NSSCS_E_UNICODE_OP_FAILURE = 0xFFFFFCC9; /* -823 */
/**
* Connection to server is lost.
*/
public static final short NSSCS_E_TRANSPORT_FAILURE = 0xFFFFFCC8; /* -824 */
/**
* Cryptographic operation failed.
*/
public static final short NSSCS_E_CRYPTO_OP_FAILURE = 0xFFFFFCC7; /* -825 */
/**
* Opening a connection to the server failed.
*/
public static final short NSSCS_E_SERVER_CONN_FAILURE = 0xFFFFFCC6; /* -826 */
/**
* Access to server connection failed.
*/
public static final short NSSCS_E_CONN_ACCESS_FAILURE = 0xFFFFFCC5; /* -827 */
/**
* Size of the enumeration buffer exceeds the limit.
*/
public static final short NSSCS_E_ENUM_BUFF_TOO_LONG = 0xFFFFFCC4; /* -828 */
/**
* Size of the Secret buffer exceeds the limit.
*/
public static final short NSSCS_E_SECRET_BUFF_TOO_LONG = 0xFFFFFCC3; /* -829 */
/**
* Length of the Secret ID should be greater than zero.
*/
public static final short NSSCS_E_SECRET_ID_TOO_SHORT = 0xFFFFFCC2; /* -830 */
/**
* Protocol data corrupted on the wire.
*/
public static final short NSSCS_E_CORRUPTED_PACKET_DATA = 0xFFFFFCC1; /* -831 */
/**
* EP password validation failed. Access to the secret denied!
*/
public static final short NSSCS_E_EP_ACCESS_DENIED = 0xFFFFFCC0; /* -832 */
/**
* Schema is not extended to support SecreStore on the target tree.
*/
public static final short NSSCS_E_SCHEMA_NOT_EXTENDED = 0xFFFFFCBF; /* -833 */
/**
* One of the optional service attributes is not instantiated.
*/
public static final short NSSCS_E_ATTR_NOT_FOUND = 0xFFFFFCBE; /* -834 */
/**
* Server has been upgraded and user SecretStore should be updated.
*/
public static final short NSSCS_E_MIGRATION_NEEDED = 0xFFFFFCBD; /* -835 */
/**
* Master password could not be verified to read or unlock the secrets.
*/
public static final short NSSCS_E_MP_PWORD_INVALID = 0xFFFFFCBC; /* -836 */
/**
* Master password has not been set on the SecretStore.
*/
public static final short NSSCS_E_MP_PWORD_NOT_SET = 0xFFFFFCBB; /* -837 */
/**
* Ability to use master password has been disabled.
*/
public static final short NSSCS_E_MP_PWORD_NOT_ALLOWED = 0xFFFFFCBA; /* -838 */
/**
* Not a writeable replica of NDS.
*/
public static final short NSSCS_E_WRONG_REPLICA_TYPE = 0xFFFFFCB9; /* -839 */
/**
* Target attribute is not instantiated in NDS.
*
* @since 3.0
*/
public static final short NSSCS_E_ATTR_VAL_NOT_FOUND = 0xFFFFFCB8; /* -840 */
/**
* API parameter is not initialized.
*
* @since 3.0
*/
public static final short NSSCS_E_INVALID_PARAM = 0xFFFFFCB7; /* -841 */
/**
* Connection to SecretStore needs to be over SSL.
*
* @since 3.0
*/
public static final short NSSCS_E_NEED_SECURE_CHANNEL = 0xFFFFFCB6; /* -842 */
/**
* No server to support the given override configuration is found.
*
* @since 3.02
*/
public static final short NSSCS_E_CONFIG_NOT_SUPPORTED = 0xFFFFFCB5; /* -843 */
/**
* Attempt to unlock SecretStore failed because the store is not locked.
*
* @since 3.02
*/
public static final short NSSCS_E_STORE_NOT_LOCKED = 0xFFFFFCB4; /* -844 */
/**
* NDS Replica on the server that holds SecretStore is out of sync with the replica ring.
*
* @since 3.2
*/
public static final short NSSCS_E_TIME_OUT_OF_SYNC = 0xFFFFFCB3; /* -845 */
/**
* Versions of the client dlls don't match.
*
* @since 3.2
*/
public static final short NSSCS_E_VERSION_MISMATCH = 0xFFFFFCB2; /* -846 */
/**
* Buffer supplied for the secret is too short.
*
* @since 3.2
*/
public static final short NSSCS_E_SECRET_BUFF_TOO_SHORT = 0xFFFFFCB1; /* -847 */
/**
* Shared Secret processing and operations failed.
*
* @since 3.2
*/
public static final short NSSCS_E_SH_SECRET_FAILURE = 0xFFFFFCB0; /* -848 */
/**
* Shared Secret parser operations failed.
*
* @since 3.2
*/
public static final short NSSCS_E_PARSER_FAILURE = 0xFFFFFCAF; /* -849 */
/**
* Utf8 string operations failed.
*
* @since 3.2
*/
public static final short NSSCS_E_UTF8_OP_FAILURE = 0xFFFFFCAE; /* -850 */
/**
* Contextless name for LDAP bind does not resolve to a unique DN.
*
* @since 3.2
*/
public static final short NSSCS_E_CTX_LESS_CN_NOT_UNIQUE = 0xFFFFFCAD; /* -851 */
/**
* Feature not implemented yet.
*/
public static final short NSSCS_E_NOT_IMPLEMENTED = 0xFFFFFC88; /* -888 */
/**
* Product's BETA life has expired! Official release copy should be purchased.
*/
public static final short NSSCS_E_BETA_EXPIRED = 0xFFFFFC7D; /* -899 */
/**
* The error code.
*/
protected int err;
/**
* Determines if this object has a root exception.
*/
protected boolean hasRoot;
/**
* The root Throwable.
*/
protected Throwable root;
/**
* Constructs an empty SSException object. The error code is set to
* the 0.
*/
public MiCasaException()
{
super("");
err = 0;
root = this;
}
/**
* Constructs a SSException according to the error code.
*
* @param errCode The error code.
*/
public MiCasaException(int errCode)
{
super(generateMessage(errCode));
err = errCode;
root = this;
}
/**
* Generates a SSException with the specified message.
*
* @param errCode The SecretStore error code.
* @param message The exception message.
*/
public MiCasaException(int errCode, String message)
{
super(message);
err = errCode;
root = this;
}
/**
* Generates a SSException object that encapsulates the specified exception.
* The error code is set to 0. The message from the
* encapsulated exception is set as the message for this object.
*
* @param root The Throwable that is encapsulated in this object as the root.
*/
public MiCasaException(Throwable root)
{
this(0, root.getMessage());
hasRoot = true;
this.root = root;
}
/**
* Generates a SSException object that encapsulates the specified exception as
* its root. The error code is set to 0. The message from the root exception
* is set as the message for this object. The additional message is appended to
* the end of the encapsulated exception's message with a whitspace seperating
* them.
*
* @param root The Throwable that is encapsulated in this object as the root.
* @param message An additional message.
*/
public MiCasaException(Throwable root, String message)
{
this(0, message + " " + root.getMessage());
hasRoot = true;
this.root = root;
}
/**
* Generates a SSException object that encapsulates the specified exception as
* its root. The message from the root exception
* is set as the message for this object. The root message is appended to
* the end of the message with a whitspace seperating them.
*
* @param errCode The SecretStore error code.
* @param root The Throwable that is encapsulated in this object as the root.
* @param errCode An additional message.
* @since 3.2
*/
public MiCasaException(int errCode, Throwable root)
{
this(errCode, generateMessage(errCode) + " " + root.getMessage());
err = errCode;
hasRoot = true;
this.root = root;
}
/**
* Returns the message associated with the error code. Note that the returned
* value is not translated.
*
* @param errCode The Error Code.
* @return String The message.
*/
public static final String generateMessage(int errCode)
{
switch (errCode)
{
case NSSCS_E_OBJECT_NOT_FOUND:
return "Can't find the target object DN in NDS";
case NSSCS_E_NICI_FAILURE:
return "NICI operations have failed";
case NSSCS_E_INVALID_SECRET_ID:
return "Secret ID is not in the User Secret Store";
case NSSCS_E_SYSTEM_FAILURE:
return "Some internal operating system services have not been available";
case NSSCS_E_ACCESS_DENIED:
return "Access to the target SecretStore has been denied";
case NSSCS_E_NDS_INTERNAL_FAILURE:
return "Some internal NDS services have not been available";
case NSSCS_E_SECRET_UNINITIALIZED:
return "Secret has not been initialized with a write";
case NSSCS_E_BUFFER_LEN:
return "Size of the buffer is not in a nominal range between minimum and maximum";
case NSSCS_E_INCOMPATIBLE_VERSION:
return "Client and server components are not of the compatible versions";
case NSSCS_E_CORRUPTED_STORE:
return "SecretStore data on the server has been corrupted";
case NSSCS_E_SECRET_ID_EXISTS:
return "Secret ID is already in SecretStore";
case NSSCS_E_NDS_PWORD_CHANGED:
return "User NDS password has been changed by the administrator";
case NSSCS_E_INVALID_TARGET_OBJECT:
return "Target NDS User object not found";
case NSSCS_E_STORE_NOT_FOUND:
return "Target NDS User object does not have a SecretStore";
case NSSCS_E_SERVICE_NOT_FOUND:
return "SecretStore not on the Network";
case NSSCS_E_SECRET_ID_TOO_LONG:
return "Length of the Secret ID buffer exceeds the limit";
case NSSCS_E_ENUM_BUFF_TOO_SHORT:
return "Length of the Enumeration buffer too short";
case NSSCS_E_NOT_AUTHENTICATED:
return "User not authenticated";
case NSSCS_E_NOT_SUPPORTED:
return "Not supported operations";
case NSSCS_E_NDS_PWORD_INVALID:
return "Typed in NDS password not valid";
case NSSCS_E_NICI_OUTOF_SYNC:
return "Session keys of the client and server NICI are out of sync";
case NSSCS_E_SERVICE_NOT_SUPPORTED:
return "Requested service not supported yet";
case NSSCS_E_TOKEN_NOT_SUPPORTED:
return "NDS authentication type not supported";
case NSSCS_E_UNICODE_OP_FAILURE:
return "Unicode text conversion operation failed";
case NSSCS_E_TRANSPORT_FAILURE:
return "Connection to server is lost";
case NSSCS_E_CRYPTO_OP_FAILURE:
return "Cryptographic operation failed";
case NSSCS_E_SERVER_CONN_FAILURE:
return "Opening a connection to the server failed";
case NSSCS_E_CONN_ACCESS_FAILURE:
return "Access to server connection failed";
case NSSCS_E_ENUM_BUFF_TOO_LONG:
return "Size of the enumeration buffer exceeds the limit";
case NSSCS_E_SECRET_BUFF_TOO_LONG:
return "Size of the Secret buffer exceeds the limit";
case NSSCS_E_SECRET_ID_TOO_SHORT:
return "Length of the Secret ID should be greater than zero";
case NSSCS_E_CORRUPTED_PACKET_DATA:
return "Protocol data corrupted on the wire";
case NSSCS_E_EP_ACCESS_DENIED:
return "EP password validation failed. Access to the secret denied";
case NSSCS_E_SCHEMA_NOT_EXTENDED:
return "Schema is not extended to support SecreStore on the target tree";
case NSSCS_E_ATTR_NOT_FOUND:
return "One of the optional service attributes is not instantiated";
case NSSCS_E_MIGRATION_NEEDED:
return "Server has been upgraded and user SecretStore should be updated";
case NSSCS_E_MP_PWORD_INVALID:
return "Master password could not be verified to read or unlock the secrets";
case NSSCS_E_MP_PWORD_NOT_SET:
return "Master password has not been set on the SecretStore";
case NSSCS_E_MP_PWORD_NOT_ALLOWED:
return "Ability to use master password has been disabled";
case NSSCS_E_WRONG_REPLICA_TYPE:
return "Not a writeable replica of NDS";
case NSSCS_E_ATTR_VAL_NOT_FOUND:
return "Target attribute is not instantiated in NDS";
case NSSCS_E_INVALID_PARAM:
return "API parameter is not initialized";
case NSSCS_E_NEED_SECURE_CHANNEL:
return "Connection to SecretStore needs to be over SSL";
case NSSCS_E_CONFIG_NOT_SUPPORTED:
return "No server to support the given override configuration is found";
case NSSCS_E_STORE_NOT_LOCKED:
return "Attempt to unlock SecretStore failed because the store is not locked";
case NSSCS_E_TIME_OUT_OF_SYNC:
return "NDS Replica on the server that holds SecretStore is out of sync with the replica ring";
case NSSCS_E_VERSION_MISMATCH:
return "Versions of the client dlls don't match";
case NSSCS_E_SECRET_BUFF_TOO_SHORT:
return "Buffer supplied for the secret is too short";
case NSSCS_E_SH_SECRET_FAILURE:
return "Shared Secret processing and operations failed";
case NSSCS_E_PARSER_FAILURE:
return "Shared Secret parser operations failed";
case NSSCS_E_UTF8_OP_FAILURE:
return "Utf8 string operations failed";
case NSSCS_E_CTX_LESS_CN_NOT_UNIQUE:
return "Contextless name for LDAP bind does not resolve to a unique DN";
case NSSCS_E_NOT_IMPLEMENTED:
return "Feature not implemented yet";
case NSSCS_E_BETA_EXPIRED:
return "Product's BETA life has expired! Official release copy should be purchased";
}
return "";
}
/**
* Returns the error code.
*
* @return int - The error code.
*/
public int getErrorCode()
{
return err;
}
/*
public String getLocalizedMessage()
{
try
{
if (SecretStore.resourceBundle != null)
{
switch (err)
{
case NSSCS_E_OBJECT_NOT_FOUND:
return SecretStore.resourceBundle.getString("NSSCS_E_OBJECT_NOT_FOUND");
case NSSCS_E_NICI_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_NICI_FAILURE");
case NSSCS_E_INVALID_SECRET_ID:
return SecretStore.resourceBundle.getString("NSSCS_E_INVALID_SECRET_ID");
case NSSCS_E_SYSTEM_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_SYSTEM_FAILURE");
case NSSCS_E_ACCESS_DENIED:
return SecretStore.resourceBundle.getString("NSSCS_E_ACCESS_DENIED");
case NSSCS_E_NDS_INTERNAL_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_NDS_INTERNAL_FAILURE");
case NSSCS_E_SECRET_UNINITIALIZED:
return SecretStore.resourceBundle.getString("NSSCS_E_SECRET_UNINITIALIZED");
case NSSCS_E_BUFFER_LEN:
return SecretStore.resourceBundle.getString("NSSCS_E_BUFFER_LEN");
case NSSCS_E_INCOMPATIBLE_VERSION:
return SecretStore.resourceBundle.getString("NSSCS_E_INCOMPATIBLE_VERSION");
case NSSCS_E_CORRUPTED_STORE:
return SecretStore.resourceBundle.getString("NSSCS_E_CORRUPTED_STORE");
case NSSCS_E_SECRET_ID_EXISTS:
return SecretStore.resourceBundle.getString("NSSCS_E_SECRET_ID_EXISTS");
case NSSCS_E_NDS_PWORD_CHANGED:
return SecretStore.resourceBundle.getString("NSSCS_E_NDS_PWORD_CHANGED");
case NSSCS_E_INVALID_TARGET_OBJECT:
return SecretStore.resourceBundle.getString("NSSCS_E_INVALID_TARGET_OBJECT");
case NSSCS_E_STORE_NOT_FOUND:
return SecretStore.resourceBundle.getString("NSSCS_E_STORE_NOT_FOUND");
case NSSCS_E_SERVICE_NOT_FOUND:
return SecretStore.resourceBundle.getString("NSSCS_E_SERVICE_NOT_FOUND");
case NSSCS_E_SECRET_ID_TOO_LONG:
return SecretStore.resourceBundle.getString("NSSCS_E_SECRET_ID_TOO_LONG");
case NSSCS_E_ENUM_BUFF_TOO_SHORT:
return SecretStore.resourceBundle.getString("NSSCS_E_ENUM_BUFF_TOO_SHORT");
case NSSCS_E_NOT_AUTHENTICATED:
return SecretStore.resourceBundle.getString("NSSCS_E_NOT_AUTHENTICATED");
case NSSCS_E_NOT_SUPPORTED:
return SecretStore.resourceBundle.getString("NSSCS_E_NOT_SUPPORTED");
case NSSCS_E_NDS_PWORD_INVALID:
return SecretStore.resourceBundle.getString("NSSCS_E_NDS_PWORD_INVALID");
case NSSCS_E_NICI_OUTOF_SYNC:
return SecretStore.resourceBundle.getString("NSSCS_E_NICI_OUTOF_SYNC");
case NSSCS_E_SERVICE_NOT_SUPPORTED:
return SecretStore.resourceBundle.getString("NSSCS_E_SERVICE_NOT_SUPPORTED");
case NSSCS_E_TOKEN_NOT_SUPPORTED:
return SecretStore.resourceBundle.getString("NSSCS_E_TOKEN_NOT_SUPPORTED");
case NSSCS_E_UNICODE_OP_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_UNICODE_OP_FAILURE");
case NSSCS_E_TRANSPORT_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_TRANSPORT_FAILURE");
case NSSCS_E_CRYPTO_OP_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_CRYPTO_OP_FAILURE");
case NSSCS_E_SERVER_CONN_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_SERVER_CONN_FAILURE");
case NSSCS_E_CONN_ACCESS_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_CONN_ACCESS_FAILURE");
case NSSCS_E_ENUM_BUFF_TOO_LONG:
return SecretStore.resourceBundle.getString("NSSCS_E_ENUM_BUFF_TOO_LONG");
case NSSCS_E_SECRET_BUFF_TOO_LONG:
return SecretStore.resourceBundle.getString("NSSCS_E_SECRET_BUFF_TOO_LONG");
case NSSCS_E_SECRET_ID_TOO_SHORT:
return SecretStore.resourceBundle.getString("NSSCS_E_SECRET_ID_TOO_SHORT");
case NSSCS_E_CORRUPTED_PACKET_DATA:
return SecretStore.resourceBundle.getString("NSSCS_E_CORRUPTED_PACKET_DATA");
case NSSCS_E_EP_ACCESS_DENIED:
return SecretStore.resourceBundle.getString("NSSCS_E_EP_ACCESS_DENIED");
case NSSCS_E_SCHEMA_NOT_EXTENDED:
return SecretStore.resourceBundle.getString("NSSCS_E_SCHEMA_NOT_EXTENDED");
case NSSCS_E_ATTR_NOT_FOUND:
return SecretStore.resourceBundle.getString("NSSCS_E_ATTR_NOT_FOUND");
case NSSCS_E_MIGRATION_NEEDED:
return SecretStore.resourceBundle.getString("NSSCS_E_MIGRATION_NEEDED");
case NSSCS_E_MP_PWORD_INVALID:
return SecretStore.resourceBundle.getString("NSSCS_E_MP_PWORD_INVALID");
case NSSCS_E_MP_PWORD_NOT_SET:
return SecretStore.resourceBundle.getString("NSSCS_E_MP_PWORD_NOT_SET");
case NSSCS_E_MP_PWORD_NOT_ALLOWED:
return SecretStore.resourceBundle.getString("NSSCS_E_MP_PWORD_NOT_ALLOWED");
case NSSCS_E_WRONG_REPLICA_TYPE:
return SecretStore.resourceBundle.getString("NSSCS_E_WRONG_REPLICA_TYPE");
case NSSCS_E_ATTR_VAL_NOT_FOUND:
return SecretStore.resourceBundle.getString("NSSCS_NSSCS_E_ATTR_VAL_NOT_FOUND");
case NSSCS_E_INVALID_PARAM:
return SecretStore.resourceBundle.getString("NSSCS_NSSCS_E_INVALID_PARAM");
case NSSCS_E_NEED_SECURE_CHANNEL:
return SecretStore.resourceBundle.getString("NSSCS_E_NEED_SECURE_CHANNEL");
case NSSCS_E_CONFIG_NOT_SUPPORTED:
return SecretStore.resourceBundle.getString("NSSCS_E_CONFIG_NOT_SUPPORTED");
case NSSCS_E_STORE_NOT_LOCKED:
return SecretStore.resourceBundle.getString("NSSCS_E_STORE_NOT_LOCKED");
case NSSCS_E_TIME_OUT_OF_SYNC:
return SecretStore.resourceBundle.getString("NSSCS_E_TIME_OUT_OF_SYNC");
case NSSCS_E_VERSION_MISMATCH:
return SecretStore.resourceBundle.getString("NSSCS_E_VERSION_MISMATCH");
case NSSCS_E_SECRET_BUFF_TOO_SHORT:
return SecretStore.resourceBundle.getString("NSSCS_E_SECRET_BUFF_TOO_SHORT");
case NSSCS_E_SH_SECRET_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_SH_SECRET_FAILURE");
case NSSCS_E_PARSER_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_PARSER_FAILURE");
case NSSCS_E_UTF8_OP_FAILURE:
return SecretStore.resourceBundle.getString("NSSCS_E_UTF8_OP_FAILURE");
case NSSCS_E_CTX_LESS_CN_NOT_UNIQUE:
return SecretStore.resourceBundle.getString("NSSCS_E_CTX_LESS_CN_NOT_UNIQUE");
case NSSCS_E_NOT_IMPLEMENTED:
return SecretStore.resourceBundle.getString("NSSCS_E_NOT_IMPLEMENTED");
case NSSCS_E_BETA_EXPIRED:
return SecretStore.resourceBundle.getString("NSSCS_E_BETA_EXPIRED");
}
}
}
catch (Exception e)
{
//do nothing
}
return getMessage();
}
*/
/**
* Returns the root exception of this object. Objects of this type may not
* always have a root exception. This method will return this object if
* this object does not have a root exception. Use the method
* hasRoot to determine if objects of this class have
* a root exception.
*
* @return Throwable - The root.
* @see #hasRoot()
*/
public Throwable getRoot()
{
return root;
}
/**
* Determines if this exception has a root exception. Returns true if it
* has a root exception, false if not.
*
* @return boolean - True if this object has a root exception, false if not.
* @see #getRoot()
*/
public boolean hasRoot()
{
return hasRoot;
}
}