abstract class org.apache.commons.lang.concurrent.EventCountCircuitBreaker$StateStrategy extends java.lang.Object
{
private void <init>()
{
org.apache.commons.lang.concurrent.EventCountCircuitBreaker$StateStrategy v;
v := @this: org.apache.commons.lang.concurrent.EventCountCircuitBreaker$StateStrategy;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
protected abstract long fetchCheckInterval(org.apache.commons.lang.concurrent.EventCountCircuitBreaker);
public boolean isCheckIntervalFinished(org.apache.commons.lang.concurrent.EventCountCircuitBreaker, org.apache.commons.lang.concurrent.EventCountCircuitBreaker$CheckIntervalData, long)
{
long v, v, v, v;
org.apache.commons.lang.concurrent.EventCountCircuitBreaker$CheckIntervalData v;
org.apache.commons.lang.concurrent.EventCountCircuitBreaker v;
byte v;
org.apache.commons.lang.concurrent.EventCountCircuitBreaker$StateStrategy v;
boolean v;
v := @this: org.apache.commons.lang.concurrent.EventCountCircuitBreaker$StateStrategy;
v := @parameter: org.apache.commons.lang.concurrent.EventCountCircuitBreaker;
v := @parameter: org.apache.commons.lang.concurrent.EventCountCircuitBreaker$CheckIntervalData;
v := @parameter: long;
v = virtualinvoke v.<org.apache.commons.lang.concurrent.EventCountCircuitBreaker$CheckIntervalData: long getCheckIntervalStart()>();
v = v - v;
v = virtualinvoke v.<org.apache.commons.lang.concurrent.EventCountCircuitBreaker$StateStrategy: long fetchCheckInterval(org.apache.commons.lang.concurrent.EventCountCircuitBreaker)>(v);
v = v cmp v;
if v <= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public abstract boolean isStateTransition(org.apache.commons.lang.concurrent.EventCountCircuitBreaker, org.apache.commons.lang.concurrent.EventCountCircuitBreaker$CheckIntervalData, org.apache.commons.lang.concurrent.EventCountCircuitBreaker$CheckIntervalData);
}