Subscription Lifecycle
Subscriptions have a specific lifecycle with a set of states and related properties. Its important to understand these states as well as their transitions.
Subscriptions cannot be modified once
created. In order to "change" a
subscription, you must cancel the existing
subscription and create a new one. Once a
subscription is CANCELED
it
cannot return to any other state.
Once allocated, listeners will attempt to reconnect until the subscription is canceled. However state transitions only happen under certain conditions.
PENDING
When a subscription is created it is defaulted
to a PENDING
state. This means that
a listener has not been allocated yet. In the event
that a listener cannot obtained, you would not be
charged while a subscription remains in this state.
CONNECTING
In this state, a listener has been allocated for your subscription and begins the connection process. The subscription will remain in this state until a successful connection has been made to the resource. This state can also be rentered in the event that the connection is dropped.
LISTENING
Once a listener has succesfully connected to the
endpoint, it enters the LISTENING
state. In this state the listener receives messages
and forwards them to your http endpoint.
In
the event that a connection drops, the listener will
attempt to reconnect while in this state. If
after 5 attempts a connection cannot be made, the
subscription will transtion back to the CONNECTING
state. This is intended to prevent trashing
between the connecting and listening states.
CANCELED
When a subscription is canceled, it reaches the
CANCELED
state. This state is an
end state. This means once a subscription is canceled
it cannnot transition to any other state. The
subscription enters this state immediately when it is
canceled. Subsequently Antenny closes and cleans up
any listener allocated to this subscription.