Class InstancePredicates
java.lang.Object
org.jclouds.openstack.trove.v1.predicates.InstancePredicates
Tests to see if instance has reached status. This class is most useful when paired with a RetryablePredicate as
 in the code below. This class can be used to block execution until the Instance status has reached a desired state.
 This is useful when your Instance needs to be 100% ready before you can continue with execution.
 
 
 Instance instance = instanceApi.create(100);
 RetryablePredicate<String> awaitAvailable = RetryablePredicate.create(
    InstancePredicates.available(instanceApi), 600, 10, 10, TimeUnit.SECONDS);
 if (!awaitAvailable.apply(instance.getId())) {
    throw new TimeoutException("Timeout on instance: " + instance);
 }
 
 
 You can also use the static convenience methods as follows.
 
 
 Instance instance = instanceApi.create(100);
 if (!InstancePredicates.awaitAvailable(instanceApi).apply(instance.getId())) {
    throw new TimeoutException("Timeout on instance: " + instance);
 }
 
 - 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionstatic com.google.common.base.Predicate<Instance> awaitAvailable(InstanceApi instanceApi) Wait until an Instance is Available.static com.google.common.base.Predicate<Instance> awaitDeleted(InstanceApi instanceApi) Wait until an Instance no longer exists.static com.google.common.base.Predicate<Instance> awaitStatus(InstanceApi instanceApi, Instance.Status status, long maxWaitInSec, long periodInSec) Wait until instance is in the status specified.
- 
Constructor Details- 
InstancePredicatespublic InstancePredicates()
 
- 
- 
Method Details- 
awaitAvailableWait until an Instance is Available.- Parameters:
- instanceApi- The InstanceApi in the region where your Instance resides.
- Returns:
- RetryablePredicate That will check the status every 5 seconds for a maxiumum of 10 minutes.
 
- 
awaitDeletedWait until an Instance no longer exists.- Parameters:
- instanceApi- The InstanceApi in the region where your Instance resides.
- Returns:
- RetryablePredicate That will check whether the Instance exists. every 5 seconds for a maxiumum of 10 minutes.
 
- 
awaitStatuspublic static com.google.common.base.Predicate<Instance> awaitStatus(InstanceApi instanceApi, Instance.Status status, long maxWaitInSec, long periodInSec) Wait until instance is in the status specified.- Parameters:
- instanceApi- The InstanceApi in the region where your Instance resides.
- status- Wait until instance in in this status.
- maxWaitInSec- Maximum time to wait.
- periodInSec- Interval between retries.
- Returns:
- RetryablePredicate That will check whether the Instance exists.
 
 
-