public final class org.apache.camel.util.ResolverHelper extends java.lang.Object
{
public static final java.lang.String COMPONENT_FALLBACK_SUFFIX;
public static final java.lang.String DATA_FORMAT_FALLBACK_SUFFIX;
public static final java.lang.String DATA_FORMAT_FACTORY_FALLBACK_SUFFIX;
public static final java.lang.String LANGUAGE_FALLBACK_SUFFIX;
private static final org.slf4j.Logger LOG;
private static final org.apache.camel.util.ResolverHelper$LookupExceptionHandler EXCEPTION_HANDLER;
private void <init>()
{
org.apache.camel.util.ResolverHelper v;
v := @this: org.apache.camel.util.ResolverHelper;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static org.apache.camel.Component lookupComponentInRegistryWithFallback(org.apache.camel.CamelContext, java.lang.String)
{
org.apache.camel.CamelContext v;
org.apache.camel.Component v;
org.apache.camel.util.ResolverHelper$LookupExceptionHandler v;
java.lang.String v;
v := @parameter: org.apache.camel.CamelContext;
v := @parameter: java.lang.String;
v = <org.apache.camel.util.ResolverHelper: org.apache.camel.util.ResolverHelper$LookupExceptionHandler EXCEPTION_HANDLER>;
v = staticinvoke <org.apache.camel.util.ResolverHelper: org.apache.camel.Component lookupComponentInRegistryWithFallback(org.apache.camel.CamelContext,java.lang.String,org.apache.camel.util.ResolverHelper$LookupExceptionHandler)>(v, v, v);
return v;
}
public static org.apache.camel.Component lookupComponentInRegistryWithFallback(org.apache.camel.CamelContext, java.lang.String, org.apache.camel.util.ResolverHelper$LookupExceptionHandler)
{
org.apache.camel.CamelContext v;
org.slf4j.Logger v;
java.lang.String[] v;
org.apache.camel.util.ResolverHelper$LookupExceptionHandler v;
java.lang.Class v;
java.lang.Object v, v;
java.lang.String v, v, v;
boolean v;
v := @parameter: org.apache.camel.CamelContext;
v := @parameter: java.lang.String;
v := @parameter: org.apache.camel.util.ResolverHelper$LookupExceptionHandler;
v = newarray (java.lang.String)[2];
v[0] = v;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(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[])>("\u0001-component");
v[1] = v;
v = staticinvoke <org.apache.camel.util.ResolverHelper: java.lang.Object lookupInRegistry(org.apache.camel.CamelContext,java.lang.Class,boolean,org.apache.camel.util.ResolverHelper$LookupExceptionHandler,java.lang.String[])>(v, class "Lorg/apache/camel/Component;", 0, v, v);
if v == null goto label;
v = v instanceof org.apache.camel.Component;
if v == 0 goto label;
return v;
label:
v = staticinvoke <org.apache.camel.util.CamelContextHelper: java.lang.Object convertTo(org.apache.camel.CamelContext,java.lang.Class,java.lang.Object)>(v, class "Lorg/apache/camel/Component;", v);
if v == null goto label;
return v;
label:
if v == null goto label;
v = <org.apache.camel.util.ResolverHelper: org.slf4j.Logger LOG>;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Found Component with incompatible class: {}", v);
label:
return null;
}
public static org.apache.camel.spi.DataFormat lookupDataFormatInRegistryWithFallback(org.apache.camel.CamelContext, java.lang.String)
{
org.apache.camel.CamelContext v;
org.apache.camel.spi.DataFormat v;
org.apache.camel.util.ResolverHelper$LookupExceptionHandler v;
java.lang.String v;
v := @parameter: org.apache.camel.CamelContext;
v := @parameter: java.lang.String;
v = <org.apache.camel.util.ResolverHelper: org.apache.camel.util.ResolverHelper$LookupExceptionHandler EXCEPTION_HANDLER>;
v = staticinvoke <org.apache.camel.util.ResolverHelper: org.apache.camel.spi.DataFormat lookupDataFormatInRegistryWithFallback(org.apache.camel.CamelContext,java.lang.String,org.apache.camel.util.ResolverHelper$LookupExceptionHandler)>(v, v, v);
return v;
}
public static org.apache.camel.spi.DataFormat lookupDataFormatInRegistryWithFallback(org.apache.camel.CamelContext, java.lang.String, org.apache.camel.util.ResolverHelper$LookupExceptionHandler)
{
org.apache.camel.CamelContext v;
org.slf4j.Logger v;
java.lang.String[] v;
org.apache.camel.util.ResolverHelper$LookupExceptionHandler v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v, v, v;
boolean v;
v := @parameter: org.apache.camel.CamelContext;
v := @parameter: java.lang.String;
v := @parameter: org.apache.camel.util.ResolverHelper$LookupExceptionHandler;
v = newarray (java.lang.String)[2];
v[0] = v;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(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[])>("\u0001-dataformat");
v[1] = v;
v = staticinvoke <org.apache.camel.util.ResolverHelper: java.lang.Object lookupInRegistry(org.apache.camel.CamelContext,java.lang.Class,boolean,org.apache.camel.util.ResolverHelper$LookupExceptionHandler,java.lang.String[])>(v, class "Lorg/apache/camel/spi/DataFormat;", 0, v, v);
v = v instanceof org.apache.camel.spi.DataFormat;
if v == 0 goto label;
return v;
label:
if v == null goto label;
v = <org.apache.camel.util.ResolverHelper: org.slf4j.Logger LOG>;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Found DataFormat with incompatible class: {}", v);
label:
return null;
}
public static org.apache.camel.spi.DataFormatFactory lookupDataFormatFactoryInRegistryWithFallback(org.apache.camel.CamelContext, java.lang.String)
{
org.apache.camel.CamelContext v;
org.apache.camel.spi.DataFormatFactory v;
org.apache.camel.util.ResolverHelper$LookupExceptionHandler v;
java.lang.String v;
v := @parameter: org.apache.camel.CamelContext;
v := @parameter: java.lang.String;
v = <org.apache.camel.util.ResolverHelper: org.apache.camel.util.ResolverHelper$LookupExceptionHandler EXCEPTION_HANDLER>;
v = staticinvoke <org.apache.camel.util.ResolverHelper: org.apache.camel.spi.DataFormatFactory lookupDataFormatFactoryInRegistryWithFallback(org.apache.camel.CamelContext,java.lang.String,org.apache.camel.util.ResolverHelper$LookupExceptionHandler)>(v, v, v);
return v;
}
public static org.apache.camel.spi.DataFormatFactory lookupDataFormatFactoryInRegistryWithFallback(org.apache.camel.CamelContext, java.lang.String, org.apache.camel.util.ResolverHelper$LookupExceptionHandler)
{
org.apache.camel.CamelContext v;
org.slf4j.Logger v;
java.lang.String[] v;
org.apache.camel.util.ResolverHelper$LookupExceptionHandler v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v, v, v;
boolean v;
v := @parameter: org.apache.camel.CamelContext;
v := @parameter: java.lang.String;
v := @parameter: org.apache.camel.util.ResolverHelper$LookupExceptionHandler;
v = newarray (java.lang.String)[2];
v[0] = v;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(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[])>("\u0001-dataformat-factory");
v[1] = v;
v = staticinvoke <org.apache.camel.util.ResolverHelper: java.lang.Object lookupInRegistry(org.apache.camel.CamelContext,java.lang.Class,boolean,org.apache.camel.util.ResolverHelper$LookupExceptionHandler,java.lang.String[])>(v, class "Lorg/apache/camel/spi/DataFormatFactory;", 0, v, v);
v = v instanceof org.apache.camel.spi.DataFormatFactory;
if v == 0 goto label;
return v;
label:
if v == null goto label;
v = <org.apache.camel.util.ResolverHelper: org.slf4j.Logger LOG>;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Found DataFormatFactory with incompatible class: {}", v);
label:
return null;
}
public static org.apache.camel.spi.Language lookupLanguageInRegistryWithFallback(org.apache.camel.CamelContext, java.lang.String)
{
org.apache.camel.CamelContext v;
org.apache.camel.spi.Language v;
org.apache.camel.util.ResolverHelper$LookupExceptionHandler v;
java.lang.String v;
v := @parameter: org.apache.camel.CamelContext;
v := @parameter: java.lang.String;
v = <org.apache.camel.util.ResolverHelper: org.apache.camel.util.ResolverHelper$LookupExceptionHandler EXCEPTION_HANDLER>;
v = staticinvoke <org.apache.camel.util.ResolverHelper: org.apache.camel.spi.Language lookupLanguageInRegistryWithFallback(org.apache.camel.CamelContext,java.lang.String,org.apache.camel.util.ResolverHelper$LookupExceptionHandler)>(v, v, v);
return v;
}
public static org.apache.camel.spi.Language lookupLanguageInRegistryWithFallback(org.apache.camel.CamelContext, java.lang.String, org.apache.camel.util.ResolverHelper$LookupExceptionHandler)
{
org.apache.camel.CamelContext v;
org.slf4j.Logger v;
java.lang.String[] v;
org.apache.camel.util.ResolverHelper$LookupExceptionHandler v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v, v, v;
boolean v;
v := @parameter: org.apache.camel.CamelContext;
v := @parameter: java.lang.String;
v := @parameter: org.apache.camel.util.ResolverHelper$LookupExceptionHandler;
v = newarray (java.lang.String)[2];
v[0] = v;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(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[])>("\u0001-language");
v[1] = v;
v = staticinvoke <org.apache.camel.util.ResolverHelper: java.lang.Object lookupInRegistry(org.apache.camel.CamelContext,java.lang.Class,boolean,org.apache.camel.util.ResolverHelper$LookupExceptionHandler,java.lang.String[])>(v, class "Lorg/apache/camel/spi/Language;", 0, v, v);
v = v instanceof org.apache.camel.spi.Language;
if v == 0 goto label;
return v;
label:
if v == null goto label;
v = <org.apache.camel.util.ResolverHelper: org.slf4j.Logger LOG>;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Found Language with incompatible class: {}", v);
label:
return null;
}
private static transient java.lang.Object lookupInRegistry(org.apache.camel.CamelContext, java.lang.Class, boolean, org.apache.camel.util.ResolverHelper$LookupExceptionHandler, java.lang.String[])
{
java.lang.Object[] v;
java.lang.String[] v;
int v, v;
java.lang.String v, v;
boolean v;
org.apache.camel.CamelContext v;
org.slf4j.Logger v, v;
org.apache.camel.spi.Registry v, v;
org.apache.camel.util.ResolverHelper$LookupExceptionHandler v;
java.lang.Exception v;
java.lang.Class v;
java.lang.Object v;
v := @parameter: org.apache.camel.CamelContext;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
v := @parameter: org.apache.camel.util.ResolverHelper$LookupExceptionHandler;
v := @parameter: java.lang.String[];
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
label:
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.camel.CamelContext: org.apache.camel.spi.Registry getRegistry()>();
v = interfaceinvoke v.<org.apache.camel.spi.Registry: java.lang.Object lookupByNameAndType(java.lang.String,java.lang.Class)>(v, v);
goto label;
label:
v = interfaceinvoke v.<org.apache.camel.CamelContext: org.apache.camel.spi.Registry getRegistry()>();
v = interfaceinvoke v.<org.apache.camel.spi.Registry: java.lang.Object lookupByName(java.lang.String)>(v);
label:
v = <org.apache.camel.util.ResolverHelper: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v[0] = v;
v[1] = v;
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Lookup {} with name {} in registry. Found: {}", v);
if v == null goto label;
label:
return v;
label:
v := @caughtexception;
v = <org.apache.camel.util.ResolverHelper: org.slf4j.Logger LOG>;
virtualinvoke v.<org.apache.camel.util.ResolverHelper$LookupExceptionHandler: void handleException(java.lang.Exception,org.slf4j.Logger,java.lang.String)>(v, v, v);
label:
v = v + 1;
goto label;
label:
return null;
catch java.lang.Exception from label to label with label;
}
static void <clinit>()
{
org.apache.camel.util.ResolverHelper$LookupExceptionHandler v;
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/camel/util/ResolverHelper;");
<org.apache.camel.util.ResolverHelper: org.slf4j.Logger LOG> = v;
v = new org.apache.camel.util.ResolverHelper$LookupExceptionHandler;
specialinvoke v.<org.apache.camel.util.ResolverHelper$LookupExceptionHandler: void <init>()>();
<org.apache.camel.util.ResolverHelper: org.apache.camel.util.ResolverHelper$LookupExceptionHandler EXCEPTION_HANDLER> = v;
return;
}
}