final class org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask extends java.lang.Object implements java.util.concurrent.Callable
{
private final org.apache.camel.Exchange exchange;
private final org.apache.camel.AsyncCallback callback;
private final org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData data;
final org.apache.camel.processor.RedeliveryErrorHandler this$0;
void <init>(org.apache.camel.processor.RedeliveryErrorHandler, org.apache.camel.Exchange, org.apache.camel.AsyncCallback, org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData)
{
org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask v;
org.apache.camel.AsyncCallback v;
org.apache.camel.Exchange v;
org.apache.camel.processor.RedeliveryErrorHandler v;
org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData v;
v := @this: org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask;
v := @parameter: org.apache.camel.processor.RedeliveryErrorHandler;
v := @parameter: org.apache.camel.Exchange;
v := @parameter: org.apache.camel.AsyncCallback;
v := @parameter: org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData;
v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler this$0> = v;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.Exchange exchange> = v;
v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.AsyncCallback callback> = v;
v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData data> = v;
return;
}
public java.lang.Boolean call() throws java.lang.Exception
{
org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask v;
boolean v, v, v;
org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData v, v, v, v;
org.apache.camel.AsyncProcessor v, v, v;
java.lang.Object[] v;
org.apache.camel.Exchange v, v, v, v, v, v, v, v;
int v;
java.lang.Boolean v;
java.lang.String v;
org.apache.camel.CamelContext v;
org.slf4j.Logger v, v;
org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask$2 v;
org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask$1 v;
org.apache.camel.processor.RedeliveryErrorHandler v, v, v, v, v, v, v;
v := @this: org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler this$0>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.Exchange exchange>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData data>;
virtualinvoke v.<org.apache.camel.processor.RedeliveryErrorHandler: void prepareExchangeForRedelivery(org.apache.camel.Exchange,org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData)>(v, v);
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler this$0>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.Exchange exchange>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData data>;
virtualinvoke v.<org.apache.camel.processor.RedeliveryErrorHandler: void deliverToOnRedeliveryProcessor(org.apache.camel.Exchange,org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData)>(v, v);
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler this$0>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler: org.slf4j.Logger log>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isTraceEnabled()>();
if v == 0 goto label;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler this$0>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler: org.slf4j.Logger log>;
v = newarray (java.lang.Object)[3];
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.Exchange exchange>;
v = interfaceinvoke v.<org.apache.camel.Exchange: java.lang.String getExchangeId()>();
v[0] = v;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler this$0>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler: org.apache.camel.AsyncProcessor outputAsync>;
v[1] = v;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.Exchange exchange>;
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String,java.lang.Object[])>("Redelivering exchangeId: {} -> {} for Exchange: {}", v);
label:
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.Exchange exchange>;
v = interfaceinvoke v.<org.apache.camel.Exchange: org.apache.camel.CamelContext getContext()>();
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.Exchange exchange>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData data>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData: int redeliveryCounter>;
staticinvoke <org.apache.camel.util.EventHelper: boolean notifyExchangeRedelivery(org.apache.camel.CamelContext,org.apache.camel.Exchange,int)>(v, v, v);
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData data>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$RedeliveryData: boolean redeliverFromSync>;
if v == 0 goto label;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler this$0>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler: org.apache.camel.AsyncProcessor outputAsync>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.Exchange exchange>;
v = new org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask$1;
specialinvoke v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask$1: void <init>(org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask)>(v);
v = interfaceinvoke v.<org.apache.camel.AsyncProcessor: boolean process(org.apache.camel.Exchange,org.apache.camel.AsyncCallback)>(v, v);
goto label;
label:
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.processor.RedeliveryErrorHandler this$0>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler: org.apache.camel.AsyncProcessor outputAsync>;
v = v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask: org.apache.camel.Exchange exchange>;
v = new org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask$2;
specialinvoke v.<org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask$2: void <init>(org.apache.camel.processor.RedeliveryErrorHandler$AsyncRedeliveryTask)>(v);
v = interfaceinvoke v.<org.apache.camel.AsyncProcessor: boolean process(org.apache.camel.Exchange,org.apache.camel.AsyncCallback)>(v, v);
label:
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
return v;
}
}