1 package org.asteriskjava.manager;
2
3 /***
4 * The lifecycle status of a {@link org.asteriskjava.manager.ManagerConnection}.
5 *
6 * @author srt
7 * @since 0.3
8 */
9 public enum ManagerConnectionState
10 {
11 /***
12 * The initial state after the ManagerConnection object has been created
13 * but the connection has not yet been established.<p>
14 * Changes to {@link #CONNECTING} when {@link org.asteriskjava.manager.ManagerConnection#login()}
15 * is called.
16 */
17 INITIAL,
18
19 /***
20 * The connection is being made and login is performed.<p>
21 * Changes to {@link #CONNECTED} when login has successfully completed or
22 * {@link #DISCONNECTED} if login fails.
23 */
24 CONNECTING,
25
26 /***
27 * The connection has been successfully established, login has been perfomed and
28 * the connection is ready to be used.<p>
29 * This is the required state for sending actions to the Asterisk server.<p>
30 * Changes to {@link #RECONNECTING} when connection is lost or {@link #DISCONNECTING}
31 * when {@link org.asteriskjava.manager.ManagerConnection#logoff()} is called.
32 */
33 CONNECTED,
34
35 /***
36 * The connection has been disrupted and is about to be reestablished.<p>
37 * Changes to {@link #CONNECTED} when connection is successfully reestablished or
38 * {@link #DISCONNECTING} when {@link org.asteriskjava.manager.ManagerConnection#logoff()}
39 * is called.
40 */
41 RECONNECTING,
42
43 /***
44 * The connection is about to be closed by user request.<p>
45 * Changes to {@link #DISCONNECTED} when connection has been closed.
46 */
47 DISCONNECTING,
48
49 /***
50 * The connection has been closed on user's request is not about to be reestablished.<p>
51 * Can be changed to {@link #CONNECTING} by calling
52 * {@link org.asteriskjava.manager.ManagerConnection#login()}.
53 */
54 DISCONNECTED
55 }