Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

sedris::seException Class Reference

#include <seException.h>

List of all members.

Public Types

enum  { MAX_EXCEPTION_STR_LEN = 2000 }
enum  seExceptionCode {
  NOT_IMPLEMENTED = 0, TRANSMITTAL_INACCESSIBLE = 3, UNRESOLVED_TRANSMITTAL, INVALID_ACCESS_MODE,
  UNSUPPORTED_ENCODING, INVALID_TRANSMITTAL_URN, UNPUBLISHED_OBJECT, UNRESOLVED_OBJECT,
  INVALID_OBJECT_LABEL = 11, DELETED_OBJECT = 13, INACTIONABLE_FAILURE = 1000, OUT_OF_MEMORY,
  INVALID_HANDLE, FILE_ERROR, INVALID_DRM_CLASS
}
 Exception enumeration. More...


Public Member Functions

 seException (seExceptionCode code)
 Create exception with code only, no details description.

 seException (seExceptionCode code, const char *what)
 Create exception with code and full description.

 seException (const seException &other)
 Create exception as a copy of another.

virtual ~seException ()
 Destructor.

seExceptionoperator= (const seException &other)
 Copy exception data from another.

virtual void setCodeAndWhat (seExceptionCode code, const char *what)
 Set the code and description information.

virtual seExceptionCode getCode () const
 Returns the exception code value.

virtual const char * getWhat () const
 Returns the exception description string.


Protected Attributes

seExceptionCode _code
 Exception error code.

char _what [MAX_EXCEPTION_STR_LEN+1]
 Exception error description.


Detailed Description

General exception handling class. This is the general exception class thrown from failed methods. An exception typically contains an error code and a description string with more details on the exception.

The error codes are based on the data type SE_Status_Code, but the actual code values are specific to the C++ API.

Author:
Warren Macchi (Accent Geographic)


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
MAX_EXCEPTION_STR_LEN  Maximum description string length in an seException.

enum sedris::seException::seExceptionCode
 

Enumeration values:
NOT_IMPLEMENTED  The functionality is currently unimplemented.
TRANSMITTAL_INACCESSIBLE  Transmittal file couldn't be found. To be returned by the open-transmittal functions (for example seWorkspace::openTransmittalByFile()) if the resolved file location was not accessible by the API. This could occur if the file was opened for read-only or update and the file did not exist. It could also occur if the file location specified a non-local file and the API had no transport mechanism for accessing the remote file.
UNRESOLVED_TRANSMITTAL  Unresolvable transmittal reference. To be returned when a reference to a transmittal is encountered that cannot be resolved.
See also:
seWorkspace::resolveTransmittalURN(), seWorkspace::setITRResolverPath()
INVALID_ACCESS_MODE  Attempt to write to a non-editable transmittal. To be returned if the resolved file location of a transmittal was found, but the security permissions of the underlying system (OS / filesystem) prohibited access to the file in the mode specified.

This could occur if

  1. the access mode specified was create or update and the file was marked read-only, or
  2. no access was permitted for the account running the application, or
  3. create or update mode was requested but the API implementation did not support the write capability, or
  4. a function requiring create or update mode was invoked for an object in a transmittal that was opened in read-only mode, for example attempting to remove an object from a read-only transmittal.
See also:
seTransmittal::getAccessMode()
UNSUPPORTED_ENCODING  Transmittal format not supported. To be returned when access to a transmittal was requested and the transmittal is in a format that is not supported by the implementation of this SEDRIS API.
See also:
seTransmittal::getEncoding()
INVALID_TRANSMITTAL_URN  Transmittal URN is invalid. To be returned when a parameter representing a transmittal URN did not specify a URN that was valid according to the formal SEDRIS namespace.
See also:
seWorkspace::resolveTransmittalURN()
UNPUBLISHED_OBJECT  ITR reference points to un unpublished object. To be returned when an object is encountered (while attempting to process an Inter-Transmittal Reference) that is not published by its transmittal.

Note:
To be available for Inter-Transmittal Reference, an object must be published.
See also:
seObject::publish()
UNRESOLVED_OBJECT  An unresolved object was used in the operation. To be returned when the caller has provided as a function argument an unresolved object, for example as the start object for an iterator.
INVALID_OBJECT_LABEL  Invalid ITR label for object. To be returned when the caller has provided as a function argument a label that is not valid in accordance with label syntax rules (i.e. the same lexical conventions that apply to the name of a variable in ANSI C), or when an attempt is made to publish an object with a label that is already in use.
See also:
seObject::publish()
DELETED_OBJECT  Object has been deleted from transmittal. To be returned by a function when a requested object has been removed from its transmittal.
INACTIONABLE_FAILURE  A general or unknown inactionable condition. This code indicates a general, unknown, or other error for which there is no meaningful branch that the application code could make. (The error description may contain more detailed information.)
OUT_OF_MEMORY  API couldn't allocate memory necessary for an operation.
INVALID_HANDLE  Attempt to use an invalid handle.
FILE_ERROR  There was an error while accessing a transmittal file.
INVALID_DRM_CLASS  The DRM class of the object is invalid for the operation or handle assignment.


Constructor & Destructor Documentation

sedris::seException::seException seExceptionCode  code  )  [inline]
 

sedris::seException::seException seExceptionCode  code,
const char *  what
[inline]
 

sedris::seException::seException const seException other  )  [inline]
 

virtual sedris::seException::~seException  )  [inline, virtual]
 


Member Function Documentation

virtual seExceptionCode sedris::seException::getCode  )  const [inline, virtual]
 

virtual const char* sedris::seException::getWhat  )  const [inline, virtual]
 

seException& sedris::seException::operator= const seException other  )  [inline]
 

virtual void sedris::seException::setCodeAndWhat seExceptionCode  code,
const char *  what
[inline, virtual]
 


Member Data Documentation

seExceptionCode sedris::seException::_code [protected]
 

char sedris::seException::_what[MAX_EXCEPTION_STR_LEN+1] [protected]
 


The documentation for this class was generated from the following file:
SEDRIS Transmittal Access C++ API 4.0.0 beta - 14 Jul 2004
Copyright © 2004 SEDRIS Docs by Doxygen 1.3.2