public class oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser extends oadd.org.apache.commons.net.ftp.parser.ConfigurableFTPFileEntryParserImpl
{
private static final java.lang.String DEFAULT_DATE_FORMAT;
private static final java.lang.String REGEX;
public void <init>()
{
oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser v;
v := @this: oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser;
specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: void <init>(oadd.org.apache.commons.net.ftp.FTPClientConfig)>(null);
return;
}
public void <init>(oadd.org.apache.commons.net.ftp.FTPClientConfig)
{
oadd.org.apache.commons.net.ftp.FTPClientConfig v;
oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser v;
v := @this: oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser;
v := @parameter: oadd.org.apache.commons.net.ftp.FTPClientConfig;
specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.ConfigurableFTPFileEntryParserImpl: void <init>(java.lang.String)>("(\\S+)\\s+(?:(\\d+)\\s+)?(?:(\\S+)\\s+(\\S+)\\s+)?(\\*STMF|\\*DIR|\\*FILE|\\*MEM)\\s+((\\S+\\s*)+)?");
virtualinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: void configure(oadd.org.apache.commons.net.ftp.FTPClientConfig)>(v);
return;
}
protected oadd.org.apache.commons.net.ftp.FTPClientConfig getDefaultConfiguration()
{
oadd.org.apache.commons.net.ftp.FTPClientConfig v;
oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser v;
v := @this: oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser;
v = new oadd.org.apache.commons.net.ftp.FTPClientConfig;
specialinvoke v.<oadd.org.apache.commons.net.ftp.FTPClientConfig: void <init>(java.lang.String,java.lang.String,java.lang.String)>("OS/400", "yy/MM/dd HH:mm:ss", null);
return v;
}
private boolean isNullOrEmpty(java.lang.String)
{
java.lang.String v;
boolean v, v;
oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser v;
v := @this: oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser;
v := @parameter: java.lang.String;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public oadd.org.apache.commons.net.ftp.FTPFile parseFTPEntry(java.lang.String)
{
byte v;
java.util.Locale v;
java.text.ParseException v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
long v;
oadd.org.apache.commons.net.ftp.FTPFile v;
java.util.Calendar v;
int v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v;
char v;
java.lang.NumberFormatException v;
oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser v;
v := @this: oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser;
v := @parameter: java.lang.String;
v = new oadd.org.apache.commons.net.ftp.FTPFile;
specialinvoke v.<oadd.org.apache.commons.net.ftp.FTPFile: void <init>()>();
virtualinvoke v.<oadd.org.apache.commons.net.ftp.FTPFile: void setRawListing(java.lang.String)>(v);
v = virtualinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: boolean matches(java.lang.String)>(v);
if v == 0 goto label;
v = virtualinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: java.lang.String group(int)>(1);
v = virtualinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: java.lang.String group(int)>(2);
v = "";
v = virtualinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: java.lang.String group(int)>(3);
v = specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: boolean isNullOrEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = virtualinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: java.lang.String group(int)>(4);
v = specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: boolean isNullOrEmpty(java.lang.String)>(v);
if v != 0 goto label;
label:
v = virtualinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: java.lang.String group(int)>(3);
v = virtualinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: java.lang.String group(int)>(4);
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[])>("\u \u0001");
label:
v = virtualinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: java.lang.String group(int)>(5);
v = virtualinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: java.lang.String group(int)>(6);
v = 1;
label:
v = specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.ConfigurableFTPFileEntryParserImpl: java.util.Calendar parseTimestamp(java.lang.String)>(v);
virtualinvoke v.<oadd.org.apache.commons.net.ftp.FTPFile: void setTimestamp(java.util.Calendar)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>("*STMF");
if v == 0 goto label;
v = 0;
v = specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: boolean isNullOrEmpty(java.lang.String)>(v);
if v != 0 goto label;
v = specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: boolean isNullOrEmpty(java.lang.String)>(v);
if v == 0 goto label;
label:
return null;
label:
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>("*DIR");
if v == 0 goto label;
v = 1;
v = specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: boolean isNullOrEmpty(java.lang.String)>(v);
if v != 0 goto label;
v = specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: boolean isNullOrEmpty(java.lang.String)>(v);
if v == 0 goto label;
label:
return null;
label:
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>("*FILE");
if v == 0 goto label;
if v == null goto label;
v = <java.util.Locale: java.util.Locale ROOT>;
v = virtualinvoke v.<java.lang.String: java.lang.String toUpperCase(java.util.Locale)>(v);
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>(".SAVF");
if v != 0 goto label;
label:
return null;
label:
v = 0;
v = 0;
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>("*MEM");
if v == 0 goto label;
v = 0;
v = 0;
v = specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: boolean isNullOrEmpty(java.lang.String)>(v);
if v == 0 goto label;
return null;
label:
v = specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: boolean isNullOrEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = specialinvoke v.<oadd.org.apache.commons.net.ftp.parser.OS400FTPEntryParser: boolean isNullOrEmpty(java.lang.String)>(v);
if v != 0 goto label;
label:
return null;
label:
v = <java.io.File: char separatorChar>;
v = virtualinvoke v.<java.lang.String: java.lang.String replace(char,char)>(47, v);
goto label;
label:
v = 3;
label:
virtualinvoke v.<oadd.org.apache.commons.net.ftp.FTPFile: void setType(int)>(v);
virtualinvoke v.<oadd.org.apache.commons.net.ftp.FTPFile: void setUser(java.lang.String)>(v);
label:
v = staticinvoke <java.lang.Long: long parseLong(java.lang.String)>(v);
virtualinvoke v.<oadd.org.apache.commons.net.ftp.FTPFile: void setSize(long)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("/");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
label:
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(47);
v = (int) -1;
if v <= v goto label;
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
label:
virtualinvoke v.<oadd.org.apache.commons.net.ftp.FTPFile: void setName(java.lang.String)>(v);
return v;
label:
return null;
catch java.text.ParseException from label to label with label;
catch java.lang.NumberFormatException from label to label with label;
}
}