com.sun.jmx.remote.opt.internal
Interface NotificationBuffer

All Known Implementing Classes:
ArrayNotificationBuffer

public interface NotificationBuffer

A buffer of notifications received from an MBean server.


Method Summary
 void dispose()
          Discard this buffer.
 NotificationResult fetchNotifications(Set listeners, long startSequenceNumber, long timeout, int maxNotifications)
          Fetch notifications that match the given listeners.
 

Method Detail

fetchNotifications

NotificationResult fetchNotifications(Set listeners,
                                      long startSequenceNumber,
                                      long timeout,
                                      int maxNotifications)
                                      throws InterruptedException

Fetch notifications that match the given listeners.

The operation only considers notifications with a sequence number at least startSequenceNumber. It will take no longer than timeout, and will return no more than maxNotifications different notifications.

If there are no notifications matching the criteria, the operation will block until one arrives, subject to the timeout.

Parameters:
listeners - a Set of ListenerInfo that reflects the filters to be applied to notifications. Accesses to this Set are synchronized on the Set object. The Set is consulted for selected notifications that are present when the method starts, and for selected notifications that arrive while it is executing. The contents of the Set can be modified, with appropriate synchronization, while the method is running.
startSequenceNumber - the first sequence number to consider.
timeout - the maximum time to wait. May be 0 to indicate not to wait if there are no notifications.
maxNotifications - the maximum number of notifications to return. May be 0 to indicate a wait for eligible notifications that will return a usable nextSequenceNumber. The TargetedNotification array in the returned NotificationResult may contain more than this number of elements but will not contain more than this number of different notifications.
Throws:
InterruptedException

dispose

void dispose()

Discard this buffer.



Copyright © 2014 Terracotta, Inc.. All rights reserved.