Table 1.A: ExceptionsΒΆ

The following table details each of the exception types thrown by AMPS.

Exception When Notes
AlreadyConnected Connecting Thrown when connect() is called on a Client that is already connected.
AMPS Anytime Base class for all AMPS exceptions.
Authentication Anytime Indicates an authentication failure occurred on the server.
BadFilter Subscribing This typically indicates a syntax error in a filter expression.
BadRegexTopic Subscribing Indicates a malformed regular expression was found in the topic name.
Command Anytime Base class for all exceptions relating to commands sent to AMPS.
Connection Anytime Base class for all exceptions relating to the state of the AMPS connection.
ConnectionRefused 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.
Disconnected Anytime No connection is available when AMPS needed to send data to the server or the user’s disconnect handler threw an exception.
InvalidTopic Subscribe or 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.
InvalidTransportOptions Connecting An invalid option or option value was specified in the URI.
InvalidURI Connecting The URI string provided to connect() was formatted improperly.
MessageType Connecting The class for a given transport’s message type was not found in AMPS.
MessageTypeNotFound Connecting The message type specified in the URI was not found in AMPS.
NameInUse Connecting The client name (specified when instantiating Client) is already in use on the server.
RetryOperation Anytime An error occurred that caused processing of the last command to be aborted. Try issuing the command again.
Stream 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.
SubscriptionAlreadyExistsExc eption Subscribing A subscription has been requested using the same CommandId as another subscription. Create a unique CommandId for every subscription.
TimedOut Anytime A timeout occurred waiting for a response to a command.
TransportType Connecting Thrown when a transport type is selected in the URI that is unknown to AMPS.
Unknown 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 BookmarkStore used) cannot be changed while that client is connected to AMPS.

Table 1.A: Exceptions supported in Client and HAClient