public class org.apache.camel.builder.DefaultFluentProducerTemplate extends org.apache.camel.support.ServiceSupport implements org.apache.camel.FluentProducerTemplate
{
private final java.lang.ThreadLocal headers;
private final java.lang.ThreadLocal body;
private final org.apache.camel.CamelContext context;
private final java.lang.ClassValue resultProcessors;
private java.util.Optional templateCustomizer;
private java.util.Optional exchangeSupplier;
private java.util.Optional processorSupplier;
private java.util.Optional endpoint;
private java.util.Optional defaultEndpoint;
private int maximumCacheSize;
private boolean eventNotifierEnabled;
private volatile org.apache.camel.ProducerTemplate template;
public void <init>(org.apache.camel.CamelContext)
{
org.apache.camel.CamelContext v;
java.lang.ThreadLocal v, v;
org.apache.camel.builder.DefaultFluentProducerTemplate$1 v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
java.util.Optional v, v, v, v, v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: org.apache.camel.CamelContext;
specialinvoke v.<org.apache.camel.support.ServiceSupport: void <init>()>();
v = new java.lang.ThreadLocal;
specialinvoke v.<java.lang.ThreadLocal: void <init>()>();
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal headers> = v;
v = new java.lang.ThreadLocal;
specialinvoke v.<java.lang.ThreadLocal: void <init>()>();
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal body> = v;
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.CamelContext context> = v;
v = staticinvoke <java.util.Optional: java.util.Optional empty()>();
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional endpoint> = v;
v = staticinvoke <java.util.Optional: java.util.Optional empty()>();
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional defaultEndpoint> = v;
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: boolean eventNotifierEnabled> = 1;
v = staticinvoke <java.util.Optional: java.util.Optional empty()>();
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional templateCustomizer> = v;
v = staticinvoke <java.util.Optional: java.util.Optional empty()>();
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional exchangeSupplier> = v;
v = staticinvoke <java.util.Optional: java.util.Optional empty()>();
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional processorSupplier> = v;
v = new org.apache.camel.builder.DefaultFluentProducerTemplate$1;
specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate$1: void <init>(org.apache.camel.builder.DefaultFluentProducerTemplate)>(v);
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ClassValue resultProcessors> = v;
return;
}
public org.apache.camel.CamelContext getCamelContext()
{
org.apache.camel.CamelContext v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.CamelContext context>;
return v;
}
public int getCurrentCacheSize()
{
org.apache.camel.builder.DefaultFluentProducerTemplate v;
int v;
org.apache.camel.ProducerTemplate v, v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
if v != null goto label;
return 0;
label:
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
v = interfaceinvoke v.<org.apache.camel.ProducerTemplate: int getCurrentCacheSize()>();
return v;
}
public void cleanUp()
{
org.apache.camel.ProducerTemplate v, v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
if v == null goto label;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
interfaceinvoke v.<org.apache.camel.ProducerTemplate: void cleanUp()>();
label:
return;
}
public void setDefaultEndpointUri(java.lang.String)
{
org.apache.camel.CamelContext v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
java.lang.String v;
org.apache.camel.Endpoint v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: java.lang.String;
v = virtualinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.CamelContext getCamelContext()>();
v = interfaceinvoke v.<org.apache.camel.CamelContext: org.apache.camel.Endpoint getEndpoint(java.lang.String)>(v);
virtualinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: void setDefaultEndpoint(org.apache.camel.Endpoint)>(v);
return;
}
public org.apache.camel.Endpoint getDefaultEndpoint()
{
java.util.Optional v;
java.lang.Object v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional defaultEndpoint>;
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(null);
return v;
}
public void setDefaultEndpoint(org.apache.camel.Endpoint)
{
java.util.Optional v;
org.apache.camel.Endpoint v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: org.apache.camel.Endpoint;
v = staticinvoke <java.util.Optional: java.util.Optional ofNullable(java.lang.Object)>(v);
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional defaultEndpoint> = v;
return;
}
public int getMaximumCacheSize()
{
int v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: int maximumCacheSize>;
return v;
}
public void setMaximumCacheSize(int)
{
int v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: int;
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: int maximumCacheSize> = v;
return;
}
public boolean isEventNotifierEnabled()
{
org.apache.camel.builder.DefaultFluentProducerTemplate v;
boolean v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: boolean eventNotifierEnabled>;
return v;
}
public void setEventNotifierEnabled(boolean)
{
org.apache.camel.builder.DefaultFluentProducerTemplate v;
boolean v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: boolean;
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: boolean eventNotifierEnabled> = v;
return;
}
public org.apache.camel.FluentProducerTemplate clearAll()
{
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
virtualinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.FluentProducerTemplate clearBody()>();
virtualinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.FluentProducerTemplate clearHeaders()>();
return v;
}
public org.apache.camel.FluentProducerTemplate withHeader(java.lang.String, java.lang.Object)
{
java.lang.ThreadLocal v, v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
java.lang.Object v, v;
java.util.HashMap v;
java.lang.String v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal headers>;
v = virtualinvoke v.<java.lang.ThreadLocal: java.lang.Object get()>();
if v != null goto label;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = v;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal headers>;
virtualinvoke v.<java.lang.ThreadLocal: void set(java.lang.Object)>(v);
label:
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
public org.apache.camel.FluentProducerTemplate clearHeaders()
{
java.lang.ThreadLocal v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal headers>;
virtualinvoke v.<java.lang.ThreadLocal: void remove()>();
return v;
}
public org.apache.camel.FluentProducerTemplate withBody(java.lang.Object)
{
java.lang.Object v;
java.lang.ThreadLocal v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: java.lang.Object;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal body>;
virtualinvoke v.<java.lang.ThreadLocal: void set(java.lang.Object)>(v);
return v;
}
public org.apache.camel.FluentProducerTemplate withBodyAs(java.lang.Object, java.lang.Class)
{
org.apache.camel.CamelContext v;
java.lang.ThreadLocal v;
org.apache.camel.TypeConverter v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
java.lang.Class v;
java.lang.Object v, v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Class;
if v == null goto label;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.CamelContext context>;
v = interfaceinvoke v.<org.apache.camel.CamelContext: org.apache.camel.TypeConverter getTypeConverter()>();
v = interfaceinvoke v.<org.apache.camel.TypeConverter: java.lang.Object convertTo(java.lang.Class,java.lang.Object)>(v, v);
goto label;
label:
v = v;
label:
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal body>;
virtualinvoke v.<java.lang.ThreadLocal: void set(java.lang.Object)>(v);
return v;
}
public org.apache.camel.FluentProducerTemplate clearBody()
{
java.lang.ThreadLocal v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal body>;
virtualinvoke v.<java.lang.ThreadLocal: void remove()>();
return v;
}
public org.apache.camel.FluentProducerTemplate withTemplateCustomizer(java.util.function.Consumer)
{
java.util.function.Consumer v;
java.util.Optional v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: java.util.function.Consumer;
v = staticinvoke <java.util.Optional: java.util.Optional of(java.lang.Object)>(v);
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional templateCustomizer> = v;
return v;
}
public org.apache.camel.FluentProducerTemplate withExchange(org.apache.camel.Exchange)
{
org.apache.camel.FluentProducerTemplate v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
org.apache.camel.Exchange v;
java.util.function.Supplier v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: org.apache.camel.Exchange;
v = staticinvoke <org.apache.camel.builder.DefaultFluentProducerTemplate$lambda_withExchange_0__4: java.util.function.Supplier bootstrap$(org.apache.camel.Exchange)>(v);
v = virtualinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.FluentProducerTemplate withExchange(java.util.function.Supplier)>(v);
return v;
}
public org.apache.camel.FluentProducerTemplate withExchange(java.util.function.Supplier)
{
java.util.Optional v;
java.util.function.Supplier v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: java.util.function.Supplier;
v = staticinvoke <java.util.Optional: java.util.Optional of(java.lang.Object)>(v);
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional exchangeSupplier> = v;
return v;
}
public org.apache.camel.FluentProducerTemplate withProcessor(org.apache.camel.Processor)
{
org.apache.camel.Processor v;
org.apache.camel.FluentProducerTemplate v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
java.util.function.Supplier v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: org.apache.camel.Processor;
v = staticinvoke <org.apache.camel.builder.DefaultFluentProducerTemplate$lambda_withProcessor_1__5: java.util.function.Supplier bootstrap$(org.apache.camel.Processor)>(v);
v = virtualinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.FluentProducerTemplate withProcessor(java.util.function.Supplier)>(v);
return v;
}
public org.apache.camel.FluentProducerTemplate withProcessor(java.util.function.Supplier)
{
java.util.Optional v;
java.util.function.Supplier v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: java.util.function.Supplier;
v = staticinvoke <java.util.Optional: java.util.Optional of(java.lang.Object)>(v);
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional processorSupplier> = v;
return v;
}
public org.apache.camel.FluentProducerTemplate 'to'(java.lang.String)
{
org.apache.camel.CamelContext v;
org.apache.camel.FluentProducerTemplate v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
java.lang.String v;
org.apache.camel.Endpoint v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: java.lang.String;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.CamelContext context>;
v = interfaceinvoke v.<org.apache.camel.CamelContext: org.apache.camel.Endpoint getEndpoint(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.FluentProducerTemplate 'to'(org.apache.camel.Endpoint)>(v);
return v;
}
public org.apache.camel.FluentProducerTemplate 'to'(org.apache.camel.Endpoint)
{
java.util.Optional v;
org.apache.camel.Endpoint v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: org.apache.camel.Endpoint;
v = staticinvoke <java.util.Optional: java.util.Optional of(java.lang.Object)>(v);
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional endpoint> = v;
return v;
}
public java.lang.Object request() throws org.apache.camel.CamelExecutionException
{
java.lang.Object v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = virtualinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.Object request(java.lang.Class)>(class "Ljava/lang/Object;");
return v;
}
public java.lang.Object request(java.lang.Class) throws org.apache.camel.CamelExecutionException
{
org.apache.camel.Message v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
org.apache.camel.Exchange v, v;
org.apache.camel.Endpoint v;
java.util.function.Supplier v;
org.apache.camel.ProducerTemplate v, v, v;
boolean v, v;
org.apache.camel.ExchangePattern v, v;
org.apache.camel.CamelContext v;
java.lang.IllegalArgumentException v;
org.apache.camel.TypeConverter v;
java.lang.ClassValue v;
java.util.Optional v, v;
java.lang.Class v;
java.lang.Object v, v, v, v, v, v, v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: java.lang.Class;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional exchangeSupplier>;
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("withExchange not supported on FluentProducerTemplate.request method. Use send method instead.");
throw v;
label:
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.Endpoint target()>();
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional processorSupplier>;
v = staticinvoke <org.apache.camel.builder.DefaultFluentProducerTemplate$lambda_request_2__6: java.util.function.Supplier bootstrap$(org.apache.camel.builder.DefaultFluentProducerTemplate)>(v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(v);
if v != class "Lorg/apache/camel/Exchange;" goto label;
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template()>();
v = interfaceinvoke v.<java.util.function.Supplier: java.lang.Object get()>();
v = interfaceinvoke v.<org.apache.camel.ProducerTemplate: org.apache.camel.Exchange request(org.apache.camel.Endpoint,org.apache.camel.Processor)>(v, v);
goto label;
label:
if v != class "Lorg/apache/camel/Message;" goto label;
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template()>();
v = interfaceinvoke v.<java.util.function.Supplier: java.lang.Object get()>();
v = interfaceinvoke v.<org.apache.camel.ProducerTemplate: org.apache.camel.Exchange request(org.apache.camel.Endpoint,org.apache.camel.Processor)>(v, v);
v = interfaceinvoke v.<org.apache.camel.Exchange: boolean hasOut()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.camel.Exchange: org.apache.camel.Message getOut()>();
goto label;
label:
v = interfaceinvoke v.<org.apache.camel.Exchange: org.apache.camel.Message getIn()>();
label:
v = v;
goto label;
label:
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template()>();
v = <org.apache.camel.ExchangePattern: org.apache.camel.ExchangePattern InOut>;
v = interfaceinvoke v.<java.util.function.Supplier: java.lang.Object get()>();
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ClassValue resultProcessors>;
v = virtualinvoke v.<java.lang.ClassValue: java.lang.Object get(java.lang.Class)>(v);
v = interfaceinvoke v.<org.apache.camel.ProducerTemplate: org.apache.camel.Exchange send(org.apache.camel.Endpoint,org.apache.camel.ExchangePattern,org.apache.camel.Processor,org.apache.camel.Processor)>(v, v, v, v);
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.CamelContext context>;
v = interfaceinvoke v.<org.apache.camel.CamelContext: org.apache.camel.TypeConverter getTypeConverter()>();
v = interfaceinvoke v.<org.apache.camel.Exchange: org.apache.camel.ExchangePattern getPattern()>();
v = staticinvoke <org.apache.camel.util.ExchangeHelper: java.lang.Object extractResultBody(org.apache.camel.Exchange,org.apache.camel.ExchangePattern)>(v, v);
v = interfaceinvoke v.<org.apache.camel.TypeConverter: java.lang.Object convertTo(java.lang.Class,java.lang.Object)>(v, v);
label:
return v;
}
public java.util.concurrent.Future asyncRequest()
{
java.util.concurrent.Future v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = virtualinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.concurrent.Future asyncRequest(java.lang.Class)>(class "Ljava/lang/Object;");
return v;
}
public java.util.concurrent.Future asyncRequest(java.lang.Class)
{
org.apache.camel.builder.DefaultFluentProducerTemplate v;
java.util.HashMap v;
java.util.concurrent.CompletableFuture v;
org.apache.camel.Endpoint v;
org.apache.camel.ProducerTemplate v, v;
boolean v;
java.lang.ThreadLocal v, v, v, v;
java.lang.Class v;
java.lang.Object v, v, v, v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v := @parameter: java.lang.Class;
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.Endpoint target()>();
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal headers>;
v = virtualinvoke v.<java.lang.ThreadLocal: java.lang.Object get()>();
v = staticinvoke <org.apache.camel.util.ObjectHelper: boolean isNotEmpty(java.lang.Object)>(v);
if v == 0 goto label;
v = new java.util.HashMap;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal headers>;
v = virtualinvoke v.<java.lang.ThreadLocal: java.lang.Object get()>();
specialinvoke v.<java.util.HashMap: void <init>(java.util.Map)>(v);
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal body>;
v = virtualinvoke v.<java.lang.ThreadLocal: java.lang.Object get()>();
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template()>();
v = interfaceinvoke v.<org.apache.camel.ProducerTemplate: java.util.concurrent.CompletableFuture asyncRequestBodyAndHeaders(org.apache.camel.Endpoint,java.lang.Object,java.util.Map,java.lang.Class)>(v, v, v, v);
goto label;
label:
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal body>;
v = virtualinvoke v.<java.lang.ThreadLocal: java.lang.Object get()>();
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template()>();
v = interfaceinvoke v.<org.apache.camel.ProducerTemplate: java.util.concurrent.CompletableFuture asyncRequestBody(org.apache.camel.Endpoint,java.lang.Object,java.lang.Class)>(v, v, v);
label:
return v;
}
public org.apache.camel.Exchange send() throws org.apache.camel.CamelExecutionException
{
org.apache.camel.builder.DefaultFluentProducerTemplate v;
org.apache.camel.Exchange v;
org.apache.camel.Endpoint v;
java.util.function.Supplier v;
java.util.Optional v, v, v;
org.apache.camel.ProducerTemplate v, v;
java.lang.Object v, v, v, v;
boolean v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.Endpoint target()>();
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional exchangeSupplier>;
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template()>();
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional exchangeSupplier>;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = interfaceinvoke v.<java.util.function.Supplier: java.lang.Object get()>();
v = interfaceinvoke v.<org.apache.camel.ProducerTemplate: org.apache.camel.Exchange send(org.apache.camel.Endpoint,org.apache.camel.Exchange)>(v, v);
goto label;
label:
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template()>();
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional processorSupplier>;
v = staticinvoke <org.apache.camel.builder.DefaultFluentProducerTemplate$lambda_send_3__7: java.util.function.Supplier bootstrap$(org.apache.camel.builder.DefaultFluentProducerTemplate)>(v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.function.Supplier: java.lang.Object get()>();
v = interfaceinvoke v.<org.apache.camel.ProducerTemplate: org.apache.camel.Exchange send(org.apache.camel.Endpoint,org.apache.camel.Processor)>(v, v);
label:
return v;
}
public java.util.concurrent.Future asyncSend()
{
org.apache.camel.builder.DefaultFluentProducerTemplate v;
java.util.concurrent.CompletableFuture v;
org.apache.camel.Endpoint v;
java.util.function.Supplier v;
java.util.Optional v, v, v;
org.apache.camel.ProducerTemplate v, v;
java.lang.Object v, v, v, v;
boolean v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.Endpoint target()>();
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional exchangeSupplier>;
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template()>();
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional exchangeSupplier>;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = interfaceinvoke v.<java.util.function.Supplier: java.lang.Object get()>();
v = interfaceinvoke v.<org.apache.camel.ProducerTemplate: java.util.concurrent.CompletableFuture asyncSend(org.apache.camel.Endpoint,org.apache.camel.Exchange)>(v, v);
goto label;
label:
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template()>();
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional processorSupplier>;
v = staticinvoke <org.apache.camel.builder.DefaultFluentProducerTemplate$lambda_asyncSend_4__8: java.util.function.Supplier bootstrap$(org.apache.camel.builder.DefaultFluentProducerTemplate)>(v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.function.Supplier: java.lang.Object get()>();
v = interfaceinvoke v.<org.apache.camel.ProducerTemplate: java.util.concurrent.CompletableFuture asyncSend(org.apache.camel.Endpoint,org.apache.camel.Processor)>(v, v);
label:
return v;
}
public static org.apache.camel.FluentProducerTemplate on(org.apache.camel.CamelContext)
{
org.apache.camel.CamelContext v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @parameter: org.apache.camel.CamelContext;
v = new org.apache.camel.builder.DefaultFluentProducerTemplate;
specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: void <init>(org.apache.camel.CamelContext)>(v);
return v;
}
private org.apache.camel.ProducerTemplate template()
{
org.apache.camel.builder.DefaultFluentProducerTemplate v;
int v, v;
org.apache.camel.ProducerTemplate v, v, v, v, v;
boolean v;
org.apache.camel.CamelContext v, v, v;
java.util.function.Consumer v, v;
java.util.Optional v, v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.CamelContext context>;
staticinvoke <org.apache.camel.util.ObjectHelper: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "CamelContext");
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
if v != null goto label;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: int maximumCacheSize>;
if v <= 0 goto label;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.CamelContext context>;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: int maximumCacheSize>;
v = interfaceinvoke v.<org.apache.camel.CamelContext: org.apache.camel.ProducerTemplate createProducerTemplate(int)>(v);
goto label;
label:
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.CamelContext context>;
v = interfaceinvoke v.<org.apache.camel.CamelContext: org.apache.camel.ProducerTemplate createProducerTemplate()>();
label:
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template> = v;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional defaultEndpoint>;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.camel.builder.DefaultFluentProducerTemplate$setDefaultEndpoint__9: java.util.function.Consumer bootstrap$(org.apache.camel.ProducerTemplate)>(v);
virtualinvoke v.<java.util.Optional: void ifPresent(java.util.function.Consumer)>(v);
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: boolean eventNotifierEnabled>;
interfaceinvoke v.<org.apache.camel.ProducerTemplate: void setEventNotifierEnabled(boolean)>(v);
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional templateCustomizer>;
v = staticinvoke <org.apache.camel.builder.DefaultFluentProducerTemplate$lambda_template_5__10: java.util.function.Consumer bootstrap$(org.apache.camel.builder.DefaultFluentProducerTemplate)>(v);
virtualinvoke v.<java.util.Optional: void ifPresent(java.util.function.Consumer)>(v);
label:
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
return v;
}
private org.apache.camel.Processor defaultProcessor()
{
org.apache.camel.Processor v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = staticinvoke <org.apache.camel.builder.DefaultFluentProducerTemplate$lambda_defaultProcessor_6__11: org.apache.camel.Processor bootstrap$(org.apache.camel.builder.DefaultFluentProducerTemplate)>(v);
return v;
}
private org.apache.camel.Processor defaultAsyncProcessor()
{
java.lang.ThreadLocal v, v, v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
java.util.HashMap v;
org.apache.camel.Processor v;
java.lang.Object v, v, v;
boolean v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal headers>;
v = virtualinvoke v.<java.lang.ThreadLocal: java.lang.Object get()>();
v = staticinvoke <org.apache.camel.util.ObjectHelper: boolean isNotEmpty(java.lang.Object)>(v);
if v == 0 goto label;
v = new java.util.HashMap;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal headers>;
v = virtualinvoke v.<java.lang.ThreadLocal: java.lang.Object get()>();
specialinvoke v.<java.util.HashMap: void <init>(java.util.Map)>(v);
goto label;
label:
v = null;
label:
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.lang.ThreadLocal body>;
v = virtualinvoke v.<java.lang.ThreadLocal: java.lang.Object get()>();
v = staticinvoke <org.apache.camel.builder.DefaultFluentProducerTemplate$lambda_defaultAsyncProcessor_7__12: org.apache.camel.Processor bootstrap$(java.util.Map,java.lang.Object)>(v, v);
return v;
}
private org.apache.camel.Endpoint target()
{
org.apache.camel.builder.DefaultFluentProducerTemplate v;
java.lang.IllegalArgumentException v;
java.util.Optional v, v, v, v;
java.lang.Object v, v;
boolean v, v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional endpoint>;
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional endpoint>;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
return v;
label:
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional defaultEndpoint>;
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: java.util.Optional defaultEndpoint>;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
return v;
label:
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("No endpoint configured on FluentProducerTemplate. You can configure an endpoint with to(uri)");
throw v;
}
protected void doStart() throws java.lang.Exception
{
org.apache.camel.builder.DefaultFluentProducerTemplate v;
org.apache.camel.ProducerTemplate v, v, v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
if v != null goto label;
v = specialinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template()>();
v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template> = v;
label:
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
staticinvoke <org.apache.camel.util.ServiceHelper: void startService(org.apache.camel.Service)>(v);
return;
}
protected void doStop() throws java.lang.Exception
{
org.apache.camel.ProducerTemplate v;
org.apache.camel.builder.DefaultFluentProducerTemplate v;
v := @this: org.apache.camel.builder.DefaultFluentProducerTemplate;
virtualinvoke v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.FluentProducerTemplate clearAll()>();
v = v.<org.apache.camel.builder.DefaultFluentProducerTemplate: org.apache.camel.ProducerTemplate template>;
staticinvoke <org.apache.camel.util.ServiceHelper: void stopService(java.lang.Object)>(v);
return;
}
}