public class org.glassfish.concurrent.runtime.ConcurrentRuntime extends java.lang.Object
{
private static final java.util.logging.Logger LOG;
private static org.glassfish.concurrent.runtime.ConcurrentRuntime singletonInstance;
private final java.util.Map managedExecutorServiceMap;
private final java.util.Map managedScheduledExecutorServiceMap;
private final java.util.Map contextServiceMap;
private final java.util.Map managedThreadFactoryMap;
private java.util.concurrent.ScheduledExecutorService internalScheduler;
private org.glassfish.api.invocation.InvocationManager invocationManager;
private org.glassfish.internal.deployment.Deployment deployment;
private com.sun.enterprise.config.serverbeans.Applications applications;
private com.sun.enterprise.transaction.api.JavaEETransactionManager transactionManager;
private org.glassfish.internal.data.ApplicationRegistry applicationRegistry;
private org.glassfish.resourcebase.resources.naming.ResourceNamingService resourceNamingService;
public static org.glassfish.concurrent.runtime.ConcurrentRuntime getRuntime()
{
java.lang.RuntimeException v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v, v;
v = <org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.concurrent.runtime.ConcurrentRuntime singletonInstance>;
if v != null goto label;
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String)>("ConcurrentRuntime not initialized");
throw v;
label:
v = <org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.concurrent.runtime.ConcurrentRuntime singletonInstance>;
return v;
}
void <init>()
{
java.util.HashMap v, v, v, v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedExecutorServiceMap> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedScheduledExecutorServiceMap> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map contextServiceMap> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedThreadFactoryMap> = v;
<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.concurrent.runtime.ConcurrentRuntime singletonInstance> = v;
return;
}
org.glassfish.api.invocation.InvocationManager getInvocationManager()
{
org.glassfish.api.invocation.InvocationManager v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.api.invocation.InvocationManager invocationManager>;
return v;
}
org.glassfish.internal.deployment.Deployment getDeployment()
{
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
org.glassfish.internal.deployment.Deployment v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.internal.deployment.Deployment deployment>;
return v;
}
com.sun.enterprise.config.serverbeans.Applications getApplications()
{
com.sun.enterprise.config.serverbeans.Applications v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: com.sun.enterprise.config.serverbeans.Applications applications>;
return v;
}
com.sun.enterprise.transaction.api.JavaEETransactionManager getTransactionManager()
{
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
com.sun.enterprise.transaction.api.JavaEETransactionManager v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: com.sun.enterprise.transaction.api.JavaEETransactionManager transactionManager>;
return v;
}
org.glassfish.internal.data.ApplicationRegistry getApplicationRegistry()
{
org.glassfish.internal.data.ApplicationRegistry v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.internal.data.ApplicationRegistry applicationRegistry>;
return v;
}
public synchronized org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl getManagedExecutorService(org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg)
{
org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg v;
org.glassfish.enterprise.concurrent.ContextServiceImpl v;
java.util.logging.Logger v;
java.util.logging.Level v;
org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v, v;
java.util.Map v, v, v, v;
java.lang.Object v;
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
boolean v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg;
v = <org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.logging.Logger LOG>;
v = <java.util.logging.Level: java.util.logging.Level FINEST>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Object)>(v, "getManagedExecutorService(config={0})", v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: org.glassfish.api.naming.SimpleJndiName getJndiName()>();
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedExecutorServiceMap>;
if v == null goto label;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedExecutorServiceMap>;
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedExecutorServiceMap>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
label:
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ContextServiceImpl getContextService(org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg,boolean)>(v, 1);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl createManagedExecutorService(org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg,org.glassfish.enterprise.concurrent.ContextServiceImpl)>(v, v);
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedExecutorServiceMap>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
public synchronized org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl createManagedExecutorService(org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg, org.glassfish.enterprise.concurrent.ContextServiceImpl)
{
java.lang.Object[] v;
org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory v;
long v, v, v, v, v;
java.util.logging.Level v;
byte v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v;
int v, v, v, v, v, v;
java.lang.String v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
boolean v, v, v;
org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg v;
org.glassfish.enterprise.concurrent.ContextServiceImpl v;
java.util.logging.Logger v;
java.util.concurrent.TimeUnit v;
org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl v;
org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy v;
org.glassfish.api.naming.SimpleJndiName v, v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg;
v := @parameter: org.glassfish.enterprise.concurrent.ContextServiceImpl;
v = <org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.logging.Logger LOG>;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
v = newarray (java.lang.Object)[2];
v[0] = v;
v[1] = v;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Object[])>(v, "createManagedExecutorService(config={0}, contextService={1})", v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: org.glassfish.api.naming.SimpleJndiName getJndiName()>();
v = new org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory;
v = staticinvoke <org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.api.naming.SimpleJndiName toManagedThreadFactoryName(org.glassfish.api.naming.SimpleJndiName)>(v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: int getThreadPriority()>();
specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory: void <init>(org.glassfish.api.naming.SimpleJndiName,org.glassfish.enterprise.concurrent.ContextServiceImpl,int)>(v, null, v);
v = new org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl;
v = virtualinvoke v.<org.glassfish.api.naming.SimpleJndiName: java.lang.String toString()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: int getHungAfterSeconds()>();
v = v * 1000L;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: boolean isLongRunningTasks()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: int getCorePoolSize()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: int getMaximumPoolSize()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: long getKeepAliveSeconds()>();
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: long getThreadLifeTimeSeconds()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: int getTaskQueueCapacity()>();
v = <org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy: org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy ABORT>;
specialinvoke v.<org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl: void <init>(java.lang.String,org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl,long,boolean,int,int,long,java.util.concurrent.TimeUnit,long,int,org.glassfish.enterprise.concurrent.ContextServiceImpl,org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy)>(v, v, v, v, v, v, v, v, v, v, v, v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: int getHungAfterSeconds()>();
v = v cmp 0L;
if v <= 0 goto label;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: boolean isLongRunningTasks()>();
if v != 0 goto label;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: long getHungLoggerInitialDelaySeconds()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: long getHungLoggerIntervalSeconds()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedExecutorServiceCfg: boolean isHungLoggerPrintOnce()>();
specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: void scheduleInternalTimer(long,long,boolean)>(v, v, v);
label:
return v;
}
public synchronized org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl getManagedScheduledExecutorService(org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg)
{
org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg v;
long v, v;
java.util.logging.Level v;
byte v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v, v;
java.util.Map v, v, v, v;
int v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
boolean v, v, v;
org.glassfish.enterprise.concurrent.ContextServiceImpl v;
org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl v;
java.util.logging.Logger v;
java.lang.Object v;
org.glassfish.api.naming.SimpleJndiName v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg;
v = <org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.logging.Logger LOG>;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Object)>(v, "getManagedScheduledExecutorService(config={0})", v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: org.glassfish.api.naming.SimpleJndiName getJndiName()>();
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedScheduledExecutorServiceMap>;
if v == null goto label;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedScheduledExecutorServiceMap>;
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedScheduledExecutorServiceMap>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
label:
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ContextServiceImpl getContextService(org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg,boolean)>(v, 1);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl createManagedScheduledExecutorService(org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg,org.glassfish.enterprise.concurrent.ContextServiceImpl)>(v, v);
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedScheduledExecutorServiceMap>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: int getHungAfterSeconds()>();
v = v cmp 0L;
if v <= 0 goto label;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: boolean isLongRunningTasks()>();
if v != 0 goto label;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: long getHungLoggerInitialDelaySeconds()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: long getHungLoggerIntervalSeconds()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: boolean isHungLoggerPrintOnce()>();
specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: void scheduleInternalTimer(long,long,boolean)>(v, v, v);
label:
return v;
}
public org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl createManagedScheduledExecutorService(org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg, org.glassfish.enterprise.concurrent.ContextServiceImpl)
{
org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg v;
org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory v;
long v, v, v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v;
int v, v, v;
java.lang.String v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
boolean v;
org.glassfish.enterprise.concurrent.ContextServiceImpl v;
org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl v;
java.util.concurrent.TimeUnit v;
org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy v;
org.glassfish.api.naming.SimpleJndiName v, v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg;
v := @parameter: org.glassfish.enterprise.concurrent.ContextServiceImpl;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: org.glassfish.api.naming.SimpleJndiName getJndiName()>();
v = new org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory;
v = staticinvoke <org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.api.naming.SimpleJndiName toManagedThreadFactoryName(org.glassfish.api.naming.SimpleJndiName)>(v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: int getThreadPriority()>();
specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory: void <init>(org.glassfish.api.naming.SimpleJndiName,org.glassfish.enterprise.concurrent.ContextServiceImpl,int)>(v, null, v);
v = new org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl;
v = virtualinvoke v.<org.glassfish.api.naming.SimpleJndiName: java.lang.String toString()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: int getHungAfterSeconds()>();
v = v * 1000L;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: boolean isLongRunningTasks()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: int getCorePoolSize()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: long getKeepAliveSeconds()>();
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedScheduledExecutorServiceCfg: long getThreadLifeTimeSeconds()>();
v = <org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy: org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy ABORT>;
specialinvoke v.<org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl: void <init>(java.lang.String,org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl,long,boolean,int,long,java.util.concurrent.TimeUnit,long,org.glassfish.enterprise.concurrent.ContextServiceImpl,org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy)>(v, v, v, v, v, v, v, v, v, v);
return v;
}
public synchronized org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl getManagedThreadFactory(org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg)
{
org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory v;
org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg v;
org.glassfish.enterprise.concurrent.ContextServiceImpl v;
java.util.logging.Logger v;
java.util.logging.Level v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v, v;
java.util.Map v, v, v, v;
java.lang.Object v;
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
boolean v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg;
v = <org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.logging.Logger LOG>;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Object)>(v, "getManagedThreadFactory(config={0})", v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: org.glassfish.api.naming.SimpleJndiName getJndiName()>();
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedThreadFactoryMap>;
if v == null goto label;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedThreadFactoryMap>;
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedThreadFactoryMap>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
label:
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ContextServiceImpl getContextService(org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg,boolean)>(v, 1);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory createManagedThreadFactory(org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg,org.glassfish.enterprise.concurrent.ContextServiceImpl)>(v, v);
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedThreadFactoryMap>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
public org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory createManagedThreadFactory(org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg, org.glassfish.enterprise.concurrent.ContextServiceImpl)
{
org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory v;
org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v;
org.glassfish.enterprise.concurrent.ContextServiceImpl v;
int v;
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg;
v := @parameter: org.glassfish.enterprise.concurrent.ContextServiceImpl;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: org.glassfish.api.naming.SimpleJndiName getJndiName()>();
v = new org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ManagedThreadFactoryCfg: int getThreadPriority()>();
specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory: void <init>(org.glassfish.api.naming.SimpleJndiName,org.glassfish.enterprise.concurrent.ContextServiceImpl,int)>(v, v, v);
return v;
}
public org.glassfish.enterprise.concurrent.ContextServiceImpl findOrCreateContextService(com.sun.enterprise.deployment.'annotation'.handlers.ContextualResourceDefinition, java.lang.String, java.lang.String)
{
java.lang.Object[] v;
com.sun.enterprise.deployment.types.StandardContextType v, v, v, v;
java.util.function.Function v;
java.util.logging.Level v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v;
java.util.Map v;
java.lang.String v, v, v, v;
org.glassfish.resourcebase.resources.api.ResourceInfo v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
org.glassfish.enterprise.concurrent.ContextServiceImpl v, v;
java.util.Set v;
java.util.logging.Logger v;
com.sun.enterprise.deployment.'annotation'.handlers.ContextualResourceDefinition v;
java.lang.Object v;
org.glassfish.api.naming.SimpleJndiName v, v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: com.sun.enterprise.deployment.'annotation'.handlers.ContextualResourceDefinition;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = interfaceinvoke v.<com.sun.enterprise.deployment.'annotation'.handlers.ContextualResourceDefinition: java.lang.String getContext()>();
v = interfaceinvoke v.<com.sun.enterprise.deployment.'annotation'.handlers.ContextualResourceDefinition: org.glassfish.api.naming.SimpleJndiName getJndiName()>();
v = staticinvoke <org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.api.naming.SimpleJndiName toContextServiceName(java.lang.String,org.glassfish.api.naming.SimpleJndiName)>(v, v);
v = <org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.logging.Logger LOG>;
v = <java.util.logging.Level: java.util.logging.Level FINEST>;
v = newarray (java.lang.Object)[3];
v[0] = v;
v[1] = v;
v[2] = v;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Object[])>(v, "findOrCreateContextService(jndiName={0}, applicationName={1}, moduleName={2})", v);
v = new org.glassfish.resourcebase.resources.api.ResourceInfo;
specialinvoke v.<org.glassfish.resourcebase.resources.api.ResourceInfo: void <init>(org.glassfish.api.naming.SimpleJndiName,java.lang.String,java.lang.String)>(v, v, v);
v = specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ContextServiceImpl lookup(org.glassfish.resourcebase.resources.api.GenericResourceInfo,org.glassfish.api.naming.SimpleJndiName)>(v, v);
if v == null goto label;
return v;
label:
v = interfaceinvoke v.<com.sun.enterprise.deployment.'annotation'.handlers.ContextualResourceDefinition: java.lang.String getContext()>();
v = specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ContextServiceImpl lookup(java.lang.String)>(v);
if v == null goto label;
return v;
label:
v = <com.sun.enterprise.deployment.types.StandardContextType: com.sun.enterprise.deployment.types.StandardContextType Classloader>;
v = <com.sun.enterprise.deployment.types.StandardContextType: com.sun.enterprise.deployment.types.StandardContextType JNDI>;
v = <com.sun.enterprise.deployment.types.StandardContextType: com.sun.enterprise.deployment.types.StandardContextType Security>;
v = <com.sun.enterprise.deployment.types.StandardContextType: com.sun.enterprise.deployment.types.StandardContextType WorkArea>;
v = staticinvoke <java.util.Set: java.util.Set of(java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)>(v, v, v, v);
v = new org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg;
specialinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: void <init>(org.glassfish.api.naming.SimpleJndiName,java.util.Set)>(v, v);
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map contextServiceMap>;
v = staticinvoke <org.glassfish.concurrent.runtime.ConcurrentRuntime$lambda_findOrCreateContextService_0__7: java.util.function.Function bootstrap$(org.glassfish.concurrent.runtime.ConcurrentRuntime,org.glassfish.api.naming.SimpleJndiName,org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg)>(v, v, v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
return v;
}
public synchronized org.glassfish.enterprise.concurrent.ContextServiceImpl getContextService(org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg)
{
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v;
java.util.Map v;
org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg v;
java.lang.Object v;
org.glassfish.api.naming.SimpleJndiName v;
java.util.function.Function v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map contextServiceMap>;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: org.glassfish.api.naming.SimpleJndiName getJndiName()>();
v = staticinvoke <org.glassfish.concurrent.runtime.ConcurrentRuntime$lambda_getContextService_1__8: java.util.function.Function bootstrap$(org.glassfish.concurrent.runtime.ConcurrentRuntime,org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg)>(v, v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
return v;
}
public synchronized org.glassfish.enterprise.concurrent.ContextServiceImpl createContextService(org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg)
{
com.sun.enterprise.deployment.types.StandardContextType v, v;
java.util.logging.Level v;
org.glassfish.enterprise.concurrent.spi.TransactionSetupProvider v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v;
org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg v;
org.glassfish.concurrent.runtime.ContextSetupProviderImpl v;
java.lang.String v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
boolean v, v;
org.glassfish.enterprise.concurrent.ContextServiceImpl v;
java.util.Set v, v, v, v, v;
java.util.logging.Logger v;
org.glassfish.api.naming.SimpleJndiName v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg;
v = <org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.logging.Logger LOG>;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Object)>(v, "createContextService(config={0})", v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg: java.util.Set getUnchangedContexts()>();
v = <com.sun.enterprise.deployment.types.StandardContextType: com.sun.enterprise.deployment.types.StandardContextType WorkArea>;
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg: java.util.Set getClearedContexts()>();
v = <com.sun.enterprise.deployment.types.StandardContextType: com.sun.enterprise.deployment.types.StandardContextType WorkArea>;
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
v = specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.spi.TransactionSetupProvider createTxSetupProvider(boolean,boolean)>(v, v);
v = new org.glassfish.concurrent.runtime.ContextSetupProviderImpl;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg: java.util.Set getPropagatedContexts()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg: java.util.Set getClearedContexts()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg: java.util.Set getUnchangedContexts()>();
specialinvoke v.<org.glassfish.concurrent.runtime.ContextSetupProviderImpl: void <init>(java.util.Set,java.util.Set,java.util.Set)>(v, v, v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ContextServiceCfg: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg getServiceConfig()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: org.glassfish.api.naming.SimpleJndiName getJndiName()>();
v = new org.glassfish.enterprise.concurrent.ContextServiceImpl;
v = virtualinvoke v.<org.glassfish.api.naming.SimpleJndiName: java.lang.String toString()>();
specialinvoke v.<org.glassfish.enterprise.concurrent.ContextServiceImpl: void <init>(java.lang.String,org.glassfish.enterprise.concurrent.spi.ContextSetupProvider,org.glassfish.enterprise.concurrent.spi.TransactionSetupProvider)>(v, v, v);
return v;
}
public synchronized org.glassfish.enterprise.concurrent.ContextServiceImpl getContextService(org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg, boolean)
{
java.util.function.Function v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v;
java.util.Map v;
java.lang.Object v;
org.glassfish.api.naming.SimpleJndiName v, v;
java.lang.String v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
boolean v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg;
v := @parameter: boolean;
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: java.lang.String getContext()>();
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: org.glassfish.api.naming.SimpleJndiName getJndiName()>();
v = staticinvoke <org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.api.naming.SimpleJndiName toContextServiceName(java.lang.String,org.glassfish.api.naming.SimpleJndiName)>(v, v);
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map contextServiceMap>;
v = staticinvoke <org.glassfish.concurrent.runtime.ConcurrentRuntime$lambda_getContextService_2__9: java.util.function.Function bootstrap$(org.glassfish.concurrent.runtime.ConcurrentRuntime,org.glassfish.api.naming.SimpleJndiName,org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg,boolean)>(v, v, v, v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
return v;
}
public void shutdownManagedExecutorService(org.glassfish.api.naming.SimpleJndiName)
{
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
v = specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl removeManagedExecutorService(org.glassfish.api.naming.SimpleJndiName)>(v);
if v == null goto label;
virtualinvoke v.<org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl: java.util.List shutdownNow()>();
label:
return;
}
public void shutdownScheduledManagedExecutorService(org.glassfish.api.naming.SimpleJndiName)
{
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
v = specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl removeManagedScheduledExecutorService(org.glassfish.api.naming.SimpleJndiName)>(v);
if v == null goto label;
virtualinvoke v.<org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl: java.util.List shutdownNow()>();
label:
return;
}
public void shutdownManagedThreadFactory(org.glassfish.api.naming.SimpleJndiName)
{
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
v = specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl removeManagedThreadFactory(org.glassfish.api.naming.SimpleJndiName)>(v);
if v == null goto label;
virtualinvoke v.<org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl: void stop()>();
label:
return;
}
public synchronized void shutdownContextService(org.glassfish.api.naming.SimpleJndiName)
{
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
java.util.Map v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map contextServiceMap>;
interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>(v);
return;
}
private org.glassfish.enterprise.concurrent.ContextServiceImpl createContextService(org.glassfish.api.naming.SimpleJndiName, org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg, boolean)
{
java.lang.Object[] v;
com.sun.enterprise.deployment.types.StandardContextType v, v;
java.util.logging.Level v;
org.glassfish.enterprise.concurrent.spi.TransactionSetupProvider v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v;
java.lang.Boolean v;
org.glassfish.concurrent.runtime.ContextSetupProviderImpl v;
java.lang.String v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
boolean v, v, v;
org.glassfish.enterprise.concurrent.ContextServiceImpl v;
java.util.Set v, v, v;
java.util.logging.Logger v;
org.glassfish.api.naming.SimpleJndiName v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
v := @parameter: org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg;
v := @parameter: boolean;
v = <org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.logging.Logger LOG>;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
v = newarray (java.lang.Object)[3];
v[0] = v;
v[1] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
v[2] = v;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Object[])>(v, "createContextService(contextServiceJndiName={0}, config={1}, cleanupTransaction={2})", v);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: java.util.Set getContextInfo()>();
if v == 0 goto label;
v = <com.sun.enterprise.deployment.types.StandardContextType: com.sun.enterprise.deployment.types.StandardContextType WorkArea>;
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
v = <com.sun.enterprise.deployment.types.StandardContextType: com.sun.enterprise.deployment.types.StandardContextType WorkArea>;
v = staticinvoke <java.util.Set: java.util.Set of(java.lang.Object)>(v);
v = 1;
goto label;
label:
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
v = 0;
label:
v = specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.spi.TransactionSetupProvider createTxSetupProvider(boolean,boolean)>(0, v);
v = new org.glassfish.concurrent.runtime.ContextSetupProviderImpl;
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
specialinvoke v.<org.glassfish.concurrent.runtime.ContextSetupProviderImpl: void <init>(java.util.Set,java.util.Set,java.util.Set)>(v, v, v);
v = new org.glassfish.enterprise.concurrent.ContextServiceImpl;
v = virtualinvoke v.<org.glassfish.api.naming.SimpleJndiName: java.lang.String toString()>();
specialinvoke v.<org.glassfish.enterprise.concurrent.ContextServiceImpl: void <init>(java.lang.String,org.glassfish.enterprise.concurrent.spi.ContextSetupProvider,org.glassfish.enterprise.concurrent.spi.TransactionSetupProvider)>(v, v, v);
return v;
}
private void scheduleInternalTimer(long, long, boolean)
{
org.glassfish.concurrent.runtime.ConcurrentRuntime$HungTasksLogger v;
org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory v;
long v, v;
com.sun.enterprise.deployment.types.StandardContextType v;
org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg v;
java.util.concurrent.ScheduledExecutorService v, v;
java.lang.Boolean v;
java.lang.String v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
boolean v;
org.glassfish.enterprise.concurrent.ContextServiceImpl v;
org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl v;
java.util.concurrent.TimeUnit v, v;
org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy v;
org.glassfish.api.naming.SimpleJndiName v, v, v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: long;
v := @parameter: long;
v := @parameter: boolean;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.concurrent.ScheduledExecutorService internalScheduler>;
if v == null goto label;
return;
label:
v = new org.glassfish.api.naming.SimpleJndiName;
specialinvoke v.<org.glassfish.api.naming.SimpleJndiName: void <init>(java.lang.String)>("Glassfish-Internal");
v = new org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory;
v = staticinvoke <org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.api.naming.SimpleJndiName toManagedThreadFactoryName(org.glassfish.api.naming.SimpleJndiName)>(v);
specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime$GlassFishManagedThreadFactory: void <init>(org.glassfish.api.naming.SimpleJndiName,org.glassfish.enterprise.concurrent.ContextServiceImpl,int)>(v, null, 5);
v = new org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg;
v = staticinvoke <org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.api.naming.SimpleJndiName toContextServiceName(org.glassfish.api.naming.SimpleJndiName)>(v);
v = <com.sun.enterprise.deployment.types.StandardContextType: com.sun.enterprise.deployment.types.StandardContextType Classloader>;
specialinvoke v.<org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg: void <init>(org.glassfish.api.naming.SimpleJndiName,com.sun.enterprise.deployment.types.StandardContextType,java.lang.String)>(v, v, null);
v = virtualinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.enterprise.concurrent.ContextServiceImpl getContextService(org.glassfish.concurrent.runtime.deployer.cfg.ConcurrentServiceCfg,boolean)>(v, 0);
v = new org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl;
v = virtualinvoke v.<org.glassfish.api.naming.SimpleJndiName: java.lang.String toString()>();
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
v = <org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy: org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy ABORT>;
specialinvoke v.<org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl: void <init>(java.lang.String,org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl,long,boolean,int,long,java.util.concurrent.TimeUnit,long,org.glassfish.enterprise.concurrent.ContextServiceImpl,org.glassfish.enterprise.concurrent.AbstractManagedExecutorService$RejectPolicy)>(v, v, 0L, 0, 1, 60L, v, 0L, v, v);
v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.concurrent.ScheduledExecutorService internalScheduler> = v;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.concurrent.ScheduledExecutorService internalScheduler>;
v = new org.glassfish.concurrent.runtime.ConcurrentRuntime$HungTasksLogger;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
specialinvoke v.<org.glassfish.concurrent.runtime.ConcurrentRuntime$HungTasksLogger: void <init>(org.glassfish.concurrent.runtime.ConcurrentRuntime,java.lang.Boolean)>(v, v);
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
interfaceinvoke v.<java.util.concurrent.ScheduledExecutorService: java.util.concurrent.ScheduledFuture scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)>(v, v, v, v);
return;
}
private org.glassfish.enterprise.concurrent.spi.TransactionSetupProvider createTxSetupProvider(boolean, boolean)
{
com.sun.enterprise.transaction.api.JavaEETransactionManager v;
org.glassfish.concurrent.runtime.TransactionSetupProviderImpl v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
boolean v, v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: boolean;
v := @parameter: boolean;
v = new org.glassfish.concurrent.runtime.TransactionSetupProviderImpl;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: com.sun.enterprise.transaction.api.JavaEETransactionManager transactionManager>;
specialinvoke v.<org.glassfish.concurrent.runtime.TransactionSetupProviderImpl: void <init>(com.sun.enterprise.transaction.api.JavaEETransactionManager,boolean,boolean)>(v, v, v);
return v;
}
private org.glassfish.enterprise.concurrent.ContextServiceImpl lookup(org.glassfish.resourcebase.resources.api.GenericResourceInfo, org.glassfish.api.naming.SimpleJndiName)
{
org.glassfish.resourcebase.resources.naming.ResourceNamingService v;
java.lang.Object v;
org.glassfish.api.naming.SimpleJndiName v;
javax.naming.NamingException v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
org.glassfish.resourcebase.resources.api.GenericResourceInfo v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.resourcebase.resources.api.GenericResourceInfo;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
label:
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.resourcebase.resources.naming.ResourceNamingService resourceNamingService>;
v = virtualinvoke v.<org.glassfish.resourcebase.resources.naming.ResourceNamingService: java.lang.Object lookup(org.glassfish.resourcebase.resources.api.GenericResourceInfo,org.glassfish.api.naming.SimpleJndiName)>(v, v);
label:
return v;
label:
v := @caughtexception;
return null;
catch javax.naming.NamingException from label to label with label;
}
private org.glassfish.enterprise.concurrent.ContextServiceImpl lookup(java.lang.String)
{
java.lang.Object v;
java.lang.String v;
java.util.logging.Logger v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
java.lang.Exception v;
java.util.logging.Level v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: java.lang.String;
v = <org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.logging.Logger LOG>;
v = <java.util.logging.Level: java.util.logging.Level FINEST>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Object)>(v, "lookup(jndiName={0})", v);
label:
v = staticinvoke <javax.naming.InitialContext: java.lang.Object doLookup(java.lang.String)>(v);
label:
return v;
label:
v := @caughtexception;
return null;
catch java.lang.Exception from label to label with label;
}
private synchronized org.glassfish.enterprise.concurrent.ManagedExecutorServiceImpl removeManagedExecutorService(org.glassfish.api.naming.SimpleJndiName)
{
java.util.Map v;
java.lang.Object v;
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedExecutorServiceMap>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>(v);
return v;
}
private synchronized org.glassfish.enterprise.concurrent.ManagedScheduledExecutorServiceImpl removeManagedScheduledExecutorService(org.glassfish.api.naming.SimpleJndiName)
{
java.util.Map v;
java.lang.Object v;
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedScheduledExecutorServiceMap>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>(v);
return v;
}
private synchronized org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl removeManagedThreadFactory(org.glassfish.api.naming.SimpleJndiName)
{
java.util.Map v;
java.lang.Object v;
org.glassfish.api.naming.SimpleJndiName v;
org.glassfish.concurrent.runtime.ConcurrentRuntime v;
v := @this: org.glassfish.concurrent.runtime.ConcurrentRuntime;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
v = v.<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.Map managedThreadFactoryMap>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>(v);
return v;
}
private static org.glassfish.api.naming.SimpleJndiName toContextServiceName(java.lang.String, org.glassfish.api.naming.SimpleJndiName)
{
org.glassfish.api.naming.SimpleJndiName v, v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
if v != null goto label;
v = staticinvoke <org.glassfish.concurrent.runtime.ConcurrentRuntime: org.glassfish.api.naming.SimpleJndiName toContextServiceName(org.glassfish.api.naming.SimpleJndiName)>(v);
goto label;
label:
v = new org.glassfish.api.naming.SimpleJndiName;
specialinvoke v.<org.glassfish.api.naming.SimpleJndiName: void <init>(java.lang.String)>(v);
label:
return v;
}
private static org.glassfish.api.naming.SimpleJndiName toContextServiceName(org.glassfish.api.naming.SimpleJndiName)
{
org.glassfish.api.naming.SimpleJndiName v, v;
java.lang.String v;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
v = new org.glassfish.api.naming.SimpleJndiName;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.api.naming.SimpleJndiName)>(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-ContextService");
specialinvoke v.<org.glassfish.api.naming.SimpleJndiName: void <init>(java.lang.String)>(v);
return v;
}
private static org.glassfish.api.naming.SimpleJndiName toManagedThreadFactoryName(org.glassfish.api.naming.SimpleJndiName)
{
org.glassfish.api.naming.SimpleJndiName v, v;
java.lang.String v;
v := @parameter: org.glassfish.api.naming.SimpleJndiName;
v = new org.glassfish.api.naming.SimpleJndiName;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.api.naming.SimpleJndiName)>(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-ManagedThreadFactory");
specialinvoke v.<org.glassfish.api.naming.SimpleJndiName: void <init>(java.lang.String)>(v);
return v;
}
static void <clinit>()
{
java.util.logging.Logger v;
v = staticinvoke <org.glassfish.concurrent.runtime.LogFacade: java.util.logging.Logger getLogger()>();
<org.glassfish.concurrent.runtime.ConcurrentRuntime: java.util.logging.Logger LOG> = v;
return;
}
}