public class org.apache.camel.language.simple.SimpleLanguage extends org.apache.camel.support.LanguageSupport implements org.apache.camel.StaticService
{
private static final org.slf4j.Logger LOG;
private static final org.apache.camel.language.simple.SimpleLanguage SIMPLE;
boolean allowEscape;
private java.util.Map cacheExpression;
private java.util.Map cachePredicate;
public void <init>()
{
org.apache.camel.language.simple.SimpleLanguage v;
v := @this: org.apache.camel.language.simple.SimpleLanguage;
specialinvoke v.<org.apache.camel.support.LanguageSupport: void <init>()>();
v.<org.apache.camel.language.simple.SimpleLanguage: boolean allowEscape> = 1;
return;
}
public void start() throws java.lang.Exception
{
org.apache.camel.CamelContext v, v;
org.apache.camel.language.simple.SimpleLanguage v;
org.slf4j.Logger v, v;
java.lang.Integer v;
java.util.Map v, v, v, v;
int v;
v := @this: org.apache.camel.language.simple.SimpleLanguage;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cacheExpression>;
if v != null goto label;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cachePredicate>;
if v != null goto label;
v = virtualinvoke v.<org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.CamelContext getCamelContext()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.CamelContext getCamelContext()>();
v = staticinvoke <org.apache.camel.util.CamelContextHelper: int getMaximumSimpleCacheSize(org.apache.camel.CamelContext)>(v);
if v <= 0 goto label;
v = staticinvoke <org.apache.camel.util.LRUCacheFactory: java.util.Map newLRUCache(int,int,boolean)>(16, v, 0);
v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cacheExpression> = v;
v = staticinvoke <org.apache.camel.util.LRUCacheFactory: java.util.Map newLRUCache(int,int,boolean)>(16, v, 0);
v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cachePredicate> = v;
v = <org.apache.camel.language.simple.SimpleLanguage: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Simple language predicate/expression cache size: {}", v);
goto label;
label:
v = <org.apache.camel.language.simple.SimpleLanguage: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Simple language disabled predicate/expression cache");
label:
return;
}
public void stop() throws java.lang.Exception
{
java.lang.Object[] v, v;
org.apache.camel.language.simple.SimpleLanguage v;
long v, v, v, v, v, v;
java.lang.Integer v, v;
java.lang.Long v, v, v, v, v, v;
java.util.Map v, v, v, v;
int v, v;
boolean v, v, v, v;
org.slf4j.Logger v, v, v, v;
v := @this: org.apache.camel.language.simple.SimpleLanguage;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cachePredicate>;
v = v instanceof org.apache.camel.util.LRUCache;
if v == 0 goto label;
v = <org.apache.camel.language.simple.SimpleLanguage: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cachePredicate>;
v = <org.apache.camel.language.simple.SimpleLanguage: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[4];
v = virtualinvoke v.<org.apache.camel.util.LRUCache: int size()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[0] = v;
v = virtualinvoke v.<org.apache.camel.util.LRUCache: long getHits()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[1] = v;
v = virtualinvoke v.<org.apache.camel.util.LRUCache: long getMisses()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[2] = v;
v = virtualinvoke v.<org.apache.camel.util.LRUCache: long getEvicted()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[3] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Clearing simple language predicate cache[size={}, hits={}, misses={}, evicted={}]", v);
label:
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cacheExpression>;
v = v instanceof org.apache.camel.util.LRUCache;
if v == 0 goto label;
v = <org.apache.camel.language.simple.SimpleLanguage: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cacheExpression>;
v = <org.apache.camel.language.simple.SimpleLanguage: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[4];
v = virtualinvoke v.<org.apache.camel.util.LRUCache: int size()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[0] = v;
v = virtualinvoke v.<org.apache.camel.util.LRUCache: long getHits()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[1] = v;
v = virtualinvoke v.<org.apache.camel.util.LRUCache: long getMisses()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[2] = v;
v = virtualinvoke v.<org.apache.camel.util.LRUCache: long getEvicted()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[3] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Clearing simple language expression cache[size={}, hits={}, misses={}, evicted={}]", v);
label:
return;
}
public org.apache.camel.Predicate createPredicate(java.lang.String)
{
org.apache.camel.language.simple.SimpleLanguage v;
org.slf4j.Logger v;
org.apache.camel.language.simple.SimplePredicateParser v;
org.apache.camel.Predicate v;
java.util.Map v, v, v, v, v;
java.lang.Object v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.camel.language.simple.SimpleLanguage;
v := @parameter: java.lang.String;
staticinvoke <org.apache.camel.util.ObjectHelper: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "expression");
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cachePredicate>;
if v == null goto label;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cachePredicate>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
goto label;
label:
v = null;
label:
v = v;
if v != null goto label;
v = virtualinvoke v.<org.apache.camel.language.simple.SimpleLanguage: java.lang.String loadResource(java.lang.String)>(v);
v = v.<org.apache.camel.language.simple.SimpleLanguage: boolean allowEscape>;
v = staticinvoke <org.apache.camel.language.simple.SimpleBackwardsCompatibleParser: org.apache.camel.Predicate parsePredicate(java.lang.String,boolean)>(v, v);
if v == null goto label;
v = <org.apache.camel.language.simple.SimpleLanguage: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Simple language is using deprecated syntax: {}. You should migrate to use newer syntax that uses ${xxx} style.", v);
label:
if v != null goto label;
v = new org.apache.camel.language.simple.SimplePredicateParser;
v = v.<org.apache.camel.language.simple.SimpleLanguage: boolean allowEscape>;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cacheExpression>;
specialinvoke v.<org.apache.camel.language.simple.SimplePredicateParser: void <init>(java.lang.String,boolean,java.util.Map)>(v, v, v);
v = virtualinvoke v.<org.apache.camel.language.simple.SimplePredicateParser: org.apache.camel.Predicate parsePredicate()>();
label:
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cachePredicate>;
if v == null goto label;
if v == null goto label;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cachePredicate>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
return v;
}
public org.apache.camel.Expression createExpression(java.lang.String)
{
org.apache.camel.language.simple.SimpleLanguage v;
org.slf4j.Logger v;
org.apache.camel.Expression v;
java.util.Map v, v, v, v, v;
java.lang.Object v;
java.lang.String v, v;
org.apache.camel.language.simple.SimpleExpressionParser v;
boolean v, v;
v := @this: org.apache.camel.language.simple.SimpleLanguage;
v := @parameter: java.lang.String;
staticinvoke <org.apache.camel.util.ObjectHelper: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "expression");
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cacheExpression>;
if v == null goto label;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cacheExpression>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
goto label;
label:
v = null;
label:
v = v;
if v != null goto label;
v = virtualinvoke v.<org.apache.camel.language.simple.SimpleLanguage: java.lang.String loadResource(java.lang.String)>(v);
v = v.<org.apache.camel.language.simple.SimpleLanguage: boolean allowEscape>;
v = staticinvoke <org.apache.camel.language.simple.SimpleBackwardsCompatibleParser: org.apache.camel.Expression parseExpression(java.lang.String,boolean)>(v, v);
if v == null goto label;
v = <org.apache.camel.language.simple.SimpleLanguage: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Simple language is using deprecated syntax: {}. You should migrate to use newer syntax that uses ${xxx} style.", v);
label:
if v != null goto label;
v = new org.apache.camel.language.simple.SimpleExpressionParser;
v = v.<org.apache.camel.language.simple.SimpleLanguage: boolean allowEscape>;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cacheExpression>;
specialinvoke v.<org.apache.camel.language.simple.SimpleExpressionParser: void <init>(java.lang.String,boolean,java.util.Map)>(v, v, v);
v = virtualinvoke v.<org.apache.camel.language.simple.SimpleExpressionParser: org.apache.camel.Expression parseExpression()>();
label:
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cacheExpression>;
if v == null goto label;
if v == null goto label;
v = v.<org.apache.camel.language.simple.SimpleLanguage: java.util.Map cacheExpression>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
return v;
}
public static org.apache.camel.Expression simple(java.lang.String)
{
java.lang.String v;
org.apache.camel.Expression v;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.Expression expression(java.lang.String)>(v);
return v;
}
public static org.apache.camel.Expression simple(java.lang.String, java.lang.Class)
{
org.apache.camel.language.simple.SimpleLanguage v;
java.lang.Class v;
java.lang.String v;
org.apache.camel.Expression v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Class;
v = new org.apache.camel.language.simple.SimpleLanguage;
specialinvoke v.<org.apache.camel.language.simple.SimpleLanguage: void <init>()>();
v = virtualinvoke v.<org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.Expression createExpression(java.lang.String,java.lang.Class)>(v, v);
return v;
}
public org.apache.camel.Expression createExpression(java.lang.String, java.lang.Class)
{
org.apache.camel.language.simple.SimpleLanguage v;
org.apache.camel.Predicate v;
java.lang.Class v, v;
java.lang.String v;
org.apache.camel.Expression v, v;
v := @this: org.apache.camel.language.simple.SimpleLanguage;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Class;
if v == class "Ljava/lang/Boolean;" goto label;
v = <java.lang.Boolean: java.lang.Class TYPE>;
if v != v goto label;
label:
v = virtualinvoke v.<org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.Predicate createPredicate(java.lang.String)>(v);
v = staticinvoke <org.apache.camel.util.PredicateToExpressionAdapter: org.apache.camel.Expression toExpression(org.apache.camel.Predicate)>(v);
return v;
label:
v = virtualinvoke v.<org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.Expression createExpression(java.lang.String)>(v);
if v == null goto label;
v = staticinvoke <org.apache.camel.builder.ExpressionBuilder: org.apache.camel.Expression convertToExpression(org.apache.camel.Expression,java.lang.Class)>(v, v);
label:
return v;
}
public static org.apache.camel.Expression expression(java.lang.String)
{
java.lang.String v;
org.apache.camel.language.simple.SimpleLanguage v;
org.apache.camel.Expression v;
v := @parameter: java.lang.String;
v = <org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.language.simple.SimpleLanguage SIMPLE>;
v = virtualinvoke v.<org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.Expression createExpression(java.lang.String)>(v);
return v;
}
public static org.apache.camel.Predicate predicate(java.lang.String)
{
java.lang.String v;
org.apache.camel.language.simple.SimpleLanguage v;
org.apache.camel.Predicate v;
v := @parameter: java.lang.String;
v = <org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.language.simple.SimpleLanguage SIMPLE>;
v = virtualinvoke v.<org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.Predicate createPredicate(java.lang.String)>(v);
return v;
}
public static boolean hasSimpleFunction(java.lang.String)
{
java.lang.String v;
boolean v;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.camel.language.simple.SimpleTokenizer: boolean hasFunctionStartToken(java.lang.String)>(v);
return v;
}
public static transient void changeFunctionStartToken(java.lang.String[])
{
java.lang.String[] v;
v := @parameter: java.lang.String[];
staticinvoke <org.apache.camel.language.simple.SimpleTokenizer: void changeFunctionStartToken(java.lang.String[])>(v);
return;
}
public static transient void changeFunctionEndToken(java.lang.String[])
{
java.lang.String[] v;
v := @parameter: java.lang.String[];
staticinvoke <org.apache.camel.language.simple.SimpleTokenizer: void changeFunctionEndToken(java.lang.String[])>(v);
return;
}
public void setFunctionStartToken(java.lang.String)
{
java.lang.String[] v;
java.lang.String v;
org.apache.camel.language.simple.SimpleLanguage v;
v := @this: org.apache.camel.language.simple.SimpleLanguage;
v := @parameter: java.lang.String;
v = newarray (java.lang.String)[1];
v[0] = v;
staticinvoke <org.apache.camel.language.simple.SimpleLanguage: void changeFunctionStartToken(java.lang.String[])>(v);
return;
}
public void setFunctionEndToken(java.lang.String)
{
java.lang.String[] v;
java.lang.String v;
org.apache.camel.language.simple.SimpleLanguage v;
v := @this: org.apache.camel.language.simple.SimpleLanguage;
v := @parameter: java.lang.String;
v = newarray (java.lang.String)[1];
v[0] = v;
staticinvoke <org.apache.camel.language.simple.SimpleLanguage: void changeFunctionEndToken(java.lang.String[])>(v);
return;
}
static void <clinit>()
{
org.apache.camel.language.simple.SimpleLanguage v;
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/camel/language/simple/SimpleLanguage;");
<org.apache.camel.language.simple.SimpleLanguage: org.slf4j.Logger LOG> = v;
v = new org.apache.camel.language.simple.SimpleLanguage;
specialinvoke v.<org.apache.camel.language.simple.SimpleLanguage: void <init>()>();
<org.apache.camel.language.simple.SimpleLanguage: org.apache.camel.language.simple.SimpleLanguage SIMPLE> = v;
return;
}
}