# Class JMXConnectionNotification

java.lang.Object
java.util.EventObject
javax.management.Notification
javax.management.remote.JMXConnectionNotification

All Implemented Interfaces:
  `Serializable`

public class JMXConnectionNotification extends Notification

Notification emitted when a client connection is opened or closed or when notifications are lost. These notifications are sent by connector servers (instances of `JMXConnectorServer`) and by connector clients (instances of `JMXConnector`). For certain connectors, a session can consist of a sequence of connections. Connection-opened and connection-closed notifications will be sent for each one.

The notification type is one of the following:

JMXConnectionNotification Types
Type | Meaning
--- | ---
`jmx.remote.connection.opened` | A new client connection has been opened.
`jmx.remote.connection.closed` | A client connection has been closed.
`jmx.remote.connection.failed` | A client connection has failed unexpectedly.
`jmx.remote.connection.notifs.lost` | A client connection has potentially lost notifications. This notification only appears on the client side.

The `timeStamp` of the notification is a time value (consistent with `System.currentTimeMillis()`) indicating when the notification was constructed.

Since:
  1.5
See Also:
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`CLOSED`
Notification type string for a connection-closed notification.
`static final String`
`FAILED`
Notification type string for a connection-failed notification.
`static final String`
`NOTIFS_LOST`
Notification type string for a connection that has possibly lost notifications.
`static final String`
`OPENED`
Notification type string for a connection-opened notification.

### Fields declared in class Notification

`source`

## Constructor Summary

Constructors
Constructor
Description
`JMXConnectionNotification(String type, Object source, String connectionId, long sequenceNumber, String message, Object userData)`
Constructs a new connection notification.

## Method Summary

Modifier and Type
Method
Description
`String`
`getConnectionId()`
The connection ID to which this notification pertains.

### Methods declared in class Notification

`getMessage, getSequenceNumber, getTimeStamp, getType, getUserData, setSequenceNumber, setSource, setTimeStamp, setUserData, toString`

### Methods declared in class EventObject

`getSource`

### Methods declared in class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Field Details

### OPENED

public static final String OPENED

Notification type string for a connection-opened notification.

See Also:
  - Constant Field Values

### CLOSED

public static final String CLOSED

Notification type string for a connection-closed notification.

See Also:
  - Constant Field Values

### FAILED

public static final String FAILED

Notification type string for a connection-failed notification.

See Also:
  - Constant Field Values

### NOTIFS_LOST

public static final String NOTIFS_LOST

Notification type string for a connection that has possibly lost notifications.

See Also:
  - Constant Field Values

## Constructor Details

### JMXConnectionNotification

public JMXConnectionNotification(String type, Object source, String connectionId, long sequenceNumber, String message, Object userData)
Constructs a new connection notification. The `source` of the notification depends on whether it is being sent by a connector server or a connector client:

- For a connector server, if it is registered in an MBean server, the source is the `ObjectName` under which it is registered. Otherwise, it is a reference to the connector server object itself, an instance of a subclass of `JMXConnectorServer`.
- For a connector client, the source is a reference to the connector client object, an instance of a class implementing `JMXConnector`.

Parameters:
  `type` - the type of the notification. This is usually one of the constants `OPENED`, `CLOSED`, `FAILED`, `NOTIFS_LOST`. It is not an error for it to be a different string.
  `source` - the connector server or client emitting the notification.
  `connectionId` - the ID of the connection within its connector server.
  `sequenceNumber` - a non-negative integer. It is expected but not required that this number will be greater than any previous `sequenceNumber` in a notification from this source.
  `message` - an unspecified text message, typically containing a human-readable description of the event. Can be null.
  `userData` - an object whose type and meaning is defined by the connector server. Can be null.
Throws:
  `NullPointerException` - if `type`, `source`, or `connectionId` is null.
  `IllegalArgumentException` - if `sequenceNumber` is negative.

## Method Details

### getConnectionId

public String getConnectionId()

The connection ID to which this notification pertains.

Returns:
  the connection ID.