org.jclouds.compute.predicates.internal
Class TrueIfNullOrDeletedRefreshAndDoubleCheckOnFalse<S extends Enum<S>,C extends ComputeMetadataIncludingStatus<S>>

java.lang.Object
  extended by org.jclouds.compute.predicates.internal.TrueIfNullOrDeletedRefreshAndDoubleCheckOnFalse<S,C>
All Implemented Interfaces:
com.google.common.base.Predicate<AtomicReference<C>>
Direct Known Subclasses:
AtomicImageDeleted, AtomicNodeTerminated

public abstract class TrueIfNullOrDeletedRefreshAndDoubleCheckOnFalse<S extends Enum<S>,C extends ComputeMetadataIncludingStatus<S>>
extends Object
implements com.google.common.base.Predicate<AtomicReference<C>>


Field Summary
protected  S deletedStatus
           
protected  org.jclouds.logging.Logger logger
           
 
Constructor Summary
protected TrueIfNullOrDeletedRefreshAndDoubleCheckOnFalse(S deletedStatus)
           
 
Method Summary
 boolean apply(AtomicReference<C> atomicResource)
           
 boolean checkStatus(C resource)
           
protected abstract  C refreshOrNull(C resource)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.google.common.base.Predicate
equals
 

Field Detail

deletedStatus

protected final S extends Enum<S> deletedStatus

logger

protected org.jclouds.logging.Logger logger
Constructor Detail

TrueIfNullOrDeletedRefreshAndDoubleCheckOnFalse

protected TrueIfNullOrDeletedRefreshAndDoubleCheckOnFalse(S deletedStatus)
Method Detail

apply

public boolean apply(AtomicReference<C> atomicResource)
Specified by:
apply in interface com.google.common.base.Predicate<AtomicReference<C extends ComputeMetadataIncludingStatus<S>>>

checkStatus

public boolean checkStatus(C resource)

refreshOrNull

protected abstract C refreshOrNull(C resource)


Copyright © 2009-2014 The Apache Software Foundation. All Rights Reserved.