public class org.glassfish.webservices.metroglue.MetroContainer extends java.lang.Object implements org.glassfish.hk.api.PostConstruct, org.glassfish.api.container.Container, org.glassfish.webservices.WebServiceDeploymentListener
{
private static final java.util.logging.Logger logger;
private static final java.util.ResourceBundle rb;
private static final java.lang.String WSTX_SERVICES_APP_NAME;
private static final java.lang.String METRO_APPS_INSTALL_ROOT;
private static final java.lang.Object lock;
private final java.util.concurrent.atomic.AtomicBoolean wstxServicesDeployed;
private final java.util.concurrent.atomic.AtomicBoolean wstxServicesDeploying;
private org.glassfish.hk.api.ServiceLocator habitat;
private org.glassfish.internal.api.ServerContext serverContext;
private org.glassfish.server.ServerEnvironmentImpl env;
private com.sun.enterprise.transaction.api.RecoveryResourceRegistry recoveryRegistry;
com.sun.enterprise.transaction.api.JavaEETransactionManager txManager;
org.glassfish.gms.bootstrap.GMSAdapterService gmsAdapterService;
private com.sun.enterprise.config.serverbeans.AvailabilityService availabilityService;
private com.sun.enterprise.config.serverbeans.SecurityService secService;
public void <init>()
{
java.util.concurrent.atomic.AtomicBoolean v, v;
org.glassfish.webservices.metroglue.MetroContainer v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<org.glassfish.webservices.metroglue.MetroContainer: java.util.concurrent.atomic.AtomicBoolean wstxServicesDeployed> = v;
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<org.glassfish.webservices.metroglue.MetroContainer: java.util.concurrent.atomic.AtomicBoolean wstxServicesDeploying> = v;
return;
}
public void postConstruct()
{
long v;
org.glassfish.gms.bootstrap.GMSAdapterService v, v;
org.jvnet.hk.config.types.Property v;
com.sun.xml.ws.api.ha.HighAvailabilityProvider v;
java.lang.String v, v, v;
boolean v, v;
com.sun.enterprise.config.serverbeans.SecurityService v;
com.sun.xml.wss.impl.config.SecurityConfigProvider v;
org.glassfish.webservices.metroglue.MetroContainer v;
org.glassfish.webservices.WebServiceDeploymentNotifier v;
java.util.logging.Logger v, v;
org.glassfish.gms.bootstrap.GMSAdapter v, v;
com.sun.enterprise.ee.cms.core.GroupManagementService v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v = staticinvoke <org.glassfish.webservices.WebServicesDeployer: org.glassfish.webservices.WebServiceDeploymentNotifier getDeploymentNotifier()>();
interfaceinvoke v.<org.glassfish.webservices.WebServiceDeploymentNotifier: void addListener(org.glassfish.webservices.WebServiceDeploymentListener)>(v);
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
virtualinvoke v.<java.util.logging.Logger: void info(java.lang.String)>("AS-WSMETROGLUE-10010");
v = specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: boolean isCluster()>();
if v == 0 goto label;
v = specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: boolean isHaEnabled()>();
if v == 0 goto label;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.gms.bootstrap.GMSAdapterService gmsAdapterService>;
v = virtualinvoke v.<org.glassfish.gms.bootstrap.GMSAdapterService: org.glassfish.gms.bootstrap.GMSAdapter getGMSAdapter()>();
v = interfaceinvoke v.<org.glassfish.gms.bootstrap.GMSAdapter: java.lang.String getClusterName()>();
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.gms.bootstrap.GMSAdapterService gmsAdapterService>;
v = virtualinvoke v.<org.glassfish.gms.bootstrap.GMSAdapterService: org.glassfish.gms.bootstrap.GMSAdapter getGMSAdapter()>();
v = interfaceinvoke v.<org.glassfish.gms.bootstrap.GMSAdapter: com.sun.enterprise.ee.cms.core.GroupManagementService getModule()>();
v = interfaceinvoke v.<com.sun.enterprise.ee.cms.core.GroupManagementService: java.lang.String getInstanceName()>();
v = <com.sun.xml.ws.api.ha.HighAvailabilityProvider: com.sun.xml.ws.api.ha.HighAvailabilityProvider INSTANCE>;
virtualinvoke v.<com.sun.xml.ws.api.ha.HighAvailabilityProvider: void initHaEnvironment(java.lang.String,java.lang.String)>(v, v);
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
virtualinvoke v.<java.util.logging.Logger: void info(java.lang.String)>("AS-WSMETROGLUE-10020");
label:
v = v.<org.glassfish.webservices.metroglue.MetroContainer: com.sun.enterprise.config.serverbeans.SecurityService secService>;
v = interfaceinvoke v.<com.sun.enterprise.config.serverbeans.SecurityService: org.jvnet.hk.config.types.Property getProperty(java.lang.String)>("MAX_NONCE_AGE");
if v == null goto label;
v = interfaceinvoke v.<org.jvnet.hk.config.types.Property: java.lang.String getValue()>();
v = staticinvoke <java.lang.Long: long parseLong(java.lang.String)>(v);
v = <com.sun.xml.wss.impl.config.SecurityConfigProvider: com.sun.xml.wss.impl.config.SecurityConfigProvider INSTANCE>;
virtualinvoke v.<com.sun.xml.wss.impl.config.SecurityConfigProvider: void init(long)>(v);
label:
return;
}
public java.lang.Class getDeployer()
{
org.glassfish.webservices.metroglue.MetroContainer v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
return class "Lorg/glassfish/webservices/metroglue/MetroDeployer;";
}
public java.lang.String getName()
{
org.glassfish.webservices.metroglue.MetroContainer v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
return "metro";
}
public void onDeployed(com.sun.enterprise.deployment.WebServiceEndpoint)
{
org.glassfish.webservices.metroglue.MetroContainer v;
java.util.concurrent.atomic.AtomicBoolean v, v;
java.util.logging.Logger v, v;
java.util.logging.Level v;
com.sun.enterprise.deployment.WebServiceEndpoint v;
boolean v, v, v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v := @parameter: com.sun.enterprise.deployment.WebServiceEndpoint;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level FINEST>;
v = virtualinvoke v.<java.util.logging.Logger: boolean isLoggable(java.util.logging.Level)>(v);
if v == 0 goto label;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
virtualinvoke v.<java.util.logging.Logger: void finest(java.lang.String)>("AS-WSMETROGLUE-10011");
label:
v = v.<org.glassfish.webservices.metroglue.MetroContainer: java.util.concurrent.atomic.AtomicBoolean wstxServicesDeployed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: java.util.concurrent.atomic.AtomicBoolean wstxServicesDeploying>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
virtualinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: void deployWsTxServices()>();
specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: void initializeWsTxRuntime()>();
label:
return;
}
public void onUndeployed(com.sun.enterprise.deployment.WebServiceEndpoint)
{
org.glassfish.webservices.metroglue.MetroContainer v;
com.sun.enterprise.deployment.WebServiceEndpoint v;
java.util.logging.Logger v, v;
boolean v;
java.util.logging.Level v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v := @parameter: com.sun.enterprise.deployment.WebServiceEndpoint;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level FINEST>;
v = virtualinvoke v.<java.util.logging.Logger: boolean isLoggable(java.util.logging.Level)>(v);
if v == 0 goto label;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
virtualinvoke v.<java.util.logging.Logger: void finest(java.lang.String)>("AS-WSMETROGLUE-10012");
label:
return;
}
public void deployWsTxServices()
{
org.glassfish.webservices.metroglue.MetroContainer v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
virtualinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: void deployWsTxServices(java.lang.String)>(null);
return;
}
public void deployWsTxServices(java.lang.String)
{
org.glassfish.api.deployment.OpsParams$Origin v, v;
java.lang.Exception v, v;
org.glassfish.hk.api.ServiceLocator v, v;
java.lang.Throwable v, v;
java.lang.String v, v, v, v, v, v, v;
java.util.Properties v;
org.glassfish.server.ServerEnvironmentImpl v, v;
org.glassfish.internal.deployment.ExtendedDeploymentContext v;
java.io.File v, v, v, v, v;
org.glassfish.api.ActionReport$ExitCode v, v;
org.glassfish.api.deployment.DeployCommandParameters v;
boolean v, v, v, v, v, v;
java.util.logging.Logger v, v, v, v, v, v, v, v;
org.glassfish.internal.api.ServerContext v;
java.util.concurrent.atomic.AtomicBoolean v, v, v, v;
java.lang.String[] v, v, v;
java.lang.'annotation'.Annotation[] v, v;
java.util.logging.Level v, v, v, v, v, v, v;
org.glassfish.webservices.metroglue.MetroContainer v;
org.glassfish.internal.deployment.Deployment$DeploymentContextBuilder v, v;
java.lang.Object v, v, v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v := @parameter: java.lang.String;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.lang.Object lock>;
entermonitor v;
label:
v = v.<org.glassfish.webservices.metroglue.MetroContainer: java.util.concurrent.atomic.AtomicBoolean wstxServicesDeployed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v != 0 goto label;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: java.util.concurrent.atomic.AtomicBoolean wstxServicesDeploying>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean compareAndSet(boolean,boolean)>(0, 1);
if v != 0 goto label;
label:
exitmonitor v;
label:
return;
label:
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.hk.api.ServiceLocator habitat>;
v = newarray (java.lang.'annotation'.Annotation)[0];
v = interfaceinvoke v.<org.glassfish.hk.api.ServiceLocator: java.lang.Object getService(java.lang.Class,java.lang.'annotation'.Annotation[])>(class "Lorg/glassfish/internal/deployment/Deployment;", v);
v = interfaceinvoke v.<org.glassfish.internal.deployment.Deployment: boolean isRegistered(java.lang.String)>("wstx-services");
if v == 0 goto label;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level WARNING>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String)>(v, "AS-WSMETROGLUE-10003");
goto label;
label:
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level INFO>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String)>(v, "AS-WSMETROGLUE-10001");
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.internal.api.ServerContext serverContext>;
v = interfaceinvoke v.<org.glassfish.internal.api.ServerContext: java.io.File getInstallRoot()>();
v = null;
label:
v = new java.io.File;
specialinvoke v.<java.io.File: void <init>(java.io.File,java.lang.String)>(v, "lib/install/applications/metro");
v = staticinvoke <com.sun.enterprise.util.io.FileUtils: java.io.File getManagedFile(java.lang.String,java.io.File)>("wstx-services.war", v);
label:
goto label;
label:
v := @caughtexception;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level WARNING>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Throwable)>(v, "AS-WSMETROGLUE-19999", v);
label:
if v == null goto label;
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v != 0 goto label;
label:
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level WARNING>;
v = newarray (java.lang.String)[1];
v[0] = "Required WAR file (wstx-services.war) is not installed";
v = specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: java.lang.String format(java.lang.String,java.lang.String[])>("AS-WSMETROGLUE-10004", v);
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String)>(v, v);
goto label;
label:
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.hk.api.ServiceLocator habitat>;
v = newarray (java.lang.'annotation'.Annotation)[0];
v = interfaceinvoke v.<org.glassfish.hk.api.ServiceLocator: java.lang.Object getService(java.lang.Class,java.lang.String,java.lang.'annotation'.Annotation[])>(class "Lorg/glassfish/api/ActionReport;", "plain", v);
v = new org.glassfish.api.deployment.DeployCommandParameters;
specialinvoke v.<org.glassfish.api.deployment.DeployCommandParameters: void <init>(java.io.File)>(v);
v.<org.glassfish.api.deployment.DeployCommandParameters: java.lang.String name> = "wstx-services";
label:
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.server.ServerEnvironmentImpl env>;
v = virtualinvoke v.<org.glassfish.server.ServerEnvironmentImpl: java.io.File getApplicationStubPath()>();
v = new java.io.File;
specialinvoke v.<java.io.File: void <init>(java.io.File,java.lang.String)>(v, "wstx-services");
v = specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: boolean isDas()>();
if v == 0 goto label;
v = virtualinvoke v.<java.io.File: boolean createNewFile()>();
if v == 0 goto label;
v = <org.glassfish.api.deployment.OpsParams$Origin: org.glassfish.api.deployment.OpsParams$Origin deploy>;
v.<org.glassfish.api.deployment.DeployCommandParameters: org.glassfish.api.deployment.OpsParams$Origin origin> = v;
if v == null goto label;
v.<org.glassfish.api.deployment.DeployCommandParameters: java.lang.String target> = v;
goto label;
label:
v = <org.glassfish.api.deployment.OpsParams$Origin: org.glassfish.api.deployment.OpsParams$Origin load>;
v.<org.glassfish.api.deployment.DeployCommandParameters: org.glassfish.api.deployment.OpsParams$Origin origin> = v;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.server.ServerEnvironmentImpl env>;
v = virtualinvoke v.<org.glassfish.server.ServerEnvironmentImpl: java.lang.String getInstanceName()>();
v.<org.glassfish.api.deployment.DeployCommandParameters: java.lang.String target> = v;
label:
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = interfaceinvoke v.<org.glassfish.internal.deployment.Deployment: org.glassfish.internal.deployment.Deployment$DeploymentContextBuilder getBuilder(java.util.logging.Logger,org.glassfish.api.deployment.OpsParams,org.glassfish.api.ActionReport)>(v, v, v);
v = interfaceinvoke v.<org.glassfish.internal.deployment.Deployment$DeploymentContextBuilder: org.glassfish.internal.deployment.Deployment$DeploymentContextBuilder source(java.io.File)>(v);
v = interfaceinvoke v.<org.glassfish.internal.deployment.Deployment$DeploymentContextBuilder: org.glassfish.internal.deployment.ExtendedDeploymentContext build()>();
v = interfaceinvoke v.<org.glassfish.internal.deployment.ExtendedDeploymentContext: java.util.Properties getAppProps()>();
virtualinvoke v.<java.util.Properties: java.lang.Object setProperty(java.lang.String,java.lang.String)>("object-type", "system-all");
interfaceinvoke v.<org.glassfish.internal.deployment.Deployment: org.glassfish.internal.data.ApplicationInfo deploy(org.glassfish.internal.deployment.ExtendedDeploymentContext)>(v);
v = virtualinvoke v.<org.glassfish.api.ActionReport: org.glassfish.api.ActionReport$ExitCode getActionExitCode()>();
v = <org.glassfish.api.ActionReport$ExitCode: org.glassfish.api.ActionReport$ExitCode SUCCESS>;
if v == v goto label;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level WARNING>;
v = newarray (java.lang.String)[1];
v = virtualinvoke v.<org.glassfish.api.ActionReport: java.lang.String getMessage()>();
v[0] = v;
v = specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: java.lang.String format(java.lang.String,java.lang.String[])>("AS-WSMETROGLUE-10004", v);
v = virtualinvoke v.<org.glassfish.api.ActionReport: java.lang.Throwable getFailureCause()>();
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Throwable)>(v, v, v);
label:
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level INFO>;
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String)>(v, "AS-WSMETROGLUE-10002");
label:
goto label;
label:
v := @caughtexception;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level WARNING>;
v = newarray (java.lang.String)[1];
v = virtualinvoke v.<java.lang.Exception: java.lang.String getLocalizedMessage()>();
v[0] = v;
v = specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: java.lang.String format(java.lang.String,java.lang.String[])>("AS-WSMETROGLUE-10004", v);
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Throwable)>(v, v, v);
label:
v = v.<org.glassfish.webservices.metroglue.MetroContainer: java.util.concurrent.atomic.AtomicBoolean wstxServicesDeployed>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(1);
v = v.<org.glassfish.webservices.metroglue.MetroContainer: java.util.concurrent.atomic.AtomicBoolean wstxServicesDeploying>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void set(boolean)>(0);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
private transient java.lang.String format(java.lang.String, java.lang.String[])
{
java.util.ResourceBundle v;
org.glassfish.webservices.metroglue.MetroContainer v;
java.lang.String[] v;
java.lang.String v, v, v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String[];
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.ResourceBundle rb>;
v = virtualinvoke v.<java.util.ResourceBundle: java.lang.String getString(java.lang.String)>(v);
v = staticinvoke <java.text.MessageFormat: java.lang.String format(java.lang.String,java.lang.Object[])>(v, v);
return v;
}
private boolean isDas()
{
org.glassfish.server.ServerEnvironmentImpl v, v;
org.glassfish.webservices.metroglue.MetroContainer v;
boolean v, v, v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.server.ServerEnvironmentImpl env>;
v = virtualinvoke v.<org.glassfish.server.ServerEnvironmentImpl: boolean isDas()>();
if v != 0 goto label;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.server.ServerEnvironmentImpl env>;
v = virtualinvoke v.<org.glassfish.server.ServerEnvironmentImpl: boolean isEmbedded()>();
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
private boolean isCluster()
{
org.glassfish.server.ServerEnvironmentImpl v, v;
org.glassfish.webservices.metroglue.MetroContainer v;
org.glassfish.gms.bootstrap.GMSAdapterService v;
boolean v, v, v, v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.server.ServerEnvironmentImpl env>;
v = virtualinvoke v.<org.glassfish.server.ServerEnvironmentImpl: boolean isDas()>();
if v != 0 goto label;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.server.ServerEnvironmentImpl env>;
v = virtualinvoke v.<org.glassfish.server.ServerEnvironmentImpl: boolean isEmbedded()>();
if v != 0 goto label;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.gms.bootstrap.GMSAdapterService gmsAdapterService>;
v = virtualinvoke v.<org.glassfish.gms.bootstrap.GMSAdapterService: boolean isGmsEnabled()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
private boolean isHaEnabled()
{
com.sun.enterprise.config.serverbeans.AvailabilityService v, v;
org.glassfish.webservices.metroglue.MetroContainer v;
java.lang.Boolean v;
java.lang.String v;
boolean v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v = 0;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: com.sun.enterprise.config.serverbeans.AvailabilityService availabilityService>;
if v == null goto label;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: com.sun.enterprise.config.serverbeans.AvailabilityService availabilityService>;
v = interfaceinvoke v.<com.sun.enterprise.config.serverbeans.AvailabilityService: java.lang.String getAvailabilityEnabled()>();
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
label:
return v;
}
private void initializeWsTxRuntime()
{
com.sun.xml.ws.tx.dev.WSATRuntimeConfig v;
java.lang.String v, v, v, v;
com.sun.xml.ws.tx.dev.WSATRuntimeConfig$WSATRecoveryEventListener v;
org.glassfish.webservices.metroglue.MetroContainer v;
org.glassfish.webservices.metroglue.MetroContainer$1 v;
org.glassfish.webservices.metroglue.MetroContainer$2 v;
org.glassfish.internal.api.ServerContext v, v;
com.sun.enterprise.transaction.api.RecoveryResourceRegistry v;
com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer v, v, v, v, v;
com.sun.enterprise.config.serverbeans.Server v;
com.sun.enterprise.config.serverbeans.Config v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.internal.api.ServerContext serverContext>;
v = interfaceinvoke v.<org.glassfish.internal.api.ServerContext: java.lang.String getInstanceName()>();
v = v.<org.glassfish.webservices.metroglue.MetroContainer: org.glassfish.internal.api.ServerContext serverContext>;
v = interfaceinvoke v.<org.glassfish.internal.api.ServerContext: com.sun.enterprise.config.serverbeans.Server getConfigBean()>();
v = interfaceinvoke v.<com.sun.enterprise.config.serverbeans.Server: com.sun.enterprise.config.serverbeans.Config getConfig()>();
v = new org.glassfish.webservices.metroglue.MetroContainer$1;
specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer$1: void <init>(org.glassfish.webservices.metroglue.MetroContainer)>(v);
v = staticinvoke <com.sun.xml.ws.tx.dev.WSATRuntimeConfig: com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer initializer()>();
v = specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: java.lang.String getHostName()>();
v = virtualinvoke v.<com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer: com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer hostName(java.lang.String)>(v);
v = specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: java.lang.String getHttpPort(boolean,java.lang.String,com.sun.enterprise.config.serverbeans.Config)>(0, v, v);
v = virtualinvoke v.<com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer: com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer httpPort(java.lang.String)>(v);
v = specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer: java.lang.String getHttpPort(boolean,java.lang.String,com.sun.enterprise.config.serverbeans.Config)>(1, v, v);
v = virtualinvoke v.<com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer: com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer httpsPort(java.lang.String)>(v);
v = virtualinvoke v.<com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer: com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer txLogLocation(com.sun.xml.ws.tx.dev.WSATRuntimeConfig$TxlogLocationProvider)>(v);
virtualinvoke v.<com.sun.xml.ws.tx.dev.WSATRuntimeConfig$Initializer: void done()>();
v = new com.sun.xml.ws.tx.dev.WSATRuntimeConfig$WSATRecoveryEventListener;
v = staticinvoke <com.sun.xml.ws.tx.dev.WSATRuntimeConfig: com.sun.xml.ws.tx.dev.WSATRuntimeConfig getInstance()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
specialinvoke v.<com.sun.xml.ws.tx.dev.WSATRuntimeConfig$WSATRecoveryEventListener: void <init>(com.sun.xml.ws.tx.dev.WSATRuntimeConfig)>(v);
v = v.<org.glassfish.webservices.metroglue.MetroContainer: com.sun.enterprise.transaction.api.RecoveryResourceRegistry recoveryRegistry>;
v = new org.glassfish.webservices.metroglue.MetroContainer$2;
specialinvoke v.<org.glassfish.webservices.metroglue.MetroContainer$2: void <init>(org.glassfish.webservices.metroglue.MetroContainer,com.sun.xml.ws.tx.dev.WSATRuntimeConfig$RecoveryEventListener)>(v, v);
virtualinvoke v.<com.sun.enterprise.transaction.api.RecoveryResourceRegistry: void addEventListener(com.sun.enterprise.transaction.spi.RecoveryEventListener)>(v);
return;
}
private java.lang.String getHostName()
{
java.lang.String v;
org.glassfish.webservices.metroglue.MetroContainer v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("com.sun.aas.hostName");
return v;
}
private java.lang.String getHttpPort(boolean, java.lang.String, com.sun.enterprise.config.serverbeans.Config)
{
java.lang.Throwable v;
java.lang.String[] v;
java.util.logging.Level v, v;
org.glassfish.grizzly.config.dom.Protocol v;
int v, v;
org.glassfish.grizzly.config.dom.NetworkListener v;
java.lang.Boolean v;
java.lang.String v, v, v, v, v, v;
boolean v, v, v, v, v;
org.glassfish.webservices.metroglue.MetroContainer v;
java.util.logging.Logger v, v;
com.sun.enterprise.config.serverbeans.VirtualServer v;
com.sun.enterprise.config.serverbeans.HttpService v;
com.sun.enterprise.config.serverbeans.Config v;
org.glassfish.grizzly.config.dom.NetworkConfig v;
v := @this: org.glassfish.webservices.metroglue.MetroContainer;
v := @parameter: boolean;
v := @parameter: java.lang.String;
v := @parameter: com.sun.enterprise.config.serverbeans.Config;
label:
v = interfaceinvoke v.<com.sun.enterprise.config.serverbeans.Config: com.sun.enterprise.config.serverbeans.HttpService getHttpService()>();
v = interfaceinvoke v.<com.sun.enterprise.config.serverbeans.HttpService: com.sun.enterprise.config.serverbeans.VirtualServer getVirtualServerByName(java.lang.String)>(v);
v = interfaceinvoke v.<com.sun.enterprise.config.serverbeans.VirtualServer: java.lang.String getNetworkListeners()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
return null;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String[] split(java.lang.String)>(",");
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<com.sun.enterprise.config.serverbeans.Config: org.glassfish.grizzly.config.dom.NetworkConfig getNetworkConfig()>();
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
v = interfaceinvoke v.<org.glassfish.grizzly.config.dom.NetworkConfig: org.glassfish.grizzly.config.dom.NetworkListener getNetworkListener(java.lang.String)>(v);
v = interfaceinvoke v.<org.glassfish.grizzly.config.dom.NetworkListener: org.glassfish.grizzly.config.dom.Protocol findHttpProtocol()>();
v = interfaceinvoke v.<org.glassfish.grizzly.config.dom.Protocol: java.lang.String getSecurityEnabled()>();
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v != v goto label;
v = interfaceinvoke v.<org.glassfish.grizzly.config.dom.NetworkListener: java.lang.String getPort()>();
label:
return v;
label:
v = v + 1;
goto label;
label:
v := @caughtexception;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = <java.util.logging.Level: java.util.logging.Level FINEST>;
v = virtualinvoke v.<java.util.logging.Logger: boolean isLoggable(java.util.logging.Level)>(v);
if v == 0 goto label;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
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.Throwable)>(v, "AS-WSMETROGLUE-19998", v);
label:
return null;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
static void <clinit>()
{
java.util.ResourceBundle v;
java.lang.Object v;
java.util.logging.Logger v, v;
v = staticinvoke <org.glassfish.webservices.metroglue.LogUtils: java.util.logging.Logger getLogger()>();
<org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger> = v;
v = <org.glassfish.webservices.metroglue.MetroContainer: java.util.logging.Logger logger>;
v = virtualinvoke v.<java.util.logging.Logger: java.util.ResourceBundle getResourceBundle()>();
<org.glassfish.webservices.metroglue.MetroContainer: java.util.ResourceBundle rb> = v;
v = new java.lang.Object;
specialinvoke v.<java.lang.Object: void <init>()>();
<org.glassfish.webservices.metroglue.MetroContainer: java.lang.Object lock> = v;
return;
}
}