Appendix A. ExceptionsΒΆ
The following table details each of the exception types thrown by AMPS.
Exception | When | Notes |
---|---|---|
AlreadyConnectedException |
Connecting | Thrown when connect() is
called on a Client that
is already connected. |
AMPSException |
Anytime | Base class for all AMPS exceptions. |
AuthenticationException |
Anytime | Indicates an authentication failure occurred on the server. |
BadFilterException |
Subscribing | This typically indicates a syntax error in a filter expression. |
BadRegexTopicException |
Subscribing | Indicates a malformed regular expression was found in the topic name. |
CommandException |
Anytime | Base class for all exceptions relating to commands sent to AMPS. |
ConnectionException |
Anytime | Base class for all exceptions relating to the state of the AMPS connection. |
ConnectionRefusedException |
Connecting | The connection was actively refused by the server. Validate that the server is running, that network connectivity is available, and the settings on the client match those on the server. |
DisconnectedException |
Anytime | No connection is available when AMPS needed to send data to the server or the user’s disconnect handler threw an exception. |
InvalidTopicException |
SOW query | The topic is not configured
for the requested operation.
For example, a sow
command was issued for a
topic that is not in the SOW
or a bookmark subscribe was
issued for a topic that is
not recorded in the
transaction log. |
InvalidTransportOptionsEx
ception |
Connecting | An invalid option or option value was specified in the URI. |
InvalidUriException |
Connecting | The URI string provided to
connect() was formatted
improperly. |
MessageTypeException |
Connecting | The class for a given transport’s message type was not found in AMPS. |
NameInUseException |
Connecting | The client name (specified
when instantiating
Client ) is already in
use on the server. |
RetryOperationException |
Anytime | An error occurred that caused processing of the last command to be aborted. Try issuing the command again. |
StreamException |
Anytime | Indicates that data corruption has occurred on the connection between the client and server. This usually indicates an internal error inside of AMPS – contact AMPS support. |
SubscriptionAlreadyExists
Exception |
Subscribing | A subscription has been requested using the same command ID string as another subscription. Create a unique command ID string for every subscription. |
TimedOutException |
Anytime | A timeout occurred waiting for a response to a command. |
TransportTypeException |
Connecting | Thrown when a transport type is selected in the URI that is unknown to AMPS. |
UnknownException |
Anytime | Thrown when an internal error occurs. Contact AMPS support immediately. |
UsageException |
Changing the properties of an object | Thrown when the object is not
in a valid state for setting
the properties. For example,
some properties of a
Client (such as the name)
cannot be changed while that
client is connected to AMPS. |
Table 1A: Exceptions supported in Client and HAClient