@Test
public void simpleJMXDeubggableCallbackManagerTest() {
final CountDownLatch latch = new CountDownLatch(3);
final AsyncCallback cb1 = new AsyncCallback() {
@Override
public void onCallback() { latch.countDown(); }
};
final AsyncCallback cb2 = new AsyncCallback() {
@Override
public void onCallback() { latch.countDown(); }
};
final AsyncCallback cb3 = new AsyncCallback() {
@Override
public void onCallback() {
latch.countDown();
cm.addCallback(cb1); // adding a new callback that should be scheduled for execution
// during the next iteration (i.e next call to execute)