# JmsException.h File Reference

Describes a JmsException handle. More...

`#include <JmsCommon.h>`
`#include <JmsTypes.h>`

Go to the source code of this file.

## Defines
#define | ISA_JAVA_EXCEPTION (1 << 0)
#define | ISA_JMS_EXCEPTION (1 << 1)
#define | ISA_JMS_ILLEGAL_STATE (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 0))
#define | ISA_JMS_INVALID_CLIENT_ID (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 1))
#define | ISA_JMS_INVALID_DESTINATION (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 2))
#define | ISA_JMS_INVALID_SELECTOR (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 3))
#define | ISA_JMS_JMS_SECURITY (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 4))
#define | ISA_JMS_MESSAGE_EOF (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 5))
#define | ISA_JMS_MESSAGE_FORMAT (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 6))
#define | ISA_JMS_MESSAGE_NOT_READABLE (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 7))
#define | ISA_JMS_MESSAGE_NOT_WRITEABLE (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 8))
#define | ISA_JMS_RESOURCE_ALLOCATION (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 9))
#define | ISA_JMS_TRANSACTION_IN_PROGRESS (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 10))
#define | ISA_JMS_TRANSACTION_ROLLED_BACK (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 11))
#define | JMS_PEEK_ONLY (JMS64I) 0x0000000000000001
## Typedefs
typedef JavaThrowable | JavaThrowable
typedef JavaThrowable | JavaException
typedef JavaException | JmsException
## Functions
int JMSENTRY | JmsGetLastException (JavaThrowable **exception, int *type, JMS64I flags)
int JMSENTRY | JmsThrowableGetMessage (JavaThrowable *exception, JmsString *message, JMS64I flags)
int JMSENTRY | JmsExceptionGetErrorCode (JmsException *exception, JmsString *errorCode, JMS64I flags)
int JMSENTRY | JmsExceptionGetLinkedException (JmsException *exception, JavaException **linkedException, JMS64I flags)
int JMSENTRY | JmsExceptionDestroy (JavaThrowable *exception, JMS64I flags)

## Detailed Description

Describes a JmsException handle.

This file describes the functions that can be performed on a JmsException handle A JmsDestination handle corresponds to java.util.Enumeration

Author:
  Copyright (c) 2002, BEA Systems, Inc.

## Define Documentation

#define ISA_JAVA_EXCEPTION (1 << 0)

| Will be set if a throwable handle is of type java.lang.Exception

#define ISA_JMS_EXCEPTION (1 << 1)

| Will be set if an exception handle is of type javax.jms.JMSException

#define ISA_JMS_ILLEGAL_STATE (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 0))

| Will be set if a JMS exception handle is of type javax.jms.IllegalStateException

#define ISA_JMS_INVALID_CLIENT_ID (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 1))

| Will be set if a JMS exception handle is of type javax.jms.IllegalStateException

#define ISA_JMS_INVALID_DESTINATION (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 2))

| Will be set if a JMS exception handle is of type javax.jms.InvalidDestinationException

#define ISA_JMS_INVALID_SELECTOR (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 3))

| Will be set if a JMS exception handle is of type javax.jms.InvalidSelectorException

#define ISA_JMS_JMS_SECURITY (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 4))

| Will be set if a JMS exception handle is of type javax.jms.JMSSecurityException

#define ISA_JMS_MESSAGE_EOF (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 5))

| Will be set if a JMS exception handle is of type javax.jms.MessageEOFException

#define ISA_JMS_MESSAGE_FORMAT (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 6))

| Will be set if a JMS exception handle is of type javax.jms.MessageFormatException

#define ISA_JMS_MESSAGE_NOT_READABLE (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 7))

| Will be set if a JMS exception handle is of type javax.jms.MessageNotReadableException

#define ISA_JMS_MESSAGE_NOT_WRITEABLE (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 8))

| Will be set if a JMS exception handle is of type javax.jms.MessageNotWriteableException

#define ISA_JMS_RESOURCE_ALLOCATION (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 9))

| Will be set if a JMS exception handle is of type javax.jms.ResourceAllocationException

#define ISA_JMS_TRANSACTION_IN_PROGRESS (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 10))

| Will be set if a JMS exception handle is of type javax.jms.TransactionInProgressException

#define ISA_JMS_TRANSACTION_ROLLED_BACK (1 << (JMS_LOWEST_EXCEPTION_SUBCLASS + 11))

| Will be set if a JMS exception handle is of type javax.jms.TransactionRolledBackException

#define JMS_PEEK_ONLY (JMS64I) 0x0000000000000001

| Do not clear the exception on the thread, only look at it

## Typedef Documentation

typedef JavaThrowable JavaException

| An exception handle that represents the class java.lang.Exception

typedef struct JavaThrowable JavaThrowable

| A throwable handle that represents the class java.lang.Throwable

typedef JavaException JmsException

| A JMS exception handle that represents the class javax.jms.JMSException

## Function Documentation

int JMSENTRY JmsExceptionDestroy | ( | JavaThrowable * | exception,
|  | JMS64I | flags
| ) |

  | Destroys the given throwable handle. After a call to this function the throwable handle is invalid and should not be referenced Parameters:
  exception | Must be a valid throwable handle. May not be NULL
  flags | Reserved for future use. Must be zero
Returns: JMS_NO_ERROR JMS_GOT_EXCEPTION JMS_INPUT_PARAM_ERROR JMS_MALLOC_ERROR JMS_JVM_ERROR JMS_NEED_SPACE

int JMSENTRY JmsExceptionGetErrorCode | ( | JmsException * | exception,
|  | JmsString * | errorCode,
|  | JMS64I | flags
| ) |

  | Gets the error code associated with the JMS exception handle Parameters:
  exception | Must be a valid JMS exception handle. May not be NULL
  errorCode | May not be NULL. On success will contain the error Code associated with this JMS exception handle
  flags | Reserved for future use. Must be zero
Returns: JMS_NO_ERROR JMS_GOT_EXCEPTION JMS_INPUT_PARAM_ERROR JMS_MALLOC_ERROR JMS_JVM_ERROR JMS_NEED_SPACE

int JMSENTRY JmsExceptionGetLinkedException | ( | JmsException * | exception,
|  | JavaException ** | linkedException,
|  | JMS64I | flags
| ) |

  | Gets the throwable handle associated with this JMS exception handle Parameters:
  exception | Must be a valid JMS exception handle. May not be NULL
  linkedException | May not be NULL. On success *linkedException will contain the throwable handle associated with this JMS exception handle
  flags | Reserved for future use. Must be zero
Returns: JMS_NO_ERROR JMS_GOT_EXCEPTION JMS_INPUT_PARAM_ERROR JMS_MALLOC_ERROR JMS_JVM_ERROR JMS_NEED_SPACE

int JMSENTRY JmsGetLastException | ( | JavaThrowable ** | exception,
|  | int * | type,
|  | JMS64I | flags
| ) |

  | Gets the last exception that occurred on the calling thread Parameters:
  exception | May not be NULL. On success, *exception will contain a valid throwable handle. If JMS_PEEK_ONLY was set in flags then the exception is not cleared from the thread and the caller should not destroy the handle. If JMS_PEEK_ONLY is clear then the exception on this thread has been cleared and the returned exception handle must be freed by the caller
  type | May not be NULL. On success, *type will contain the type of throwable handle that was returned. See the description of the defines starting with ISA in this file for more details on the possible types returned
  flags | Can be set to JMS_PEEK_ONLY if the caller only wants to see what exception occurred on this thread without clearing the exception
Returns: JMS_NO_ERROR JMS_GOT_EXCEPTION JMS_INPUT_PARAM_ERROR JMS_MALLOC_ERROR JMS_JVM_ERROR JMS_NEED_SPACE

int JMSENTRY JmsThrowableGetMessage | ( | JavaThrowable * | exception,
|  | JmsString * | message,
|  | JMS64I | flags
| ) |

  | Gets the message associated with the throwable handle Parameters:
  exception | Must be a valid throwable handle. May not be NULL
  message | May not be NULL. On success will contain the message associated with this throwable handle
  flags | Reserved for future use. Must be zero
Returns: JMS_NO_ERROR JMS_GOT_EXCEPTION JMS_INPUT_PARAM_ERROR JMS_MALLOC_ERROR JMS_JVM_ERROR JMS_NEED_SPACE