public class org.apache.xbean.spring.jndi.SpringInitialContextFactory extends java.lang.Object implements javax.naming.spi.InitialContextFactory
{
private static final transient org.apache.commons.logging.Log log;
private static java.util.Map cache;
private static javax.naming.Context singleton;
public void <init>()
{
org.apache.xbean.spring.jndi.SpringInitialContextFactory v;
v := @this: org.apache.xbean.spring.jndi.SpringInitialContextFactory;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static javax.naming.Context makeInitialContext()
{
org.apache.xbean.spring.jndi.DefaultContext v;
javax.naming.Context v;
v = new org.apache.xbean.spring.jndi.DefaultContext;
specialinvoke v.<org.apache.xbean.spring.jndi.DefaultContext: void <init>()>();
<org.apache.xbean.spring.jndi.SpringInitialContextFactory: javax.naming.Context singleton> = v;
v = <org.apache.xbean.spring.jndi.SpringInitialContextFactory: javax.naming.Context singleton>;
return v;
}
public javax.naming.Context getInitialContext(java.util.Hashtable) throws javax.naming.NamingException
{
org.springframework.core.io.ResourceEditor v;
org.springframework.core.io.ClassPathResource v;
org.apache.xbean.spring.jndi.DefaultContext v;
java.lang.String v, v;
javax.naming.Context v, v;
java.util.Hashtable v;
boolean v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.xbean.spring.jndi.SpringInitialContextFactory v;
org.springframework.beans.factory.BeanFactory v;
java.lang.Object v, v, v;
org.apache.commons.logging.Log v;
v := @this: org.apache.xbean.spring.jndi.SpringInitialContextFactory;
v := @parameter: java.util.Hashtable;
v = <org.apache.xbean.spring.jndi.SpringInitialContextFactory: javax.naming.Context singleton>;
if v == null goto label;
v = <org.apache.xbean.spring.jndi.SpringInitialContextFactory: javax.naming.Context singleton>;
return v;
label:
v = virtualinvoke v.<java.util.Hashtable: java.lang.Object get(java.lang.Object)>("java.naming.provider.url");
v = "jndi.xml";
if v != null goto label;
v = new org.springframework.core.io.ClassPathResource;
specialinvoke v.<org.springframework.core.io.ClassPathResource: void <init>(java.lang.String)>("jndi.xml");
goto label;
label:
v = v instanceof org.springframework.core.io.Resource;
if v != 0 goto label;
v = new org.springframework.core.io.ResourceEditor;
specialinvoke v.<org.springframework.core.io.ResourceEditor: void <init>()>();
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
virtualinvoke v.<org.springframework.core.io.ResourceEditor: void setAsText(java.lang.String)>(v);
v = virtualinvoke v.<org.springframework.core.io.ResourceEditor: java.lang.Object getValue()>();
label:
v = virtualinvoke v.<org.apache.xbean.spring.jndi.SpringInitialContextFactory: org.springframework.beans.factory.BeanFactory loadContext(org.springframework.core.io.Resource,java.lang.String)>(v, v);
v = interfaceinvoke v.<org.springframework.beans.factory.BeanFactory: java.lang.Object getBean(java.lang.String)>("jndi");
if v != null goto label;
v = <org.apache.xbean.spring.jndi.SpringInitialContextFactory: org.apache.commons.logging.Log log>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Object)>(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[])>("No JNDI context available in JNDI resource: \u0001");
interfaceinvoke v.<org.apache.commons.logging.Log: void warn(java.lang.Object)>(v);
v = new org.apache.xbean.spring.jndi.DefaultContext;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
specialinvoke v.<org.apache.xbean.spring.jndi.DefaultContext: void <init>(java.util.Hashtable,java.util.Map)>(v, v);
v = v;
label:
return v;
}
protected org.springframework.beans.factory.BeanFactory loadContext(org.springframework.core.io.Resource, java.lang.String)
{
java.lang.Throwable v;
org.apache.xbean.spring.jndi.SpringInitialContextFactory v;
java.util.Map v, v, v;
java.lang.Object v;
java.lang.String v;
org.springframework.core.io.Resource v;
v := @this: org.apache.xbean.spring.jndi.SpringInitialContextFactory;
v := @parameter: org.springframework.core.io.Resource;
v := @parameter: java.lang.String;
v = <org.apache.xbean.spring.jndi.SpringInitialContextFactory: java.util.Map cache>;
entermonitor v;
label:
v = <org.apache.xbean.spring.jndi.SpringInitialContextFactory: java.util.Map cache>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = virtualinvoke v.<org.apache.xbean.spring.jndi.SpringInitialContextFactory: org.springframework.beans.factory.BeanFactory createContext(org.springframework.core.io.Resource)>(v);
v = <org.apache.xbean.spring.jndi.SpringInitialContextFactory: java.util.Map cache>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
}
protected org.springframework.beans.factory.BeanFactory createContext(org.springframework.core.io.Resource)
{
org.apache.xbean.spring.jndi.SpringInitialContextFactory v;
org.apache.commons.logging.Log v;
java.lang.String v;
org.apache.xbean.spring.context.impl.XBeanXmlBeanFactory v;
org.springframework.core.io.Resource v;
v := @this: org.apache.xbean.spring.jndi.SpringInitialContextFactory;
v := @parameter: org.springframework.core.io.Resource;
v = <org.apache.xbean.spring.jndi.SpringInitialContextFactory: org.apache.commons.logging.Log log>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.springframework.core.io.Resource)>(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[])>("Loading JNDI context from: \u0001");
interfaceinvoke v.<org.apache.commons.logging.Log: void info(java.lang.Object)>(v);
v = new org.apache.xbean.spring.context.impl.XBeanXmlBeanFactory;
specialinvoke v.<org.apache.xbean.spring.context.impl.XBeanXmlBeanFactory: void <init>(org.springframework.core.io.Resource)>(v);
return v;
}
static void <clinit>()
{
java.util.HashMap v;
org.apache.commons.logging.Log v;
v = staticinvoke <org.apache.commons.logging.LogFactory: org.apache.commons.logging.Log getLog(java.lang.Class)>(class "Lorg/apache/xbean/spring/jndi/SpringInitialContextFactory;");
<org.apache.xbean.spring.jndi.SpringInitialContextFactory: org.apache.commons.logging.Log log> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
<org.apache.xbean.spring.jndi.SpringInitialContextFactory: java.util.Map cache> = v;
return;
}
}