class oadd.org.apache.hadoop.fs.shell.Tail extends oadd.org.apache.hadoop.fs.shell.FsCommand
{
public static final java.lang.String NAME;
public static final java.lang.String USAGE;
public static final java.lang.String DESCRIPTION;
private long startingOffset;
private boolean follow;
private long followDelay;
void <init>()
{
oadd.org.apache.hadoop.fs.shell.Tail v;
v := @this: oadd.org.apache.hadoop.fs.shell.Tail;
specialinvoke v.<oadd.org.apache.hadoop.fs.shell.FsCommand: void <init>()>();
v.<oadd.org.apache.hadoop.fs.shell.Tail: long startingOffset> = -1024L;
v.<oadd.org.apache.hadoop.fs.shell.Tail: boolean follow> = 0;
v.<oadd.org.apache.hadoop.fs.shell.Tail: long followDelay> = 5000L;
return;
}
public static void registerCommands(oadd.org.apache.hadoop.fs.shell.CommandFactory)
{
java.lang.String[] v;
oadd.org.apache.hadoop.fs.shell.CommandFactory v;
v := @parameter: oadd.org.apache.hadoop.fs.shell.CommandFactory;
v = newarray (java.lang.String)[1];
v[0] = "-tail";
virtualinvoke v.<oadd.org.apache.hadoop.fs.shell.CommandFactory: void addClass(java.lang.Class,java.lang.String[])>(class "Loadd/org/apache/hadoop/fs/shell/Tail;", v);
return;
}
public long getFollowDelay()
{
long v;
oadd.org.apache.hadoop.fs.shell.Tail v;
v := @this: oadd.org.apache.hadoop.fs.shell.Tail;
v = v.<oadd.org.apache.hadoop.fs.shell.Tail: long followDelay>;
return v;
}
protected void processOptions(java.util.LinkedList) throws java.io.IOException
{
oadd.org.apache.hadoop.fs.shell.Tail v;
java.lang.String[] v;
long v;
oadd.org.apache.hadoop.fs.shell.CommandFormat v;
byte v;
java.lang.String v;
java.util.LinkedList v;
boolean v, v, v;
v := @this: oadd.org.apache.hadoop.fs.shell.Tail;
v := @parameter: java.util.LinkedList;
v = new oadd.org.apache.hadoop.fs.shell.CommandFormat;
v = newarray (java.lang.String)[1];
v[0] = "f";
specialinvoke v.<oadd.org.apache.hadoop.fs.shell.CommandFormat: void <init>(int,int,java.lang.String[])>(1, 1, v);
virtualinvoke v.<oadd.org.apache.hadoop.fs.shell.CommandFormat: void addOptionWithValue(java.lang.String)>("s");
virtualinvoke v.<oadd.org.apache.hadoop.fs.shell.CommandFormat: void parse(java.util.List)>(v);
v = virtualinvoke v.<oadd.org.apache.hadoop.fs.shell.CommandFormat: boolean getOpt(java.lang.String)>("f");
v.<oadd.org.apache.hadoop.fs.shell.Tail: boolean follow> = v;
v = v.<oadd.org.apache.hadoop.fs.shell.Tail: boolean follow>;
if v == 0 goto label;
v = virtualinvoke v.<oadd.org.apache.hadoop.fs.shell.CommandFormat: java.lang.String getOptValue(java.lang.String)>("s");
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <java.lang.Long: long parseLong(java.lang.String)>(v);
v = v cmp 0L;
if v <= 0 goto label;
v.<oadd.org.apache.hadoop.fs.shell.Tail: long followDelay> = v;
label:
return;
}
protected java.util.List expandArgument(java.lang.String) throws java.io.IOException
{
oadd.org.apache.hadoop.fs.shell.PathData v;
oadd.org.apache.hadoop.fs.shell.Tail v;
oadd.org.apache.hadoop.conf.Configuration v;
java.lang.String v;
java.util.LinkedList v;
v := @this: oadd.org.apache.hadoop.fs.shell.Tail;
v := @parameter: java.lang.String;
v = new java.util.LinkedList;
specialinvoke v.<java.util.LinkedList: void <init>()>();
v = new oadd.org.apache.hadoop.fs.shell.PathData;
v = virtualinvoke v.<oadd.org.apache.hadoop.fs.shell.Tail: oadd.org.apache.hadoop.conf.Configuration getConf()>();
specialinvoke v.<oadd.org.apache.hadoop.fs.shell.PathData: void <init>(java.lang.String,oadd.org.apache.hadoop.conf.Configuration)>(v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
return v;
}
protected void processPath(oadd.org.apache.hadoop.fs.shell.PathData) throws java.io.IOException
{
oadd.org.apache.hadoop.fs.shell.PathData v;
oadd.org.apache.hadoop.fs.PathIsDirectoryException v;
oadd.org.apache.hadoop.fs.shell.Tail v;
long v, v, v;
oadd.org.apache.hadoop.fs.FileStatus v;
java.lang.InterruptedException v;
java.lang.String v;
boolean v, v;
v := @this: oadd.org.apache.hadoop.fs.shell.Tail;
v := @parameter: oadd.org.apache.hadoop.fs.shell.PathData;
v = v.<oadd.org.apache.hadoop.fs.shell.PathData: oadd.org.apache.hadoop.fs.FileStatus stat>;
v = virtualinvoke v.<oadd.org.apache.hadoop.fs.FileStatus: boolean isDirectory()>();
if v == 0 goto label;
v = new oadd.org.apache.hadoop.fs.PathIsDirectoryException;
v = virtualinvoke v.<oadd.org.apache.hadoop.fs.shell.PathData: java.lang.String toString()>();
specialinvoke v.<oadd.org.apache.hadoop.fs.PathIsDirectoryException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v.<oadd.org.apache.hadoop.fs.shell.Tail: long startingOffset>;
v = specialinvoke v.<oadd.org.apache.hadoop.fs.shell.Tail: long dumpFromOffset(oadd.org.apache.hadoop.fs.shell.PathData,long)>(v, v);
label:
v = v.<oadd.org.apache.hadoop.fs.shell.Tail: boolean follow>;
if v == 0 goto label;
label:
v = v.<oadd.org.apache.hadoop.fs.shell.Tail: long followDelay>;
staticinvoke <java.lang.Thread: void sleep(long)>(v);
label:
goto label;
label:
v := @caughtexception;
goto label;
label:
v = specialinvoke v.<oadd.org.apache.hadoop.fs.shell.Tail: long dumpFromOffset(oadd.org.apache.hadoop.fs.shell.PathData,long)>(v, v);
goto label;
label:
return;
catch java.lang.InterruptedException from label to label with label;
}
private long dumpFromOffset(oadd.org.apache.hadoop.fs.shell.PathData, long) throws java.io.IOException
{
java.io.PrintStream v;
java.lang.Throwable v;
oadd.org.apache.hadoop.fs.shell.PathData v;
oadd.org.apache.hadoop.fs.FSDataInputStream v;
oadd.org.apache.hadoop.fs.shell.Tail v;
long v, v, v, v;
byte v, v;
oadd.org.apache.hadoop.fs.FileStatus v;
oadd.org.apache.hadoop.conf.Configuration v;
oadd.org.apache.hadoop.fs.Path v;
oadd.org.apache.hadoop.fs.FileSystem v;
v := @this: oadd.org.apache.hadoop.fs.shell.Tail;
v := @parameter: oadd.org.apache.hadoop.fs.shell.PathData;
v := @parameter: long;
v = virtualinvoke v.<oadd.org.apache.hadoop.fs.shell.PathData: oadd.org.apache.hadoop.fs.FileStatus refreshStatus()>();
v = virtualinvoke v.<oadd.org.apache.hadoop.fs.FileStatus: long getLen()>();
v = v cmp v;
if v <= 0 goto label;
return v;
label:
v = v cmp 0L;
if v >= 0 goto label;
v = v + v;
v = staticinvoke <java.lang.Math: long max(long,long)>(v, 0L);
label:
v = v.<oadd.org.apache.hadoop.fs.shell.PathData: oadd.org.apache.hadoop.fs.FileSystem fs>;
v = v.<oadd.org.apache.hadoop.fs.shell.PathData: oadd.org.apache.hadoop.fs.Path path>;
v = virtualinvoke v.<oadd.org.apache.hadoop.fs.FileSystem: oadd.org.apache.hadoop.fs.FSDataInputStream open(oadd.org.apache.hadoop.fs.Path)>(v);
label:
virtualinvoke v.<oadd.org.apache.hadoop.fs.FSDataInputStream: void seek(long)>(v);
v = <java.lang.System: java.io.PrintStream out>;
v = virtualinvoke v.<oadd.org.apache.hadoop.fs.shell.Tail: oadd.org.apache.hadoop.conf.Configuration getConf()>();
staticinvoke <oadd.org.apache.hadoop.io.IOUtils: void copyBytes(java.io.InputStream,java.io.OutputStream,oadd.org.apache.hadoop.conf.Configuration,boolean)>(v, v, v, 0);
v = virtualinvoke v.<oadd.org.apache.hadoop.fs.FSDataInputStream: long getPos()>();
label:
virtualinvoke v.<oadd.org.apache.hadoop.fs.FSDataInputStream: void close()>();
goto label;
label:
v := @caughtexception;
virtualinvoke v.<oadd.org.apache.hadoop.fs.FSDataInputStream: void close()>();
throw v;
label:
return v;
catch java.lang.Throwable from label to label with label;
}
}