public class org.glassfish.appclient.client.AppClientFacade extends java.lang.Object
{
private static final java.lang.String ACC_CONFIG_CONTENT_PROPERTY_NAME;
private static final java.lang.String MAN_PAGE_PATH;
private static final java.lang.String LINE_SEP;
private static final java.lang.Class stringsAnchor;
private static com.sun.enterprise.util.LocalStringManager localStrings;
private static org.glassfish.appclient.client.acc.CommandLaunchInfo launchInfo;
private static org.glassfish.appclient.client.acc.AppclientCommandArguments appClientCommandArgs;
private static org.glassfish.appclient.client.acc.AppClientContainer appClientContainer;
public void <init>()
{
org.glassfish.appclient.client.AppClientFacade v;
v := @this: org.glassfish.appclient.client.AppClientFacade;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static void main(java.lang.String[])
{
org.glassfish.appclient.client.acc.UserError v;
java.lang.String[] v;
org.glassfish.appclient.client.acc.AppClientContainer v, v;
java.lang.Exception v;
v := @parameter: java.lang.String[];
label:
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer appClientContainer>;
if v != null goto label;
staticinvoke <org.glassfish.appclient.client.AppClientFacade: void prepareACC(java.lang.String,java.lang.instrument.Instrumentation)>(null, null);
label:
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer appClientContainer>;
virtualinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer: void launch(java.lang.String[])>(v);
label:
goto label;
label:
v := @caughtexception;
virtualinvoke v.<java.lang.Exception: void printStackTrace()>();
staticinvoke <java.lang.System: void exit(int)>(1);
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.glassfish.appclient.client.acc.UserError: void displayAndExit()>();
label:
return;
catch java.lang.Exception from label to label with label;
catch org.glassfish.appclient.client.acc.UserError from label to label with label;
}
public static org.glassfish.appclient.client.acc.AppClientContainer acc()
{
org.glassfish.appclient.client.acc.AppClientContainer v;
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer appClientContainer>;
return v;
}
public static void launch(java.lang.String[]) throws java.lang.NoSuchMethodException, java.lang.ClassNotFoundException, java.lang.IllegalAccessException, java.lang.IllegalArgumentException, java.lang.reflect.InvocationTargetException, java.io.IOException, org.xml.sax.SAXException, com.sun.enterprise.container.common.spi.util.InjectionException, org.glassfish.appclient.client.acc.UserError
{
java.lang.String[] v;
org.glassfish.appclient.client.acc.AppClientContainer v;
v := @parameter: java.lang.String[];
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer appClientContainer>;
virtualinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer: void launch(java.lang.String[])>(v);
return;
}
public static void prepareACC(java.lang.String, java.lang.instrument.Instrumentation) throws org.glassfish.appclient.client.acc.UserError, java.net.MalformedURLException, java.net.URISyntaxException, jakarta.xml.bind.JAXBException, java.io.FileNotFoundException, javax.xml.parsers.ParserConfigurationException, org.xml.sax.SAXException, java.io.IOException, java.lang.Exception
{
org.glassfish.appclient.client.acc.config.ClientContainer v;
org.glassfish.appclient.client.acc.AgentArguments v;
java.lang.Thread v;
org.glassfish.appclient.client.acc.ACCClassLoader v;
boolean v, v, v;
org.glassfish.appclient.client.acc.CommandLaunchInfo$ClientLaunchType v, v;
org.glassfish.appclient.client.acc.CommandLaunchInfo v, v, v;
org.glassfish.appclient.client.acc.AppclientCommandArguments v, v, v, v, v, v, v;
java.util.List v;
org.glassfish.appclient.client.acc.config.TargetServer[] v;
org.glassfish.appclient.client.acc.AppClientContainer$Builder v;
java.lang.Object[] v;
int v, v;
org.glassfish.appclient.client.acc.AppClientContainer v;
java.lang.String v, v, v, v, v;
org.glassfish.appclient.client.acc.UserError v;
com.sun.enterprise.util.LocalStringManager v;
java.lang.instrument.Instrumentation v;
java.lang.Class v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.instrument.Instrumentation;
v = staticinvoke <com.sun.enterprise.util.JDK: int getMinor()>();
v = staticinvoke <com.sun.enterprise.util.JDK: int getMajor()>();
if v >= 9 goto label;
if v >= 6 goto label;
v = new org.glassfish.appclient.client.acc.UserError;
v = <org.glassfish.appclient.client.AppClientFacade: com.sun.enterprise.util.LocalStringManager localStrings>;
v = <org.glassfish.appclient.client.AppClientFacade: java.lang.Class stringsAnchor>;
v = newarray (java.lang.Object)[2];
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("java.version");
v[0] = v;
v[1] = "1.6";
v = interfaceinvoke v.<com.sun.enterprise.util.LocalStringManager: java.lang.String getLocalString(java.lang.Class,java.lang.String,java.lang.String,java.lang.Object[])>(v, "main.badVersion", "Current Java version {0} is too low; {1} or later required", v);
specialinvoke v.<org.glassfish.appclient.client.acc.UserError: void <init>(java.lang.String)>(v);
throw v;
label:
v = staticinvoke <org.glassfish.appclient.client.acc.AgentArguments: org.glassfish.appclient.client.acc.AgentArguments newInstance(java.lang.String)>(v);
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AgentArguments: java.util.List namedValues(java.lang.String)>("arg");
v = staticinvoke <org.glassfish.appclient.client.acc.AppclientCommandArguments: org.glassfish.appclient.client.acc.AppclientCommandArguments newInstance(java.util.List)>(v);
<org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppclientCommandArguments appClientCommandArgs> = v;
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppclientCommandArguments appClientCommandArgs>;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: boolean isUsage()>();
if v == 0 goto label;
staticinvoke <org.glassfish.appclient.client.AppClientFacade: void usage(int)>(0);
goto label;
label:
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppclientCommandArguments appClientCommandArgs>;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: boolean isHelp()>();
if v == 0 goto label;
staticinvoke <org.glassfish.appclient.client.AppClientFacade: void help()>();
label:
v = staticinvoke <org.glassfish.appclient.client.acc.CommandLaunchInfo: org.glassfish.appclient.client.acc.CommandLaunchInfo newInstance(org.glassfish.appclient.client.acc.AgentArguments)>(v);
<org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.CommandLaunchInfo launchInfo> = v;
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.CommandLaunchInfo launchInfo>;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.CommandLaunchInfo: org.glassfish.appclient.client.acc.CommandLaunchInfo$ClientLaunchType getClientLaunchType()>();
v = <org.glassfish.appclient.client.acc.CommandLaunchInfo$ClientLaunchType: org.glassfish.appclient.client.acc.CommandLaunchInfo$ClientLaunchType UNKNOWN>;
if v != v goto label;
staticinvoke <org.glassfish.appclient.client.AppClientFacade: void usage(int)>(1);
label:
if v != null goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.ACCClassLoader initClassLoader(boolean)>(v);
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
virtualinvoke v.<java.lang.Thread: void setContextClassLoader(java.lang.ClassLoader)>(v);
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppclientCommandArguments appClientCommandArgs>;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: java.lang.String getConfigFilePath()>();
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.config.ClientContainer readConfig(java.lang.String,java.lang.ClassLoader)>(v, v);
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppclientCommandArguments appClientCommandArgs>;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: java.lang.String getTargetServer()>();
v = staticinvoke <org.glassfish.appclient.client.acc.TargetServerHelper: org.glassfish.appclient.client.acc.config.TargetServer[] targetServers(org.glassfish.appclient.client.acc.config.ClientContainer,java.lang.String)>(v, v);
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppclientCommandArguments appClientCommandArgs>;
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer$Builder createBuilder(org.glassfish.appclient.client.acc.config.TargetServer[],org.glassfish.appclient.client.acc.config.ClientContainer,org.glassfish.appclient.client.acc.AppclientCommandArguments)>(v, v, v);
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.CommandLaunchInfo launchInfo>;
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppclientCommandArguments appClientCommandArgs>;
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer createContainer(org.glassfish.appclient.client.acc.AppClientContainer$Builder,org.glassfish.appclient.client.acc.CommandLaunchInfo,org.glassfish.appclient.client.acc.AppclientCommandArguments)>(v, v, v);
virtualinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer: void prepare(java.lang.instrument.Instrumentation)>(v);
<org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer appClientContainer> = v;
return;
}
private static void usage(int)
{
int v;
java.io.PrintStream v;
java.lang.String v;
v := @parameter: int;
v = <java.lang.System: java.io.PrintStream err>;
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: java.lang.String getUsage()>();
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
staticinvoke <java.lang.System: void exit(int)>(v);
return;
}
private static void help() throws java.io.IOException
{
java.io.PrintStream v;
java.lang.Throwable v, v;
java.io.InputStreamReader v;
java.lang.Class v;
java.io.BufferedReader v;
java.lang.String v;
java.io.InputStream v;
v = class "Lorg/glassfish/appclient/client/AppClientFacade;";
v = virtualinvoke v.<java.lang.Class: java.io.InputStream getResourceAsStream(java.lang.String)>("/org/glassfish/appclient/client/acc/appclient.1m");
if v != null goto label;
staticinvoke <org.glassfish.appclient.client.AppClientFacade: void usage(int)>(0);
label:
v = new java.io.BufferedReader;
v = new java.io.InputStreamReader;
specialinvoke v.<java.io.InputStreamReader: void <init>(java.io.InputStream)>(v);
specialinvoke v.<java.io.BufferedReader: void <init>(java.io.Reader)>(v);
label:
v = virtualinvoke v.<java.io.BufferedReader: java.lang.String readLine()>();
if v == null goto label;
v = <java.lang.System: java.io.PrintStream err>;
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
goto label;
label:
virtualinvoke v.<java.io.BufferedReader: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
staticinvoke <java.lang.System: void exit(int)>(0);
goto label;
label:
v := @caughtexception;
staticinvoke <java.lang.System: void exit(int)>(0);
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
private static java.lang.String getUsage()
{
com.sun.enterprise.util.LocalStringManager v, v;
java.lang.Class v, v;
java.lang.String v, v, v, v;
v = <org.glassfish.appclient.client.AppClientFacade: com.sun.enterprise.util.LocalStringManager localStrings>;
v = <org.glassfish.appclient.client.AppClientFacade: java.lang.Class stringsAnchor>;
v = interfaceinvoke v.<com.sun.enterprise.util.LocalStringManager: java.lang.String getLocalString(java.lang.Class,java.lang.String,java.lang.String)>(v, "main.usage", "appclient [ <classfile> | -client <appjar> ] [-mainclass <appClass-name>|-name <display-name>] [-xml <xml>] [-textauth] [-user <username>] [-password <password>|-passwordfile <password-file>] [-targetserver host[:port][,host[:port]...] [app-args]");
v = staticinvoke <java.lang.System: java.lang.String lineSeparator()>();
v = <org.glassfish.appclient.client.AppClientFacade: com.sun.enterprise.util.LocalStringManager localStrings>;
v = <org.glassfish.appclient.client.AppClientFacade: java.lang.Class stringsAnchor>;
v = interfaceinvoke v.<com.sun.enterprise.util.LocalStringManager: java.lang.String getLocalString(java.lang.Class,java.lang.String,java.lang.String)>(v, "main.usage.1", "  or  :\n\tappclient [ <valid JVM options and valid ACC options> ] [ <appClass-name> | -jar <appjar> ] [app args]");
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, 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\u0001\u0001");
return v;
}
private static org.glassfish.appclient.client.acc.ACCClassLoader initClassLoader(boolean) throws java.net.MalformedURLException
{
java.lang.Thread v;
org.glassfish.appclient.client.acc.ACCClassLoader v;
java.lang.ClassLoader v;
boolean v;
v := @parameter: boolean;
v = staticinvoke <org.glassfish.appclient.client.acc.ACCClassLoader: org.glassfish.appclient.client.acc.ACCClassLoader instance()>();
if v != null goto label;
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
v = virtualinvoke v.<java.lang.Thread: java.lang.ClassLoader getContextClassLoader()>();
v = staticinvoke <org.glassfish.appclient.client.acc.ACCClassLoader: org.glassfish.appclient.client.acc.ACCClassLoader newInstance(java.lang.ClassLoader,boolean)>(v, v);
label:
return v;
}
private static org.glassfish.appclient.client.acc.AppClientContainer$Builder createBuilder(org.glassfish.appclient.client.acc.config.TargetServer[], org.glassfish.appclient.client.acc.config.ClientContainer, org.glassfish.appclient.client.acc.AppclientCommandArguments) throws java.io.IOException
{
org.glassfish.appclient.client.acc.config.ClientContainer v;
org.glassfish.appclient.client.acc.config.AuthRealm v;
org.glassfish.appclient.client.acc.config.LogService v;
org.glassfish.appclient.client.acc.AppclientCommandArguments v;
org.glassfish.appclient.client.acc.ACCLogger v;
java.util.List v, v, v, v;
java.lang.String v;
org.glassfish.appclient.client.acc.config.TargetServer[] v;
org.glassfish.appclient.client.acc.AppClientContainer$Builder v;
v := @parameter: org.glassfish.appclient.client.acc.config.TargetServer[];
v := @parameter: org.glassfish.appclient.client.acc.config.ClientContainer;
v := @parameter: org.glassfish.appclient.client.acc.AppclientCommandArguments;
v = staticinvoke <org.glassfish.appclient.client.acc.AppClientContainer: org.glassfish.appclient.client.acc.AppClientContainer$Builder newBuilder(org.glassfish.appclient.client.acc.config.TargetServer[])>(v);
staticinvoke <org.glassfish.appclient.client.AppClientFacade: void updateClientCredentials(org.glassfish.appclient.client.acc.AppClientContainer$Builder,org.glassfish.appclient.client.acc.AppclientCommandArguments)>(v, v);
v = virtualinvoke v.<org.glassfish.appclient.client.acc.config.ClientContainer: java.util.List getMessageSecurityConfig()>();
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer$Builder: java.util.List getMessageSecurityConfig()>();
v = virtualinvoke v.<org.glassfish.appclient.client.acc.config.ClientContainer: java.util.List getMessageSecurityConfig()>();
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
label:
v = new org.glassfish.appclient.client.acc.ACCLogger;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.config.ClientContainer: org.glassfish.appclient.client.acc.config.LogService getLogService()>();
specialinvoke v.<org.glassfish.appclient.client.acc.ACCLogger: void <init>(org.glassfish.appclient.client.acc.config.LogService)>(v);
interfaceinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer$Builder: org.glassfish.appclient.client.acc.AppClientContainer$Builder logger(java.util.logging.Logger)>(v);
v = virtualinvoke v.<org.glassfish.appclient.client.acc.config.ClientContainer: org.glassfish.appclient.client.acc.config.AuthRealm getAuthRealm()>();
if v == null goto label;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.config.AuthRealm: java.lang.String getClassname()>();
interfaceinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer$Builder: org.glassfish.appclient.client.acc.AppClientContainer$Builder authRealm(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.glassfish.appclient.client.acc.config.ClientContainer: java.util.List getProperty()>();
if v == null goto label;
interfaceinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer$Builder: org.glassfish.appclient.client.acc.AppClientContainer$Builder containerProperties(java.util.List)>(v);
label:
return v;
}
private static void updateClientCredentials(org.glassfish.appclient.client.acc.AppClientContainer$Builder, org.glassfish.appclient.client.acc.AppclientCommandArguments)
{
org.glassfish.appclient.client.acc.AppclientCommandArguments v;
org.glassfish.appclient.client.acc.config.util.XML$Password v, v;
char[] v, v, v;
org.glassfish.appclient.client.acc.config.ClientCredential v;
java.lang.String v, v, v;
org.glassfish.appclient.client.acc.AppClientContainer$Builder v;
v := @parameter: org.glassfish.appclient.client.acc.AppClientContainer$Builder;
v := @parameter: org.glassfish.appclient.client.acc.AppclientCommandArguments;
v = interfaceinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer$Builder: org.glassfish.appclient.client.acc.config.ClientCredential getClientCredential()>();
if v == null goto label;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.config.ClientCredential: java.lang.String getUserName()>();
goto label;
label:
v = null;
label:
v = v;
if v == null goto label;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.config.ClientCredential: org.glassfish.appclient.client.acc.config.util.XML$Password getPassword()>();
if v == null goto label;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.config.ClientCredential: org.glassfish.appclient.client.acc.config.util.XML$Password getPassword()>();
v = virtualinvoke v.<org.glassfish.appclient.client.acc.config.util.XML$Password: char[] get()>();
goto label;
label:
v = null;
label:
v = v;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: java.lang.String getUser()>();
if v == null goto label;
v = v;
label:
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: char[] getPassword()>();
if v == null goto label;
v = v;
label:
interfaceinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer$Builder: org.glassfish.appclient.client.acc.AppClientContainer$Builder clientCredentials(java.lang.String,char[])>(v, v);
return;
}
private static org.glassfish.appclient.client.acc.AppClientContainer createContainer(org.glassfish.appclient.client.acc.AppClientContainer$Builder, org.glassfish.appclient.client.acc.CommandLaunchInfo, org.glassfish.appclient.client.acc.AppclientCommandArguments) throws java.lang.Exception, org.glassfish.appclient.client.acc.UserError
{
int[] v;
int v, v;
org.glassfish.appclient.client.acc.AppClientContainer v;
java.lang.String v, v, v, v, v, v, v, v;
org.glassfish.appclient.client.acc.CommandLaunchInfo$ClientLaunchType v;
org.glassfish.appclient.client.acc.CommandLaunchInfo v;
java.lang.IllegalArgumentException v;
org.glassfish.appclient.client.acc.AppclientCommandArguments v;
org.glassfish.appclient.client.acc.AppClientContainer$Builder v;
v := @parameter: org.glassfish.appclient.client.acc.AppClientContainer$Builder;
v := @parameter: org.glassfish.appclient.client.acc.CommandLaunchInfo;
v := @parameter: org.glassfish.appclient.client.acc.AppclientCommandArguments;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.CommandLaunchInfo: org.glassfish.appclient.client.acc.CommandLaunchInfo$ClientLaunchType getClientLaunchType()>();
v = <org.glassfish.appclient.client.AppClientFacade$1: int[] $SwitchMap$org$glassfish$appclient$client$acc$CommandLaunchInfo$ClientLaunchType>;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.CommandLaunchInfo$ClientLaunchType: int ordinal()>();
v = v[v];
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
default: goto label;
};
label:
v = virtualinvoke v.<org.glassfish.appclient.client.acc.CommandLaunchInfo: java.lang.String getClientName()>();
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: java.lang.String getMainclass()>();
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: java.lang.String getName()>();
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer createContainerForAppClientArchiveOrDir(org.glassfish.appclient.client.acc.AppClientContainer$Builder,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v);
goto label;
label:
v = virtualinvoke v.<org.glassfish.appclient.client.acc.CommandLaunchInfo: java.lang.String getClientName()>();
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: java.lang.String getMainclass()>();
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: java.lang.String getName()>();
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer createContainerForJWSLaunch(org.glassfish.appclient.client.acc.AppClientContainer$Builder,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v);
goto label;
label:
v = virtualinvoke v.<org.glassfish.appclient.client.acc.CommandLaunchInfo: java.lang.String getClientName()>();
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer createContainerForClassName(org.glassfish.appclient.client.acc.AppClientContainer$Builder,java.lang.String)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.glassfish.appclient.client.acc.CommandLaunchInfo: java.lang.String getClientName()>();
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer createContainerForClassFile(org.glassfish.appclient.client.acc.AppClientContainer$Builder,java.lang.String)>(v, v);
goto label;
label:
v = null;
label:
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("cannot choose app client launch type");
throw v;
label:
return v;
}
private static org.glassfish.appclient.client.acc.AppClientContainer createContainerForAppClientArchiveOrDir(org.glassfish.appclient.client.acc.AppClientContainer$Builder, java.lang.String, java.lang.String, java.lang.String) throws java.lang.Exception, org.glassfish.appclient.client.acc.UserError
{
org.glassfish.appclient.client.acc.AppclientCommandArguments v;
java.io.File v;
org.glassfish.appclient.client.acc.AppClientContainer v;
java.lang.String v, v, v;
java.net.URI v;
org.glassfish.appclient.client.acc.AppClientContainer$Builder v;
boolean v;
v := @parameter: org.glassfish.appclient.client.acc.AppClientContainer$Builder;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = new java.io.File;
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v = staticinvoke <org.glassfish.appclient.client.acc.Util: java.net.URI getURI(java.io.File)>(v);
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppclientCommandArguments appClientCommandArgs>;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: boolean isTextauth()>();
v = interfaceinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer$Builder: org.glassfish.appclient.client.acc.AppClientContainer newContainer(java.net.URI,javax.security.auth.callback.CallbackHandler,java.lang.String,java.lang.String,boolean)>(v, null, v, v, v);
return v;
}
private static org.glassfish.appclient.client.acc.AppClientContainer createContainerForJWSLaunch(org.glassfish.appclient.client.acc.AppClientContainer$Builder, java.lang.String, java.lang.String, java.lang.String) throws java.lang.Exception, org.glassfish.appclient.client.acc.UserError
{
org.glassfish.appclient.client.acc.AppClientContainer v;
java.lang.String v, v, v;
java.net.URI v;
org.glassfish.appclient.client.acc.AppClientContainer$Builder v;
v := @parameter: org.glassfish.appclient.client.acc.AppClientContainer$Builder;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = staticinvoke <java.net.URI: java.net.URI create(java.lang.String)>(v);
v = interfaceinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer$Builder: org.glassfish.appclient.client.acc.AppClientContainer newContainer(java.net.URI,javax.security.auth.callback.CallbackHandler,java.lang.String,java.lang.String)>(v, null, v, v);
return v;
}
private static org.glassfish.appclient.client.acc.AppClientContainer createContainerForClassName(org.glassfish.appclient.client.acc.AppClientContainer$Builder, java.lang.String) throws java.lang.Exception, org.glassfish.appclient.client.acc.UserError
{
java.lang.Thread v, v;
java.lang.Class v;
org.glassfish.appclient.client.acc.AppClientContainer v;
java.lang.ClassLoader v, v;
java.lang.String v;
org.glassfish.appclient.client.acc.AppClientContainer$Builder v;
v := @parameter: org.glassfish.appclient.client.acc.AppClientContainer$Builder;
v := @parameter: java.lang.String;
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
v = virtualinvoke v.<java.lang.Thread: java.lang.ClassLoader getContextClassLoader()>();
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: java.lang.ClassLoader prepareLoaderToFindClassFile(java.lang.ClassLoader)>(v);
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
virtualinvoke v.<java.lang.Thread: void setContextClassLoader(java.lang.ClassLoader)>(v);
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String,boolean,java.lang.ClassLoader)>(v, 1, v);
v = interfaceinvoke v.<org.glassfish.appclient.client.acc.AppClientContainer$Builder: org.glassfish.appclient.client.acc.AppClientContainer newContainer(java.lang.Class)>(v);
return v;
}
private static java.lang.ClassLoader prepareLoaderToFindClassFile(java.lang.ClassLoader) throws java.net.MalformedURLException
{
java.net.URL[] v;
java.net.URL v;
java.lang.ClassLoader v;
java.lang.String v;
java.net.URI v;
org.glassfish.common.util.GlassfishUrlClassLoader v;
java.io.File v;
v := @parameter: java.lang.ClassLoader;
v = new java.io.File;
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("user.dir");
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v = new org.glassfish.common.util.GlassfishUrlClassLoader;
v = newarray (java.net.URL)[1];
v = virtualinvoke v.<java.io.File: java.net.URI toURI()>();
v = virtualinvoke v.<java.net.URI: java.net.URL toURL()>();
v[0] = v;
specialinvoke v.<org.glassfish.common.util.GlassfishUrlClassLoader: void <init>(java.net.URL[],java.lang.ClassLoader)>(v, v);
return v;
}
private static org.glassfish.appclient.client.acc.AppClientContainer createContainerForClassFile(org.glassfish.appclient.client.acc.AppClientContainer$Builder, java.lang.String) throws java.net.MalformedURLException, java.lang.ClassNotFoundException, java.io.FileNotFoundException, java.io.IOException, java.lang.Exception, org.glassfish.appclient.client.acc.UserError
{
int v;
char v;
org.glassfish.appclient.client.acc.AppClientContainer v;
java.lang.String v, v, v;
org.glassfish.appclient.client.acc.AppClientContainer$Builder v;
v := @parameter: org.glassfish.appclient.client.acc.AppClientContainer$Builder;
v := @parameter: java.lang.String;
staticinvoke <org.glassfish.appclient.client.acc.Util: java.io.File verifyFilePath(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.String: int lastIndexOf(java.lang.String)>(".class");
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
v = <java.io.File: char separatorChar>;
v = virtualinvoke v.<java.lang.String: java.lang.String replace(char,char)>(v, 46);
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppClientContainer createContainerForClassName(org.glassfish.appclient.client.acc.AppClientContainer$Builder,java.lang.String)>(v, v);
return v;
}
private static org.glassfish.appclient.client.acc.config.ClientContainer readConfig(java.lang.String, java.lang.ClassLoader) throws org.glassfish.appclient.client.acc.UserError, jakarta.xml.bind.JAXBException, java.io.FileNotFoundException, javax.xml.parsers.ParserConfigurationException, org.xml.sax.SAXException, java.net.URISyntaxException, java.io.IOException
{
jakarta.xml.bind.ValidationEvent v;
jakarta.xml.bind.util.ValidationEventCollector v;
jakarta.xml.bind.Unmarshaller v;
javax.xml.parsers.SAXParser v;
boolean v, v, v, v;
com.sun.enterprise.deployment.node.SaxParserHandlerBundled v;
java.io.Reader v;
org.glassfish.appclient.client.acc.AppclientCommandArguments v;
java.lang.StringBuilder v, v;
java.lang.ClassLoader v;
java.lang.Throwable v;
java.lang.Object[] v;
javax.xml.parsers.SAXParserFactory v;
org.xml.sax.XMLReader v;
int v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.io.PrintStream v;
org.xml.sax.InputSource v;
java.util.Properties v;
jakarta.xml.bind.JAXBContext v;
java.lang.Class[] v;
java.io.File v, v;
com.sun.enterprise.util.LocalStringManager v;
javax.xml.transform.sax.SAXSource v;
java.io.StringReader v;
jakarta.xml.bind.ValidationEvent[] v;
java.lang.Object v;
java.io.FileReader v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.ClassLoader;
v = null;
v = "";
label:
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("glassfish-acc.xml.content");
if v == null goto label;
v = staticinvoke <org.glassfish.appclient.client.acc.Util: java.io.File writeTextToTempFile(java.lang.String,java.lang.String,java.lang.String,boolean)>(v, "wss-client-config", ".xml", 0);
v = new java.util.Properties;
specialinvoke v.<java.util.Properties: void <init>()>();
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
virtualinvoke v.<java.util.Properties: java.lang.Object setProperty(java.lang.String,java.lang.String)>("security.config.path", v);
v = staticinvoke <org.glassfish.appclient.client.acc.Util: java.lang.String replaceTokens(java.lang.String,java.util.Properties)>(v, v);
v = new java.io.StringReader;
specialinvoke v.<java.io.StringReader: void <init>(java.lang.String)>(v);
v = v;
goto label;
label:
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: java.io.File checkXMLFile(java.lang.String)>(v);
v = <org.glassfish.appclient.client.AppClientFacade: org.glassfish.appclient.client.acc.AppclientCommandArguments appClientCommandArgs>;
v = virtualinvoke v.<org.glassfish.appclient.client.acc.AppclientCommandArguments: java.lang.String getConfigFilePath()>();
staticinvoke <org.glassfish.appclient.client.AppClientFacade: java.io.File checkXMLFile(java.lang.String)>(v);
v = new java.io.FileReader;
specialinvoke v.<java.io.FileReader: void <init>(java.io.File)>(v);
v = v;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
label:
v = staticinvoke <javax.xml.parsers.SAXParserFactory: javax.xml.parsers.SAXParserFactory newInstance()>();
virtualinvoke v.<javax.xml.parsers.SAXParserFactory: void setValidating(boolean)>(1);
virtualinvoke v.<javax.xml.parsers.SAXParserFactory: void setNamespaceAware(boolean)>(1);
v = virtualinvoke v.<javax.xml.parsers.SAXParserFactory: javax.xml.parsers.SAXParser newSAXParser()>();
v = virtualinvoke v.<javax.xml.parsers.SAXParser: org.xml.sax.XMLReader getXMLReader()>();
v = new com.sun.enterprise.deployment.node.SaxParserHandlerBundled;
specialinvoke v.<com.sun.enterprise.deployment.node.SaxParserHandlerBundled: void <init>()>();
interfaceinvoke v.<org.xml.sax.XMLReader: void setEntityResolver(org.xml.sax.EntityResolver)>(v);
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: org.xml.sax.InputSource replaceTokensForParsing(java.io.Reader)>(v);
v = new javax.xml.transform.sax.SAXSource;
specialinvoke v.<javax.xml.transform.sax.SAXSource: void <init>(org.xml.sax.XMLReader,org.xml.sax.InputSource)>(v, v);
v = newarray (java.lang.Class)[1];
v[0] = class "Lorg/glassfish/appclient/client/acc/config/ClientContainer;";
v = staticinvoke <jakarta.xml.bind.JAXBContext: jakarta.xml.bind.JAXBContext newInstance(java.lang.Class[])>(v);
v = new jakarta.xml.bind.util.ValidationEventCollector;
specialinvoke v.<jakarta.xml.bind.util.ValidationEventCollector: void <init>()>();
v = virtualinvoke v.<jakarta.xml.bind.JAXBContext: jakarta.xml.bind.Unmarshaller createUnmarshaller()>();
interfaceinvoke v.<jakarta.xml.bind.Unmarshaller: void setEventHandler(jakarta.xml.bind.ValidationEventHandler)>(v);
v = interfaceinvoke v.<jakarta.xml.bind.Unmarshaller: java.lang.Object unmarshal(javax.xml.transform.Source)>(v);
v = virtualinvoke v.<jakarta.xml.bind.util.ValidationEventCollector: boolean hasEvents()>();
if v == 0 goto label;
v = 0;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = virtualinvoke v.<jakarta.xml.bind.util.ValidationEventCollector: jakarta.xml.bind.ValidationEvent[] getEvents()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = interfaceinvoke v.<jakarta.xml.bind.ValidationEvent: java.lang.String getMessage()>();
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = <org.glassfish.appclient.client.AppClientFacade: java.lang.String LINE_SEP>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v;
v = interfaceinvoke v.<jakarta.xml.bind.ValidationEvent: int getSeverity()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v | v;
v = v + 1;
goto label;
label:
v = <org.glassfish.appclient.client.AppClientFacade: com.sun.enterprise.util.LocalStringManager localStrings>;
if v == 0 goto label;
v = "appclient.errParsingConfig";
goto label;
label:
v = "appclient.warnParsingConfig";
label:
if v == 0 goto label;
v = "Error parsing app client container configuration {0}.  Attempting to continue.  In future releases such parsing errors might become fatal.  Please correct your configuration file.";
goto label;
label:
v = "Warning(s) parsing app client container configuration {0}.  Continuing.";
label:
v = newarray (java.lang.Object)[1];
v[0] = v;
v = interfaceinvoke v.<com.sun.enterprise.util.LocalStringManager: java.lang.String getLocalString(java.lang.Class,java.lang.String,java.lang.String,java.lang.Object[])>(class "Lorg/glassfish/appclient/client/AppClientFacade;", v, v, v);
v = <java.lang.System: java.io.PrintStream err>;
v = <org.glassfish.appclient.client.AppClientFacade: java.lang.String LINE_SEP>;
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, 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\u0001\u0001");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
label:
virtualinvoke v.<java.io.Reader: void close()>();
return v;
label:
v := @caughtexception;
if v == null goto label;
virtualinvoke v.<java.io.Reader: void close()>();
label:
throw v;
catch java.lang.Throwable from label to label with label;
}
private static org.xml.sax.InputSource replaceTokensForParsing(java.io.Reader) throws java.io.FileNotFoundException, java.io.IOException, java.net.URISyntaxException
{
java.util.Enumeration v;
com.sun.enterprise.universal.glassfish.TokenResolver v;
java.util.HashMap v;
int v, v;
java.lang.String v, v, v;
boolean v;
org.xml.sax.InputSource v;
java.util.Properties v;
java.io.CharArrayWriter v;
java.io.Reader v;
java.io.StringReader v;
char[] v;
java.lang.Object v;
v := @parameter: java.io.Reader;
v = newarray (char)[1024];
v = new java.io.CharArrayWriter;
specialinvoke v.<java.io.CharArrayWriter: void <init>()>();
label:
v = virtualinvoke v.<java.io.Reader: int read(char[])>(v);
v = (int) -1;
if v == v goto label;
virtualinvoke v.<java.io.CharArrayWriter: void write(char[],int,int)>(v, 0, v);
goto label;
label:
virtualinvoke v.<java.io.CharArrayWriter: void close()>();
virtualinvoke v.<java.io.Reader: void close()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = staticinvoke <java.lang.System: java.util.Properties getProperties()>();
v = virtualinvoke v.<java.util.Properties: java.util.Enumeration propertyNames()>();
label:
v = interfaceinvoke v.<java.util.Enumeration: boolean hasMoreElements()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Enumeration: java.lang.Object nextElement()>();
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = new com.sun.enterprise.universal.glassfish.TokenResolver;
specialinvoke v.<com.sun.enterprise.universal.glassfish.TokenResolver: void <init>(java.util.Map)>(v);
v = virtualinvoke v.<java.io.CharArrayWriter: java.lang.String toString()>();
v = virtualinvoke v.<com.sun.enterprise.universal.glassfish.TokenResolver: java.lang.String resolve(java.lang.String)>(v);
v = new org.xml.sax.InputSource;
v = new java.io.StringReader;
specialinvoke v.<java.io.StringReader: void <init>(java.lang.String)>(v);
specialinvoke v.<org.xml.sax.InputSource: void <init>(java.io.Reader)>(v);
return v;
}
private static java.io.File checkXMLFile(java.lang.String) throws org.glassfish.appclient.client.acc.UserError
{
java.lang.String v;
java.io.File v;
java.lang.Exception v;
boolean v, v, v;
v := @parameter: java.lang.String;
label:
v = new java.io.File;
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v == 0 goto label;
v = virtualinvoke v.<java.io.File: boolean isFile()>();
if v == 0 goto label;
v = virtualinvoke v.<java.io.File: boolean canRead()>();
if v == 0 goto label;
label:
return v;
label:
staticinvoke <org.glassfish.appclient.client.AppClientFacade: void xmlMessage(java.lang.String)>(v);
label:
return null;
label:
v := @caughtexception;
staticinvoke <org.glassfish.appclient.client.AppClientFacade: void xmlMessage(java.lang.String)>(v);
return null;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
}
private static void xmlMessage(java.lang.String) throws org.glassfish.appclient.client.acc.UserError
{
com.sun.enterprise.util.LocalStringManager v;
org.glassfish.appclient.client.acc.UserError v;
java.lang.Class v;
java.lang.String[] v;
java.lang.String v, v, v;
v := @parameter: java.lang.String;
v = new org.glassfish.appclient.client.acc.UserError;
v = <org.glassfish.appclient.client.AppClientFacade: com.sun.enterprise.util.LocalStringManager localStrings>;
v = <org.glassfish.appclient.client.AppClientFacade: java.lang.Class stringsAnchor>;
v = newarray (java.lang.String)[1];
v[0] = v;
v = interfaceinvoke v.<com.sun.enterprise.util.LocalStringManager: java.lang.String getLocalString(java.lang.Class,java.lang.String,java.lang.String,java.lang.Object[])>(v, "main.cannot_read_clientContainer_xml", "Client Container xml: {0} not found or unable to read.\nYou may want to use the -xml option to locate your configuration xml.", v);
specialinvoke v.<org.glassfish.appclient.client.acc.UserError: void <init>(java.lang.String)>(v);
v = staticinvoke <org.glassfish.appclient.client.AppClientFacade: java.lang.String getUsage()>();
virtualinvoke v.<org.glassfish.appclient.client.acc.UserError: void setUsage(java.lang.String)>(v);
throw v;
}
static void <clinit>()
{
java.lang.Class v;
java.lang.String v;
com.sun.enterprise.util.LocalStringManagerImpl v;
v = staticinvoke <java.lang.System: java.lang.String lineSeparator()>();
<org.glassfish.appclient.client.AppClientFacade: java.lang.String LINE_SEP> = v;
<org.glassfish.appclient.client.AppClientFacade: java.lang.Class stringsAnchor> = class "Lorg/glassfish/appclient/client/acc/ACCClassLoader;";
v = new com.sun.enterprise.util.LocalStringManagerImpl;
v = <org.glassfish.appclient.client.AppClientFacade: java.lang.Class stringsAnchor>;
specialinvoke v.<com.sun.enterprise.util.LocalStringManagerImpl: void <init>(java.lang.Class)>(v);
<org.glassfish.appclient.client.AppClientFacade: com.sun.enterprise.util.LocalStringManager localStrings> = v;
return;
}
}