public class org.apache.activemq.RedeliveryPolicy extends org.apache.activemq.filter.DestinationMapEntry implements java.lang.Cloneable, java.io.Serializable
{
public static final int NO_MAXIMUM_REDELIVERIES;
public static final int DEFAULT_MAXIMUM_REDELIVERIES;
private static java.util.Random randomNumberGenerator;
protected double collisionAvoidanceFactor;
protected int maximumRedeliveries;
protected long maximumRedeliveryDelay;
protected long initialRedeliveryDelay;
protected boolean useCollisionAvoidance;
protected boolean useExponentialBackOff;
protected double backOffMultiplier;
protected long redeliveryDelay;
protected boolean preDispatchCheck;
public void <init>()
{
long v;
org.apache.activemq.RedeliveryPolicy v;
v := @this: org.apache.activemq.RedeliveryPolicy;
specialinvoke v.<org.apache.activemq.filter.DestinationMapEntry: void <init>()>();
v.<org.apache.activemq.RedeliveryPolicy: double collisionAvoidanceFactor> = 0.15;
v.<org.apache.activemq.RedeliveryPolicy: int maximumRedeliveries> = 6;
v.<org.apache.activemq.RedeliveryPolicy: long maximumRedeliveryDelay> = -1L;
v.<org.apache.activemq.RedeliveryPolicy: long initialRedeliveryDelay> = 1000L;
v.<org.apache.activemq.RedeliveryPolicy: double backOffMultiplier> = 5.0;
v = v.<org.apache.activemq.RedeliveryPolicy: long initialRedeliveryDelay>;
v.<org.apache.activemq.RedeliveryPolicy: long redeliveryDelay> = v;
v.<org.apache.activemq.RedeliveryPolicy: boolean preDispatchCheck> = 1;
return;
}
public org.apache.activemq.RedeliveryPolicy copy()
{
java.lang.Object v;
org.apache.activemq.RedeliveryPolicy v;
java.lang.RuntimeException v;
java.lang.String v;
java.lang.CloneNotSupportedException v;
v := @this: org.apache.activemq.RedeliveryPolicy;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Object clone()>();
label:
return v;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.CloneNotSupportedException)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Could not clone: \u0001");
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
catch java.lang.CloneNotSupportedException from label to label with label;
}
public double getBackOffMultiplier()
{
org.apache.activemq.RedeliveryPolicy v;
double v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v = v.<org.apache.activemq.RedeliveryPolicy: double backOffMultiplier>;
return v;
}
public void setBackOffMultiplier(double)
{
org.apache.activemq.RedeliveryPolicy v;
double v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v := @parameter: double;
v.<org.apache.activemq.RedeliveryPolicy: double backOffMultiplier> = v;
return;
}
public short getCollisionAvoidancePercent()
{
int v;
org.apache.activemq.RedeliveryPolicy v;
double v, v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v = v.<org.apache.activemq.RedeliveryPolicy: double collisionAvoidanceFactor>;
v = v * 100.0;
staticinvoke <java.lang.Math: long round(double)>(v);
return v;
}
public void setCollisionAvoidancePercent(short)
{
org.apache.activemq.RedeliveryPolicy v;
short v;
double v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v := @parameter: short;
v = v * 0.01;
v.<org.apache.activemq.RedeliveryPolicy: double collisionAvoidanceFactor> = v;
return;
}
public long getInitialRedeliveryDelay()
{
long v;
org.apache.activemq.RedeliveryPolicy v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v = v.<org.apache.activemq.RedeliveryPolicy: long initialRedeliveryDelay>;
return v;
}
public void setInitialRedeliveryDelay(long)
{
long v;
org.apache.activemq.RedeliveryPolicy v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v := @parameter: long;
v.<org.apache.activemq.RedeliveryPolicy: long initialRedeliveryDelay> = v;
return;
}
public long getMaximumRedeliveryDelay()
{
long v;
org.apache.activemq.RedeliveryPolicy v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v = v.<org.apache.activemq.RedeliveryPolicy: long maximumRedeliveryDelay>;
return v;
}
public void setMaximumRedeliveryDelay(long)
{
long v;
org.apache.activemq.RedeliveryPolicy v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v := @parameter: long;
v.<org.apache.activemq.RedeliveryPolicy: long maximumRedeliveryDelay> = v;
return;
}
public int getMaximumRedeliveries()
{
int v;
org.apache.activemq.RedeliveryPolicy v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v = v.<org.apache.activemq.RedeliveryPolicy: int maximumRedeliveries>;
return v;
}
public void setMaximumRedeliveries(int)
{
int v;
org.apache.activemq.RedeliveryPolicy v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v := @parameter: int;
v.<org.apache.activemq.RedeliveryPolicy: int maximumRedeliveries> = v;
return;
}
public long getNextRedeliveryDelay(long)
{
java.util.Random v;
long v, v, v, v, v;
org.apache.activemq.RedeliveryPolicy v;
byte v, v, v, v;
boolean v, v, v;
double v, v, v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v := @parameter: long;
v = v cmp 0L;
if v <= 0 goto label;
v = v.<org.apache.activemq.RedeliveryPolicy: boolean useExponentialBackOff>;
if v == 0 goto label;
v = v.<org.apache.activemq.RedeliveryPolicy: double backOffMultiplier>;
v = v cmpl 1.0;
if v <= 0 goto label;
v = v.<org.apache.activemq.RedeliveryPolicy: double backOffMultiplier>;
v = v * v;
v = v.<org.apache.activemq.RedeliveryPolicy: long maximumRedeliveryDelay>;
v = v cmp -1L;
if v == 0 goto label;
v = v.<org.apache.activemq.RedeliveryPolicy: long maximumRedeliveryDelay>;
v = v cmp v;
if v <= 0 goto label;
v = v.<org.apache.activemq.RedeliveryPolicy: long maximumRedeliveryDelay>;
v = v.<org.apache.activemq.RedeliveryPolicy: long redeliveryDelay>;
v = staticinvoke <java.lang.Math: long max(long,long)>(v, v);
label:
v = v.<org.apache.activemq.RedeliveryPolicy: boolean useCollisionAvoidance>;
if v == 0 goto label;
v = staticinvoke <org.apache.activemq.RedeliveryPolicy: java.util.Random getRandomNumberGenerator()>();
virtualinvoke v.<java.util.Random: boolean nextBoolean()>();
virtualinvoke v.<java.util.Random: double nextDouble()>();
label:
return v;
}
public boolean isUseCollisionAvoidance()
{
org.apache.activemq.RedeliveryPolicy v;
boolean v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v = v.<org.apache.activemq.RedeliveryPolicy: boolean useCollisionAvoidance>;
return v;
}
public void setUseCollisionAvoidance(boolean)
{
org.apache.activemq.RedeliveryPolicy v;
boolean v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v := @parameter: boolean;
v.<org.apache.activemq.RedeliveryPolicy: boolean useCollisionAvoidance> = v;
return;
}
public boolean isUseExponentialBackOff()
{
org.apache.activemq.RedeliveryPolicy v;
boolean v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v = v.<org.apache.activemq.RedeliveryPolicy: boolean useExponentialBackOff>;
return v;
}
public void setUseExponentialBackOff(boolean)
{
org.apache.activemq.RedeliveryPolicy v;
boolean v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v := @parameter: boolean;
v.<org.apache.activemq.RedeliveryPolicy: boolean useExponentialBackOff> = v;
return;
}
protected static synchronized java.util.Random getRandomNumberGenerator()
{
java.util.Random v, v, v;
v = <org.apache.activemq.RedeliveryPolicy: java.util.Random randomNumberGenerator>;
if v != null goto label;
v = new java.util.Random;
specialinvoke v.<java.util.Random: void <init>()>();
<org.apache.activemq.RedeliveryPolicy: java.util.Random randomNumberGenerator> = v;
label:
v = <org.apache.activemq.RedeliveryPolicy: java.util.Random randomNumberGenerator>;
return v;
}
public void setRedeliveryDelay(long)
{
long v;
org.apache.activemq.RedeliveryPolicy v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v := @parameter: long;
v.<org.apache.activemq.RedeliveryPolicy: long redeliveryDelay> = v;
return;
}
public long getRedeliveryDelay()
{
long v;
org.apache.activemq.RedeliveryPolicy v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v = v.<org.apache.activemq.RedeliveryPolicy: long redeliveryDelay>;
return v;
}
public java.lang.String toString()
{
org.apache.activemq.RedeliveryPolicy v;
java.lang.String v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v = staticinvoke <org.apache.activemq.util.IntrospectionSupport: java.lang.String toString(java.lang.Object,java.lang.Class,java.util.Map)>(v, class "Lorg/apache/activemq/filter/DestinationMapEntry;", null);
return v;
}
public void setPreDispatchCheck(boolean)
{
org.apache.activemq.RedeliveryPolicy v;
boolean v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v := @parameter: boolean;
v.<org.apache.activemq.RedeliveryPolicy: boolean preDispatchCheck> = v;
return;
}
public boolean isPreDispatchCheck()
{
org.apache.activemq.RedeliveryPolicy v;
boolean v;
v := @this: org.apache.activemq.RedeliveryPolicy;
v = v.<org.apache.activemq.RedeliveryPolicy: boolean preDispatchCheck>;
return v;
}
}