Example #1
0
 @GuardedBy("monitor")
 void checkHealthy() {
   if (states.count(RUNNING) != numberOfServices) {
     IllegalStateException exception =
         new IllegalStateException(
             "Expected to be healthy after starting. The following services are not running: "
                 + Multimaps.filterKeys(servicesByState, not(equalTo(RUNNING))));
     throw exception;
   }
 }
Example #2
0
 void awaitStopped(long timeout, TimeUnit unit) throws TimeoutException {
   monitor.enter();
   try {
     if (!monitor.waitForUninterruptibly(stoppedGuard, timeout, unit)) {
       throw new TimeoutException(
           "Timeout waiting for the services to stop. The following "
               + "services have not stopped: "
               + Multimaps.filterKeys(
                   servicesByState, not(in(ImmutableSet.of(TERMINATED, FAILED)))));
     }
   } finally {
     monitor.leave();
   }
 }
Example #3
0
 void awaitHealthy(long timeout, TimeUnit unit) throws TimeoutException {
   monitor.enter();
   try {
     if (!monitor.waitForUninterruptibly(awaitHealthGuard, timeout, unit)) {
       throw new TimeoutException(
           "Timeout waiting for the services to become healthy. The "
               + "following services have not started: "
               + Multimaps.filterKeys(servicesByState, in(ImmutableSet.of(NEW, STARTING))));
     }
     checkHealthy();
   } finally {
     monitor.leave();
   }
 }