AMPS C# Client
5.3.5.0
AMPS C# Client for .NET
|
Interface to provide a recovery point for a bookmark subscription. Used in the RecoveryPointAdapter interface for updates and recovery. More...
Classes | |
interface | Authenticator |
Interface used to authenticate an AMPS client user. If authentication was unsuccessful, then an AuthenticationException is thrown. The public repository contains implementations of the authenticator interface. You can use them as examples for your own implementations. More... | |
class | BlockPublishStore |
BlockPublishStore is a base class that implements the Store interface. It is designed for publish store implementations, allowing messages to be stored and managed efficiently. As messages are discarded, space in that buffer is marked "free" for future store operations. If messages are stored faster than they are published, the buffer is re-sized to create more capacity. More... | |
class | BookmarkRingBuffer |
A ring buffer of bookmarks and activation status. Used by all of the bookmark stores to track state of bookmarks we need to hold on to, either because they're active or because they're after an active one. More... | |
interface | BookmarkStore |
Defines the interface for bookmark stores, which are used by the AMPS.Client.Client to provide resumable subscriptions and client-side duplicate message handling. More... | |
interface | BookmarkStoreResizeHandler |
Interface used to indicate whether a BookmarkStore implementation is allowed to grow(or shrink) to the requested size. If the request to resize is denied, a BookmarkStore implementation may choose how to handle the failure: if the bookmark for a message cannot be successfully logged, an implementation may choose to throw an exception or may simply retry the operation until space is available. More... | |
class | Client |
The base AMPS client object used for AMPS applications that do not need a resilient connection to AMPS. Most production applications use the HAClient rather than Client. Each client object manages a single connection to AMPS. Each AMPS connection has a name, a specific transport (such as tcp), a protocol (used for framing messages to AMPS), and a message type(such as FIX or JSON). More... | |
interface | ClientDisconnectHandler |
Called in Client when the Client unintentionally disconnects from AMPS. This interface can be used to implement your own disconnect handler. It will notify you that a Client disconnected so that an action can be taken, such as doing a reconnect. More... | |
class | ActionDisconnectHandler |
Allows the use of an Action (i.e. lambda function with no return value) in any context where a ClientDisconnectHandler may be used. More... | |
class | Command |
Command is an encapsulation of a single AMPS command sent by the client. Using Command you can build valid commands to be executed either synchronously or asynchronously via the Client execute() method or asynchronously via the executeAsync() methods. More... | |
class | CommandId |
Used to give a unique identifier to a Command. This Id can be used to reference the command later, such as when unsubscribing a subscription command. More... | |
interface | CompletionListener |
This interface defines a contract for classes that wish to be notified upon the completion of a specific operation. More... | |
class | CompositeMessageBuilder |
Used to create payloads for AMPS composite messages, which are messages with a number of parts where each part is a complete message of a specific message type. For example, a composite message type of "composite-json-binary" may be declared on the server that combines a set of JSON headers with an opaque binary payload. CompositeMessageBuilder makes it easy to assemble this payload. More... | |
class | CompositeMessageParser |
Used to retrieve individual message parts from AMPS composite messages, which are messages where the data contains a number of parts and each part is a complete message of a specific message type. For example, a composite message type of "composite-json-binary" may be declared on the server that combines a set of JSON headers with an opaque binary payload. CompositeMessageParser makes it easy to retrieve the parts of a composite message from the composite message payload. More... | |
class | ConflatingRecoveryPointAdapter |
An implementation of the RecoveryPointAdapter interface that is meant to act as a wrapper around another recovery point adapter instance, delegating periodic updates to its wrapped adapter on an asynchronous update thread (which this instance starts). The intent is to decouple recovery state updates from message discards on a bookmark replay subscriptions so that fast paced subscriptions don't cause a rate of updates that consume too much bandwidth or overwhelm recovery point adapter implementations that use slower storage (slowing message discards). More... | |
class | ConnectionInfo |
class | DefaultAuthenticator |
A default implementation of the Authenticator interface that is used for basic username/password authentication. More... | |
class | DefaultBookmarkStore |
A no-op default implementation of the BookmarkStore interface that does nothing. More... | |
class | DefaultCompletionListener |
A default implementation of the CompletionListener interface that provides an empty implementation for the completed method. More... | |
class | DefaultDisconnectHandler |
A default no-op implementation of the ClientDisconnectHandler and TransportDisconnectHandler interfaces that does nothing. More... | |
class | DefaultMessageHandler |
A default no-op implementation of the MessageHandler interface that does nothing. More... | |
class | DefaultServerChooser |
A simple ServerChooser that keeps a list of AMPS instances and Authenticators, and advances to the next one when failure occurs. More... | |
class | DefaultSubscriptionManager |
A no-op implementation of the SubscriptionManager interface that does nothing. More... | |
class | DynamicRecoveryPoint |
Interface to provide a recovery point for a bookmark subscription. Used in the RecoveryPointAdapter interface for updates and recovery. More... | |
class | DynamicRecoveryPointFactory |
Class for creating DynamicRecoveryPoint instances. More... | |
class | ExponentialDelayStrategy |
ExponentialDelayStrategy is an implementation that exponentially "backs off" when reconnecting to the same server, including optional jitter when backing off and a maximum amount of time to attempt reconnection before giving up entirely. More... | |
class | Integer |
class | Long |
class | ExtensionMethods |
interface | FailedResubscribeHandler |
An interface for handling resubscribe failures after a client has failed over to a new server. More... | |
interface | FailedWriteHandler |
An interface for receiving information on messages that you've written, but for which the server indicates are not persisted because of a failure. More... | |
interface | FailedWriteHandlerV4 |
An interface for receiving information on messages that you've written, but for which the server indicates are not persisted because of a failure. More... | |
class | FIXBuilder |
Used to build up message strings for FIX. More... | |
class | FixedDelayStrategy |
FixedDelayStrategy is an implementation that delays for a fixed time period, as specified in the constructor, when reconnecting to the same server as we were previously connected to, or if we are invoked again for the first server we ever tried. ReconnectDelayStrategy implementations are used by the HAClient. More... | |
class | FixedRecoveryPoint |
Interface to provide a recovery point for a bookmark subscription. Used in the RecoveryPointAdapter interface for updates and recovery. More... | |
class | FixedRecoveryPointFactory |
class for creating instances of FixedRecoveryPoint. More... | |
class | FIXMessage |
A message subclass used by FIXProtocolParser to aid in building Message instances parsed from the FIXProtocol. Generally not used directly by the end user. More... | |
class | FIXProtocol |
Implements the Protocol interface. Used to parse a byte stream as a series of messages. The byte stream must use the AMPS FIX protocol. More... | |
class | FIXProtocolParser |
Implements the ProtocolParser interface. Parses a byte stream using FIX protocol. More... | |
class | FIXShredder |
A parser class which converts a FIX message into a dictionary. More... | |
class | HAClient |
A highly-available AMPS Client object that automatically reconnects and re-subscribes to AMPS instances upon disconnect. More... | |
class | HandleTimeoutStream |
A Stream implementation that wraps a NetworkStream to keep timeout exceptions from escaping Read and causing the connection to close More... | |
class | HybridPublishStore |
A Store implementation that uses memory to hold the newest messages and rolls older messages over to a file. More... | |
class | JSONMessage |
A message subclass used by JSONProtocolParser to aid in building Message instances parsed from the JSONProtoco (i.e. the "amps" transport protocol). Generally not used directly by the end user. More... | |
class | JSONProtocol |
Implements the Protocol interface. Used to parse a byte stream as a series of messages. The byte stream must used AMPS FIX protocol. More... | |
class | JSONProtocolParser |
Implements the ProtocolParser interface. Parses a byte stream using JSON Protocol (AMPS Protocol). More... | |
class | LoggedBookmarkStore |
LoggedBookmarkStore implements a sequentially written log of incoming and discarded messages. The store tracks every bookmark processed in a file. An application should periodically call AMPS.Client.LoggedBookmarkStore.prune to manage the size of the file by removing outdated entries. When using LoggedBookmarkStore, it is important to note that this store is intended to provide the ability for the application to fall and resume. If your application does not require this fall-and-resume functionality, it is recommended to use a MemoryBookmarkStore. More... | |
class | MemoryBookmarkStore |
Implements a bookmark store useful for handling server failover scenarios, but without a backing store to recover from subscriber failure. More... | |
class | MemoryPublishStore |
An in-memory publish store, used to provide republish capability when in case of failover to an AMPS secondary. More... | |
class | MemoryStoreBuffer |
MemoryStoreBuffer is a wrapper for a list that maintains position. In order to do this, MemoryStoreBuffer uses a ByteBuffer. More... | |
class | MemorySubscriptionManager |
An in-memory implementation of SubscriptionManager. Used by HAClient. More... | |
class | Message |
All communication with AMPS occurs through passing Messages. The AMPS clients provide named convenience methods for core AMPS functionality. These named methods work by creating and sending Messages to AMPS. More... | |
interface | MessageHandler |
class | ActionMessageHandler |
Allows usage of an Action (i.e. a lambda function with no return value) in the place of a MessageHandler throughout the AMPS api. More... | |
class | MessageRouter |
MessageRouter is used to register and manage a list of handler objects for messages, and then to route messages to those handlers as messages arrive. MessageRouter also "knows" about the meaning of AMPS acks and can use them to automatically clean up routes as acks arrive. More... | |
class | MessageStream |
MessageStream provides an iteration abstraction over the results of an AMPS command such as a subscribe, a SOW query, or SOW delete. MessageStream is produced when calling Client.execute() and continues iterating over the results until the connection is closed, or the iterator is explicitly closed, or when the SOW query is ended. You can use a MessageStream as you would other Iterators, for example, using a for loop (Java 1.7): More... | |
class | NVFIXBuilder |
Used to build up message strings for NVFIX. More... | |
class | NVFIXMessage |
A message subclass used by NVFIXProtocolParser to aid in building Message instances parsed from the NVFIXProtocol. Generally not used directly by end user. More... | |
class | NVFIXProtocol |
Implements the Portocol interface. Used to parse a byte stream as a series of messages. The byte stream must use the AMPS NVFIX protocol. More... | |
class | NVFIXProtocolParser |
Implements the ProtocolParser interface and extends FIXProtocolParser class. Parses a byte stream using NVFIX protocol. More... | |
class | NVFIXShredder |
A parser class that converts an NVFIX message into a Dictionary. More... | |
class | Pool |
A simple generic instance pool for objects that take a while to construct. More... | |
class | Properties |
Represents a collection of properties with string keys and string values. More... | |
interface | Protocol |
Interface representing an AMPS wire protocol. Classes that implement this interface aid in parsing a byte stream as a series of messages, formatted using one of the AMPS-supported protocols. More... | |
class | ProtocolFactory |
Class which creates Protocols as well as registering and unregistering them from a Dictionary. More... | |
interface | ProtocolParser |
Represents an interface for parsing protocols. More... | |
class | PublishStore |
PublishStore is a memory-mapped file-backed store for storing outgoing messages. As messages are stored, space is allocated from a pre-created flat buffer on disk. As messages are discarded, space in that buffer is marked "free" for future store operations. If messages are stored faster than they are published, the buffer is re-sized to create more capacity. PublishStore helps in keeping track of unacknowledged messages. If messages are published at a rate exceeding the storage capacity, the buffer is resized to accommodate more messages. More... | |
interface | PublishStoreResizeHandler |
Interface used to indicate whether a Store implementation is allowed to grow (or shrink) to the requested size. If the request to resize is denied, a Store implementation may fail the operation that resulted in the request to grow by throwing an exception. More... | |
interface | ReconnectDelayStrategy |
Reconnect delay strategy implementations are called by HAClient to determine how long to wait between attempts to connect or reconnect to a server. AMPS provides two predefined implementations:
| |
interface | RecoveryPoint |
Interface used by RecoveryPointAdapter's to represent a bookmark subscription's recovery state, to allow that subscription to be resumed in a reasonable place when the subscriber application exits and restarts. This is typically a representation for one or more bookmarks, similar to the MOST_RECENT state of a bookmark store that's used for resuming replays. </summart> More... | |
interface | RecoveryPointFactory |
Interface for creating recovery points. More... | |
interface | RecoveryPointAdapter |
An instance of this interface that can optionally be provided to MemoryBookmarkStore when it's constructed to persist recovery bookmark state for each bookmark replay subscription. The adapter can persist this state to an external store and retrieve it on application restart so that bookmark replay subscriptions can be continued approximately where they left off (with the possible delivery of some duplicate messages). Typically the constructor of any implementation class will take resources needed to connect to / authenticate with the external store and a unique AMPS client name or session name (that stays consistent across application runs) that identifies the AMPS client whose bookmark replay subscriptions want to have their recovery state persisted by this adapter. More... | |
class | RingBookmarkStore |
class | SequencedRecoveryPoint |
Represents a recovery point with a sequence number. More... | |
interface | ServerChooser |
class | SimpleReadBuffer |
Represents a simple read buffer used for reading byte data. More... | |
class | SOWRecoveryPointAdapter |
SOWRecoveryPointAdapter provides functionality for interacting with a SOW (State of the World) topic to facilitate recovery point adaptation. More... | |
interface | StoreReplayer |
class | SOWDeleteTypes |
SOWDeleteTypes provides constants representing different types of delete operations in a SOW (State of the World) topic. More... | |
interface | Store |
class | Subscription |
Represents a single subscription within a bookmark store implementation. This can aid in creating your own implementation of BookmarkStore. If you feel that your requirements warrant creating a customized bookmark store implementation, please contact AMPS support for further advice. | |
interface | SubscriptionManager |
Interface used to manage all subscriptions in AMPS. This includes: subscribing, unsubscribing and resubscribing. More... | |
class | TCPSTransport |
Implements a secure transport for communicating with AMPS over a SslStream. System.Net.Security.SslStream More... | |
class | TCPSTransportImpl |
The SSL Socket implementation of TCPSTransport. TCPS Transport delegates to an instance of this class. This is used internally by the client's transport. There is usually no reason to make direct use of it. Its functionality is best accessed via the client instance. More... | |
class | TCPTransportImpl |
Socket implementation for TCPTransport. TCP Transport delegates to an instance of this class. This is used internally by the client's transport. There is usually no reason to make direct use of it. Its functionality is best accessed via the client instance. More... | |
interface | ThreadCreatedHandler |
Interface for classes that handle AMPS messages. More... | |
class | ActionThreadCreatedHandler |
Allows usage of an Action (i.e. a lambda function with no return value) in the place of a MessageHandler throughout the AMPS api. More... | |
interface | Transport |
Interface that is used to manage and configure connections to AMPS. Typically a transport is created and used internally by Client instance. There is usually no reason to make direct use of it. Its functionality is best accessed via the client instance. More... | |
interface | TransportDisconnectHandler |
This class is used internally. Customers typically do not need to create their own implementations. This is used by the client's transport to notify the client of disconnection events. More... | |
class | TransportFactory |
Factory class that allows you to register and unregister handler classes for various connection URI prefixes. Handler class is expected to create a transport when asked. Built-in transports such as "tcp" cannot be unregistered. More... | |
class | TransportTraceFilter |
An implementation of TransportFilter that traces to a System.IO.TextWriter. To use, instantiate and hen pass to Transport's setTransportFilter, for example: More... | |
class | URIProperties |
Provides a Properties interface to the parameters passed in a URI without depending on System.Web. More... | |
class | Utilities |
class | VersionInfo |
An IComparable representation of the server's version. More... | |
class | XMLMessage |
A message subclass used by XMLProtocolParser to aid in building Message instances parsed from the XMLProtocol. Generally not used by end user. More... | |
class | XMLProtocol |
Represents the XML protocol used in the AMPS client. More... | |
class | XMLProtocolParser |
Implements the ProtocolParser interface. Parses a byte stream using XML protocol. More... | |
class | ZlibIOStream |
A System.IO.Stream wrapper around the ComponentAce zlib implementation which works bidirectionally and eliminates a data copy. More... | |
Interface to provide a recovery point for a bookmark subscription. Used in the RecoveryPointAdapter interface for updates and recovery.
A Key, Value mapping for metadata about the state of an AMPS connection.
Valid keys include:
client.uri The URI this client is connected to, NULL if no connection has been attempted. client.name The name of this client. client.username The most recently-used username for this client. NULL if no username is supplied. publishStore.unpersistedCount The count of unpersisted messages in the local store. NULL if no PublishStore has been set on the client. haClient.reconnectDelay The delay between reconnect attempts. NULL for non-HA clients. haClient.timeout The default timeout used when re-logging on. NULL for non-HA clients.
PublishStore that stores first in memory, and swaps excess out to disk.
RingBookmarkStore is an implementation of BookmarkStore that stores state on disk and in memory. For each subscription, RingBookmarkStore keeps the most recent bookmark B for which all messages prior to B have been discard()ed by the subscriber. As messages are logged and discarded, an in-memory array is used to track when a new bookmark can be logged.
Interface to provide a recovery point for a bookmark subscription. Used in the RecoveryPointAdapter interface for updates and recovery.
Interface for choosing amongst multiple instances for both initial connection and reconnection. Used by HAClient to pick an initial server, and then pick a new one on failure.