public class org.apache.log4j.net.SocketServer extends java.lang.Object
{
static java.lang.String GENERIC;
static java.lang.String CONFIG_FILE_EXT;
static org.apache.log4j.Logger cat;
static org.apache.log4j.net.SocketServer server;
static int port;
java.util.Hashtable hierarchyMap;
org.apache.log4j.spi.LoggerRepository genericHierarchy;
java.io.File dir;
public static void main(java.lang.String[])
{
java.net.Socket v;
java.lang.String[] v;
java.net.InetAddress v;
java.net.ServerSocket v;
org.apache.log4j.Logger v, v, v, v;
java.lang.Thread v;
int v, v, v;
java.lang.String v, v, v, v, v;
java.util.Hashtable v;
org.apache.log4j.net.SocketServer v, v;
java.lang.Object v;
org.apache.log4j.net.SocketNode v;
v := @parameter: java.lang.String[];
v = lengthof v;
if v != 3 goto label;
v = v[0];
v = v[1];
v = v[2];
staticinvoke <org.apache.log4j.net.SocketServer: void init(java.lang.String,java.lang.String,java.lang.String)>(v, v, v);
goto label;
label:
staticinvoke <org.apache.log4j.net.SocketServer: void usage(java.lang.String)>("Wrong number of arguments.");
label:
v = <org.apache.log4j.net.SocketServer: org.apache.log4j.Logger cat>;
v = <org.apache.log4j.net.SocketServer: int port>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("Listening on port \u0001");
virtualinvoke v.<org.apache.log4j.Logger: void info(java.lang.Object)>(v);
v = new java.net.ServerSocket;
v = <org.apache.log4j.net.SocketServer: int port>;
specialinvoke v.<java.net.ServerSocket: void <init>(int)>(v);
label:
v = <org.apache.log4j.net.SocketServer: org.apache.log4j.Logger cat>;
virtualinvoke v.<org.apache.log4j.Logger: void info(java.lang.Object)>("Waiting to accept a new client.");
v = virtualinvoke v.<java.net.ServerSocket: java.net.Socket accept()>();
v = virtualinvoke v.<java.net.Socket: java.net.InetAddress getInetAddress()>();
v = <org.apache.log4j.net.SocketServer: org.apache.log4j.Logger cat>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.net.InetAddress)>(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[])>("Connected to client at \u0001");
virtualinvoke v.<org.apache.log4j.Logger: void info(java.lang.Object)>(v);
v = <org.apache.log4j.net.SocketServer: org.apache.log4j.net.SocketServer server>;
v = v.<org.apache.log4j.net.SocketServer: java.util.Hashtable hierarchyMap>;
v = virtualinvoke v.<java.util.Hashtable: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = <org.apache.log4j.net.SocketServer: org.apache.log4j.net.SocketServer server>;
v = virtualinvoke v.<org.apache.log4j.net.SocketServer: org.apache.log4j.spi.LoggerRepository configureHierarchy(java.net.InetAddress)>(v);
label:
v = <org.apache.log4j.net.SocketServer: org.apache.log4j.Logger cat>;
virtualinvoke v.<org.apache.log4j.Logger: void info(java.lang.Object)>("Starting new socket node.");
v = new java.lang.Thread;
v = new org.apache.log4j.net.SocketNode;
specialinvoke v.<org.apache.log4j.net.SocketNode: void <init>(java.net.Socket,org.apache.log4j.spi.LoggerRepository)>(v, v);
specialinvoke v.<java.lang.Thread: void <init>(java.lang.Runnable)>(v);
virtualinvoke v.<java.lang.Thread: void start()>();
goto label;
}
static void usage(java.lang.String)
{
java.io.PrintStream v, v;
java.lang.Class v;
java.lang.String v, v, v;
v := @parameter: java.lang.String;
v = <java.lang.System: java.io.PrintStream err>;
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
v = <java.lang.System: java.io.PrintStream err>;
v = class "Lorg/apache/log4j/net/SocketServer;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Usage: java \u port configFile directory");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
staticinvoke <java.lang.System: void exit(int)>(1);
return;
}
static void init(java.lang.String, java.lang.String, java.lang.String)
{
org.apache.log4j.net.SocketServer v;
java.lang.NumberFormatException v;
java.io.File v;
int v;
java.lang.String v, v, v, v, v;
boolean v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
label:
v = staticinvoke <java.lang.Integer: int parseInt(java.lang.String)>(v);
<org.apache.log4j.net.SocketServer: int port> = v;
label:
goto label;
label:
v := @caughtexception;
virtualinvoke v.<java.lang.NumberFormatException: void printStackTrace()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Could not interpret port number [\u].");
staticinvoke <org.apache.log4j.net.SocketServer: void usage(java.lang.String)>(v);
label:
staticinvoke <org.apache.log4j.PropertyConfigurator: void configure(java.lang.String)>(v);
v = new java.io.File;
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v = virtualinvoke v.<java.io.File: boolean isDirectory()>();
if v != 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("[\u] is not a directory.");
staticinvoke <org.apache.log4j.net.SocketServer: void usage(java.lang.String)>(v);
label:
v = new org.apache.log4j.net.SocketServer;
specialinvoke v.<org.apache.log4j.net.SocketServer: void <init>(java.io.File)>(v);
<org.apache.log4j.net.SocketServer: org.apache.log4j.net.SocketServer server> = v;
return;
catch java.lang.NumberFormatException from label to label with label;
}
public void <init>(java.io.File)
{
org.apache.log4j.net.SocketServer v;
java.io.File v;
java.util.Hashtable v;
v := @this: org.apache.log4j.net.SocketServer;
v := @parameter: java.io.File;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.log4j.net.SocketServer: java.io.File dir> = v;
v = new java.util.Hashtable;
specialinvoke v.<java.util.Hashtable: void <init>(int)>(11);
v.<org.apache.log4j.net.SocketServer: java.util.Hashtable hierarchyMap> = v;
return;
}
org.apache.log4j.spi.LoggerRepository configureHierarchy(java.net.InetAddress)
{
org.apache.log4j.PropertyConfigurator v;
org.apache.log4j.Hierarchy v;
java.net.InetAddress v;
org.apache.log4j.Logger v, v, v;
org.apache.log4j.Level v;
int v, v;
java.lang.String v, v, v, v, v, v, v, v;
java.util.Hashtable v;
boolean v;
org.apache.log4j.spi.RootLogger v;
org.apache.log4j.net.SocketServer v;
java.io.File v, v;
org.apache.log4j.spi.LoggerRepository v, v;
v := @this: org.apache.log4j.net.SocketServer;
v := @parameter: java.net.InetAddress;
v = <org.apache.log4j.net.SocketServer: org.apache.log4j.Logger cat>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.net.InetAddress)>(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[])>("Locating configuration file for \u0001");
virtualinvoke v.<org.apache.log4j.Logger: void info(java.lang.Object)>(v);
v = virtualinvoke v.<java.net.InetAddress: java.lang.String toString()>();
v = virtualinvoke v.<java.lang.String: int indexOf(java.lang.String)>("/");
v = (int) -1;
if v != v goto label;
v = <org.apache.log4j.net.SocketServer: org.apache.log4j.Logger cat>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.net.InetAddress)>(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[])>("Could not parse the inetAddress [\u]. Using default hierarchy.");
virtualinvoke v.<org.apache.log4j.Logger: void warn(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.log4j.net.SocketServer: org.apache.log4j.spi.LoggerRepository genericHierarchy()>();
return v;
label:
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
label:
v = new java.io.File;
v = v.<org.apache.log4j.net.SocketServer: java.io.File dir>;
v = <org.apache.log4j.net.SocketServer: java.lang.String CONFIG_FILE_EXT>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(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");
specialinvoke v.<java.io.File: void <init>(java.io.File,java.lang.String)>(v, v);
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v == 0 goto label;
v = new org.apache.log4j.Hierarchy;
v = new org.apache.log4j.spi.RootLogger;
v = <org.apache.log4j.Level: org.apache.log4j.Level DEBUG>;
specialinvoke v.<org.apache.log4j.spi.RootLogger: void <init>(org.apache.log4j.Level)>(v);
specialinvoke v.<org.apache.log4j.Hierarchy: void <init>(org.apache.log4j.Logger)>(v);
v = v.<org.apache.log4j.net.SocketServer: java.util.Hashtable hierarchyMap>;
virtualinvoke v.<java.util.Hashtable: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = new org.apache.log4j.PropertyConfigurator;
specialinvoke v.<org.apache.log4j.PropertyConfigurator: void <init>()>();
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
virtualinvoke v.<org.apache.log4j.PropertyConfigurator: void doConfigure(java.lang.String,org.apache.log4j.spi.LoggerRepository)>(v, v);
return v;
label:
v = <org.apache.log4j.net.SocketServer: org.apache.log4j.Logger cat>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("Could not find config file [\u].");
virtualinvoke v.<org.apache.log4j.Logger: void warn(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.log4j.net.SocketServer: org.apache.log4j.spi.LoggerRepository genericHierarchy()>();
return v;
}
org.apache.log4j.spi.LoggerRepository genericHierarchy()
{
org.apache.log4j.PropertyConfigurator v;
org.apache.log4j.Hierarchy v;
org.apache.log4j.Logger v;
org.apache.log4j.Level v;
java.lang.String v, v, v, v, v;
boolean v;
org.apache.log4j.spi.RootLogger v;
org.apache.log4j.net.SocketServer v;
java.io.File v, v;
org.apache.log4j.spi.LoggerRepository v, v, v, v;
v := @this: org.apache.log4j.net.SocketServer;
v = v.<org.apache.log4j.net.SocketServer: org.apache.log4j.spi.LoggerRepository genericHierarchy>;
if v != null goto label;
v = new java.io.File;
v = v.<org.apache.log4j.net.SocketServer: java.io.File dir>;
v = <org.apache.log4j.net.SocketServer: java.lang.String GENERIC>;
v = <org.apache.log4j.net.SocketServer: java.lang.String CONFIG_FILE_EXT>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(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");
specialinvoke v.<java.io.File: void <init>(java.io.File,java.lang.String)>(v, v);
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v == 0 goto label;
v = new org.apache.log4j.Hierarchy;
v = new org.apache.log4j.spi.RootLogger;
v = <org.apache.log4j.Level: org.apache.log4j.Level DEBUG>;
specialinvoke v.<org.apache.log4j.spi.RootLogger: void <init>(org.apache.log4j.Level)>(v);
specialinvoke v.<org.apache.log4j.Hierarchy: void <init>(org.apache.log4j.Logger)>(v);
v.<org.apache.log4j.net.SocketServer: org.apache.log4j.spi.LoggerRepository genericHierarchy> = v;
v = new org.apache.log4j.PropertyConfigurator;
specialinvoke v.<org.apache.log4j.PropertyConfigurator: void <init>()>();
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = v.<org.apache.log4j.net.SocketServer: org.apache.log4j.spi.LoggerRepository genericHierarchy>;
virtualinvoke v.<org.apache.log4j.PropertyConfigurator: void doConfigure(java.lang.String,org.apache.log4j.spi.LoggerRepository)>(v, v);
goto label;
label:
v = <org.apache.log4j.net.SocketServer: org.apache.log4j.Logger cat>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("Could not find config file [\u]. Will use the default hierarchy.");
virtualinvoke v.<org.apache.log4j.Logger: void warn(java.lang.Object)>(v);
v = staticinvoke <org.apache.log4j.LogManager: org.apache.log4j.spi.LoggerRepository getLoggerRepository()>();
v.<org.apache.log4j.net.SocketServer: org.apache.log4j.spi.LoggerRepository genericHierarchy> = v;
label:
v = v.<org.apache.log4j.net.SocketServer: org.apache.log4j.spi.LoggerRepository genericHierarchy>;
return v;
}
static void <clinit>()
{
org.apache.log4j.Logger v;
<org.apache.log4j.net.SocketServer: java.lang.String GENERIC> = "generic";
<org.apache.log4j.net.SocketServer: java.lang.String CONFIG_FILE_EXT> = ".lcf";
v = staticinvoke <org.apache.log4j.Logger: org.apache.log4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/log4j/net/SocketServer;");
<org.apache.log4j.net.SocketServer: org.apache.log4j.Logger cat> = v;
return;
}
}