final class org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint extends org.apache.camel.impl.BreakpointSupport implements org.apache.camel.spi.Condition
{
private final java.lang.String nodeId;
private org.apache.camel.Predicate condition;
final org.apache.camel.processor.interceptor.BacklogDebugger this$0;
private void <init>(org.apache.camel.processor.interceptor.BacklogDebugger, java.lang.String, org.apache.camel.Predicate)
{
org.apache.camel.Predicate v;
java.lang.String v;
org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint v;
org.apache.camel.processor.interceptor.BacklogDebugger v;
v := @this: org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint;
v := @parameter: org.apache.camel.processor.interceptor.BacklogDebugger;
v := @parameter: java.lang.String;
v := @parameter: org.apache.camel.Predicate;
v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0> = v;
specialinvoke v.<org.apache.camel.impl.BreakpointSupport: void <init>()>();
v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: java.lang.String nodeId> = v;
v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.Predicate condition> = v;
return;
}
public org.apache.camel.Predicate getCondition()
{
org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint v;
org.apache.camel.Predicate v;
v := @this: org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.Predicate condition>;
return v;
}
public void setCondition(org.apache.camel.Predicate)
{
org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint v;
org.apache.camel.Predicate v;
v := @this: org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint;
v := @parameter: org.apache.camel.Predicate;
v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.Predicate condition> = v;
return;
}
public void beforeProcess(org.apache.camel.Exchange, org.apache.camel.Processor, org.apache.camel.model.ProcessorDefinition)
{
org.apache.camel.Message v;
java.util.Date v;
org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint v;
org.apache.camel.util.CamelLogger v, v, v;
boolean v, v, v;
org.apache.camel.LoggingLevel v;
java.util.concurrent.CountDownLatch v;
org.apache.camel.processor.interceptor.DefaultBacklogTracerEventMessage v;
org.apache.camel.model.ProcessorDefinition v;
long v, v;
org.apache.camel.Exchange v;
java.util.concurrent.ConcurrentMap v, v;
org.apache.camel.Processor v;
int v;
java.lang.String v, v, v, v, v, v, v, v, v;
java.util.concurrent.TimeUnit v;
java.util.concurrent.atomic.AtomicLong v;
java.lang.InterruptedException v;
java.lang.Object v;
org.apache.camel.processor.interceptor.BacklogDebugger v, v, v, v, v, v, v, v, v, v;
v := @this: org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint;
v := @parameter: org.apache.camel.Exchange;
v := @parameter: org.apache.camel.Processor;
v := @parameter: org.apache.camel.model.ProcessorDefinition;
v = new java.util.Date;
specialinvoke v.<java.util.Date: void <init>()>();
v = virtualinvoke v.<org.apache.camel.model.ProcessorDefinition: java.lang.String getId()>();
v = staticinvoke <org.apache.camel.model.ProcessorDefinitionHelper: java.lang.String getRouteId(org.apache.camel.model.ProcessorDefinition)>(v);
v = interfaceinvoke v.<org.apache.camel.Exchange: java.lang.String getExchangeId()>();
v = interfaceinvoke v.<org.apache.camel.Exchange: org.apache.camel.Message getIn()>();
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = virtualinvoke v.<org.apache.camel.processor.interceptor.BacklogDebugger: boolean isBodyIncludeStreams()>();
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = virtualinvoke v.<org.apache.camel.processor.interceptor.BacklogDebugger: boolean isBodyIncludeFiles()>();
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = virtualinvoke v.<org.apache.camel.processor.interceptor.BacklogDebugger: int getBodyMaxChars()>();
v = staticinvoke <org.apache.camel.util.MessageHelper: java.lang.String dumpAsXml(org.apache.camel.Message,boolean,int,boolean,boolean,int)>(v, 1, 2, v, v, v);
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger: java.util.concurrent.atomic.AtomicLong debugCounter>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long incrementAndGet()>();
v = new org.apache.camel.processor.interceptor.DefaultBacklogTracerEventMessage;
specialinvoke v.<org.apache.camel.processor.interceptor.DefaultBacklogTracerEventMessage: void <init>(long,java.util.Date,java.lang.String,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v, v, v);
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger: java.util.concurrent.ConcurrentMap suspendedBreakpointMessages>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: java.lang.String nodeId>;
interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger: java.util.concurrent.ConcurrentMap suspendedBreakpoints>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: java.lang.String nodeId>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger: org.apache.camel.util.CamelLogger logger>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, 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[])>("NodeBreakpoint at node \u is waiting to continue for exchangeId: \u0001");
virtualinvoke v.<org.apache.camel.util.CamelLogger: void log(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.camel.processor.interceptor.BacklogDebugger$SuspendedExchange: java.util.concurrent.CountDownLatch getLatch()>();
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger: long fallbackTimeout>;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
v = virtualinvoke v.<java.util.concurrent.CountDownLatch: boolean await(long,java.util.concurrent.TimeUnit)>(v, v);
if v != 0 goto label;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger: org.apache.camel.util.CamelLogger logger>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, 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[])>("NodeBreakpoint at node \u timed out and is continued exchangeId: \u0001");
v = <org.apache.camel.LoggingLevel: org.apache.camel.LoggingLevel WARN>;
virtualinvoke v.<org.apache.camel.util.CamelLogger: void log(java.lang.String,org.apache.camel.LoggingLevel)>(v, v);
goto label;
label:
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger: org.apache.camel.util.CamelLogger logger>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, 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[])>("NodeBreakpoint at node \u is continued exchangeId: \u0001");
virtualinvoke v.<org.apache.camel.util.CamelLogger: void log(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
return;
catch java.lang.InterruptedException from label to label with label;
}
public boolean matchProcess(org.apache.camel.Exchange, org.apache.camel.Processor, org.apache.camel.model.ProcessorDefinition)
{
org.apache.camel.model.ProcessorDefinition v;
org.apache.camel.processor.interceptor.BacklogDebugger$SuspendedExchange v;
org.apache.camel.Exchange v;
org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint v;
java.util.concurrent.ConcurrentMap v;
org.apache.camel.Processor v;
org.apache.camel.Predicate v, v;
java.lang.String v, v, v;
boolean v, v, v, v;
java.util.concurrent.CountDownLatch v;
java.lang.Object v;
org.apache.camel.processor.interceptor.BacklogDebugger v;
v := @this: org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint;
v := @parameter: org.apache.camel.Exchange;
v := @parameter: org.apache.camel.Processor;
v := @parameter: org.apache.camel.model.ProcessorDefinition;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: java.lang.String nodeId>;
v = virtualinvoke v.<org.apache.camel.model.ProcessorDefinition: java.lang.String getId()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
return 0;
label:
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.Predicate condition>;
if v == null goto label;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.Predicate condition>;
v = interfaceinvoke v.<org.apache.camel.Predicate: boolean matches(org.apache.camel.Exchange)>(v);
if v != 0 goto label;
return 0;
label:
v = new org.apache.camel.processor.interceptor.BacklogDebugger$SuspendedExchange;
v = new java.util.concurrent.CountDownLatch;
specialinvoke v.<java.util.concurrent.CountDownLatch: void <init>(int)>(1);
specialinvoke v.<org.apache.camel.processor.interceptor.BacklogDebugger$SuspendedExchange: void <init>(org.apache.camel.Exchange,java.util.concurrent.CountDownLatch)>(v, v);
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: org.apache.camel.processor.interceptor.BacklogDebugger this$0>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger: java.util.concurrent.ConcurrentMap suspendedBreakpoints>;
v = v.<org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint: java.lang.String nodeId>;
v = interfaceinvoke v.<java.util.concurrent.ConcurrentMap: java.lang.Object putIfAbsent(java.lang.Object,java.lang.Object)>(v, v);
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean matchEvent(org.apache.camel.Exchange, java.util.EventObject)
{
org.apache.camel.Exchange v;
org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint v;
java.util.EventObject v;
v := @this: org.apache.camel.processor.interceptor.BacklogDebugger$NodeBreakpoint;
v := @parameter: org.apache.camel.Exchange;
v := @parameter: java.util.EventObject;
return 0;
}
}