Package org.eclipse.net4j.connector

# Enum Class ConnectorState

java.lang.Object
java.lang.Enum<ConnectorState>
org.eclipse.net4j.connector.ConnectorState

All Implemented Interfaces:
  `Serializable`, `Comparable<ConnectorState>`, `Constable`

public enum ConnectorState extends Enum<ConnectorState>
Enumerates the lifecycle states of an `IConnector`.

Author:
  Eike Stepper
See Also:
  - `IConnector.getState()`
No Extend
  This interface is not intended to be extended by clients.

## Nested Class Summary

## Nested classes/interfaces inherited from class java.lang.Enum

`Enum.EnumDesc<E extends Enum<E>>`

## Enum Constant Summary

Enum Constants
Enum Constant
Description
`CONNECTED`
Indicates that the `IConnector` has successfully managed to establish and negotiate the underlying physical connection and is ready now to perform actual communications.
`CONNECTING`
Indicates that the `IConnector` is currently trying to establish an underlying physical connection like a TCP socket connection.
`DISCONNECTED`
Indicates that the `IConnector` has not been connected yet or has been disconnected after being connected previously.
`NEGOTIATING`
Indicates that the `IConnector` has successfully managed to establish the underlying physical connection and has currently delegated control over this connection to an `INegotiator`.

## Method Summary

Modifier and Type
Method
Description
`static ConnectorState`
`valueOf(String name)`
Returns the enum constant of this class with the specified name.
`static ConnectorState[]`
`values()`
Returns an array containing the constants of this enum class, in the order they are declared.

### Methods inherited from class java.lang.Enum

`clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

### Methods inherited from class java.lang.Object

`getClass, notify, notifyAll, wait, wait, wait`

## Enum Constant Details

### DISCONNECTED

public static final ConnectorState DISCONNECTED
Indicates that the `IConnector` has not been connected yet or has been disconnected after being connected previously.

A connector is `DISCONNECTED` if and only if it is not `active`. A transition to `CONNECTING` can be triggered by calling `IConnector.connect(long)` or `IConnector.connectAsync()`.

See Also:
  - `IConnector.getState()`
  - `ILifecycle.isActive()`

### CONNECTING

public static final ConnectorState CONNECTING
Indicates that the `IConnector` is currently trying to establish an underlying physical connection like a TCP socket connection.

A connector can only be `CONNECTING` if it is `active`. As soon as the underlying physical connection is successfully established the state of the connector automatically transitions to `NEGOTIATING`.

See Also:
  - `IConnector.getState()`
  - `ILifecycle.isActive()`

### NEGOTIATING

public static final ConnectorState NEGOTIATING
Indicates that the `IConnector` has successfully managed to establish the underlying physical connection and has currently delegated control over this connection to an `INegotiator`.

A connector can only be `NEGOTIATING` if it is `active` and a negotiator has been supplied. As soon as the negotiator has successfully negotiated both peers (or a negotiator has not been supplied) the state of the connector automatically transitions to `CONNECTED`.

Negotiators can implement arbitrary handshake protocols, challenge-response sequences or other authentication procedures. They can also be used to initially setup connection encryption if the connector implementation is not able to do so.

See Also:
  - `IConnector.getState()`
  - `ILifecycle.isActive()`

### CONNECTED

public static final ConnectorState CONNECTED
Indicates that the `IConnector` has successfully managed to establish and negotiate the underlying physical connection and is ready now to perform actual communications.

A connector can only be `CONNECTED` if it is `active`. A transition to `DISCONNECTED` can be triggered by calling `Closeable.close()`.

See Also:
  - `IConnector.getState()`
  - `ILifecycle.isActive()`

## Method Details

### values

public static ConnectorState[] values()
Returns an array containing the constants of this enum class, in the order they are declared.

Returns:
  an array containing the constants of this enum class, in the order they are declared

### valueOf

public static ConnectorState valueOf(String name)
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)

Parameters:
  `name` - the name of the enum constant to be returned.
Returns:
  the enum constant with the specified name
Throws:
  `IllegalArgumentException` - if this enum class has no constant with the specified name
  `NullPointerException` - if the argument is null