public class org.apache.commons.io.file.DeletingPathVisitor extends org.apache.commons.io.file.CountingPathVisitor
{
private final java.lang.String[] skip;
private final boolean overrideReadOnly;
private final java.nio.file.LinkOption[] linkOptions;
public static org.apache.commons.io.file.DeletingPathVisitor withBigIntegerCounters()
{
java.lang.String[] v;
org.apache.commons.io.file.DeletingPathVisitor v;
org.apache.commons.io.file.Counters$PathCounters v;
v = new org.apache.commons.io.file.DeletingPathVisitor;
v = staticinvoke <org.apache.commons.io.file.Counters: org.apache.commons.io.file.Counters$PathCounters bigIntegerPathCounters()>();
v = newarray (java.lang.String)[0];
specialinvoke v.<org.apache.commons.io.file.DeletingPathVisitor: void <init>(org.apache.commons.io.file.Counters$PathCounters,java.lang.String[])>(v, v);
return v;
}
public static org.apache.commons.io.file.DeletingPathVisitor withLongCounters()
{
java.lang.String[] v;
org.apache.commons.io.file.DeletingPathVisitor v;
org.apache.commons.io.file.Counters$PathCounters v;
v = new org.apache.commons.io.file.DeletingPathVisitor;
v = staticinvoke <org.apache.commons.io.file.Counters: org.apache.commons.io.file.Counters$PathCounters longPathCounters()>();
v = newarray (java.lang.String)[0];
specialinvoke v.<org.apache.commons.io.file.DeletingPathVisitor: void <init>(org.apache.commons.io.file.Counters$PathCounters,java.lang.String[])>(v, v);
return v;
}
public transient void <init>(org.apache.commons.io.file.Counters$PathCounters, org.apache.commons.io.file.DeleteOption[], java.lang.String[])
{
java.nio.file.LinkOption[] v;
org.apache.commons.io.file.Counters$PathCounters v;
java.lang.String[] v;
org.apache.commons.io.file.DeletingPathVisitor v;
org.apache.commons.io.file.DeleteOption[] v;
v := @this: org.apache.commons.io.file.DeletingPathVisitor;
v := @parameter: org.apache.commons.io.file.Counters$PathCounters;
v := @parameter: org.apache.commons.io.file.DeleteOption[];
v := @parameter: java.lang.String[];
v = <org.apache.commons.io.file.PathUtils: java.nio.file.LinkOption[] NOFOLLOW_LINK_OPTION_ARRAY>;
specialinvoke v.<org.apache.commons.io.file.DeletingPathVisitor: void <init>(org.apache.commons.io.file.Counters$PathCounters,java.nio.file.LinkOption[],org.apache.commons.io.file.DeleteOption[],java.lang.String[])>(v, v, v, v);
return;
}
public transient void <init>(org.apache.commons.io.file.Counters$PathCounters, java.nio.file.LinkOption[], org.apache.commons.io.file.DeleteOption[], java.lang.String[])
{
java.nio.file.LinkOption[] v, v;
java.lang.String[] v;
org.apache.commons.io.file.DeleteOption[] v;
org.apache.commons.io.file.Counters$PathCounters v;
java.lang.Object v, v;
org.apache.commons.io.file.DeletingPathVisitor v;
boolean v;
v := @this: org.apache.commons.io.file.DeletingPathVisitor;
v := @parameter: org.apache.commons.io.file.Counters$PathCounters;
v := @parameter: java.nio.file.LinkOption[];
v := @parameter: org.apache.commons.io.file.DeleteOption[];
v := @parameter: java.lang.String[];
specialinvoke v.<org.apache.commons.io.file.CountingPathVisitor: void <init>(org.apache.commons.io.file.Counters$PathCounters)>(v);
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Object clone()>();
goto label;
label:
v = <org.apache.commons.io.file.DeletingPathVisitor: java.lang.String[] EMPTY_STRING_ARRAY>;
label:
staticinvoke <java.util.Arrays: void sort(java.lang.Object[])>(v);
v.<org.apache.commons.io.file.DeletingPathVisitor: java.lang.String[] skip> = v;
v = staticinvoke <org.apache.commons.io.file.StandardDeleteOption: boolean overrideReadOnly(org.apache.commons.io.file.DeleteOption[])>(v);
v.<org.apache.commons.io.file.DeletingPathVisitor: boolean overrideReadOnly> = v;
if v != null goto label;
v = <org.apache.commons.io.file.PathUtils: java.nio.file.LinkOption[] NOFOLLOW_LINK_OPTION_ARRAY>;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Object clone()>();
label:
v.<org.apache.commons.io.file.DeletingPathVisitor: java.nio.file.LinkOption[] linkOptions> = v;
return;
}
public transient void <init>(org.apache.commons.io.file.Counters$PathCounters, java.lang.String[])
{
org.apache.commons.io.file.Counters$PathCounters v;
java.lang.String[] v;
org.apache.commons.io.file.DeletingPathVisitor v;
org.apache.commons.io.file.DeleteOption[] v;
v := @this: org.apache.commons.io.file.DeletingPathVisitor;
v := @parameter: org.apache.commons.io.file.Counters$PathCounters;
v := @parameter: java.lang.String[];
v = <org.apache.commons.io.file.PathUtils: org.apache.commons.io.file.DeleteOption[] EMPTY_DELETE_OPTION_ARRAY>;
specialinvoke v.<org.apache.commons.io.file.DeletingPathVisitor: void <init>(org.apache.commons.io.file.Counters$PathCounters,org.apache.commons.io.file.DeleteOption[],java.lang.String[])>(v, v, v);
return;
}
private boolean accept(java.nio.file.Path)
{
int v;
java.lang.String[] v;
java.lang.String v;
org.apache.commons.io.file.DeletingPathVisitor v;
java.nio.file.Path v, v;
boolean v;
v := @this: org.apache.commons.io.file.DeletingPathVisitor;
v := @parameter: java.nio.file.Path;
v = v.<org.apache.commons.io.file.DeletingPathVisitor: java.lang.String[] skip>;
v = interfaceinvoke v.<java.nio.file.Path: java.nio.file.Path getFileName()>();
v = staticinvoke <java.util.Objects: java.lang.String toString(java.lang.Object,java.lang.String)>(v, null);
v = staticinvoke <java.util.Arrays: int binarySearch(java.lang.Object[],java.lang.Object)>(v, v);
if v >= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean equals(java.lang.Object)
{
java.lang.String[] v, v;
java.lang.Class v, v;
java.lang.Object v;
org.apache.commons.io.file.DeletingPathVisitor v;
boolean v, v, v, v, v;
v := @this: org.apache.commons.io.file.DeletingPathVisitor;
v := @parameter: java.lang.Object;
if v != v goto label;
return 1;
label:
v = specialinvoke v.<org.apache.commons.io.file.CountingPathVisitor: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
return 0;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
if v == v goto label;
return 0;
label:
v = v.<org.apache.commons.io.file.DeletingPathVisitor: boolean overrideReadOnly>;
v = v.<org.apache.commons.io.file.DeletingPathVisitor: boolean overrideReadOnly>;
if v != v goto label;
v = v.<org.apache.commons.io.file.DeletingPathVisitor: java.lang.String[] skip>;
v = v.<org.apache.commons.io.file.DeletingPathVisitor: java.lang.String[] skip>;
v = staticinvoke <java.util.Arrays: boolean equals(java.lang.Object[],java.lang.Object[])>(v, v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public int hashCode()
{
java.lang.Object[] v;
java.lang.String[] v;
int v, v, v, v, v, v, v;
java.lang.Boolean v;
org.apache.commons.io.file.DeletingPathVisitor v;
boolean v;
v := @this: org.apache.commons.io.file.DeletingPathVisitor;
v = specialinvoke v.<org.apache.commons.io.file.CountingPathVisitor: int hashCode()>();
v = 31 * v;
v = v.<org.apache.commons.io.file.DeletingPathVisitor: java.lang.String[] skip>;
v = staticinvoke <java.util.Arrays: int hashCode(java.lang.Object[])>(v);
v = v + v;
v = 31 * v;
v = newarray (java.lang.Object)[1];
v = v.<org.apache.commons.io.file.DeletingPathVisitor: boolean overrideReadOnly>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
v[0] = v;
v = staticinvoke <java.util.Objects: int hash(java.lang.Object[])>(v);
v = v + v;
return v;
}
public java.nio.file.FileVisitResult postVisitDirectory(java.nio.file.Path, java.io.IOException) throws java.io.IOException
{
java.nio.file.FileVisitResult v;
java.io.IOException v;
org.apache.commons.io.file.DeletingPathVisitor v;
java.nio.file.Path v;
boolean v;
v := @this: org.apache.commons.io.file.DeletingPathVisitor;
v := @parameter: java.nio.file.Path;
v := @parameter: java.io.IOException;
v = staticinvoke <org.apache.commons.io.file.PathUtils: boolean isEmptyDirectory(java.nio.file.Path)>(v);
if v == 0 goto label;
staticinvoke <java.nio.file.Files: boolean deleteIfExists(java.nio.file.Path)>(v);
label:
v = specialinvoke v.<org.apache.commons.io.file.CountingPathVisitor: java.nio.file.FileVisitResult postVisitDirectory(java.nio.file.Path,java.io.IOException)>(v, v);
return v;
}
public java.nio.file.FileVisitResult preVisitDirectory(java.nio.file.Path, java.nio.file.attribute.BasicFileAttributes) throws java.io.IOException
{
java.nio.file.FileVisitResult v;
org.apache.commons.io.file.DeletingPathVisitor v;
java.nio.file.attribute.BasicFileAttributes v;
java.nio.file.Path v;
boolean v;
v := @this: org.apache.commons.io.file.DeletingPathVisitor;
v := @parameter: java.nio.file.Path;
v := @parameter: java.nio.file.attribute.BasicFileAttributes;
specialinvoke v.<org.apache.commons.io.file.CountingPathVisitor: java.nio.file.FileVisitResult preVisitDirectory(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)>(v, v);
v = specialinvoke v.<org.apache.commons.io.file.DeletingPathVisitor: boolean accept(java.nio.file.Path)>(v);
if v == 0 goto label;
v = <java.nio.file.FileVisitResult: java.nio.file.FileVisitResult CONTINUE>;
goto label;
label:
v = <java.nio.file.FileVisitResult: java.nio.file.FileVisitResult SKIP_SUBTREE>;
label:
return v;
}
public java.nio.file.FileVisitResult visitFile(java.nio.file.Path, java.nio.file.attribute.BasicFileAttributes) throws java.io.IOException
{
java.nio.file.NoSuchFileException v;
java.nio.file.LinkOption[] v, v;
java.nio.file.attribute.BasicFileAttributes v;
java.nio.file.FileVisitResult v;
org.apache.commons.io.file.DeletingPathVisitor v;
java.nio.file.Path v;
boolean v, v, v, v;
v := @this: org.apache.commons.io.file.DeletingPathVisitor;
v := @parameter: java.nio.file.Path;
v := @parameter: java.nio.file.attribute.BasicFileAttributes;
v = specialinvoke v.<org.apache.commons.io.file.DeletingPathVisitor: boolean accept(java.nio.file.Path)>(v);
if v == 0 goto label;
v = v.<org.apache.commons.io.file.DeletingPathVisitor: java.nio.file.LinkOption[] linkOptions>;
v = staticinvoke <java.nio.file.Files: boolean exists(java.nio.file.Path,java.nio.file.LinkOption[])>(v, v);
if v == 0 goto label;
v = v.<org.apache.commons.io.file.DeletingPathVisitor: boolean overrideReadOnly>;
if v == 0 goto label;
v = v.<org.apache.commons.io.file.DeletingPathVisitor: java.nio.file.LinkOption[] linkOptions>;
staticinvoke <org.apache.commons.io.file.PathUtils: java.nio.file.Path setReadOnly(java.nio.file.Path,boolean,java.nio.file.LinkOption[])>(v, 0, v);
label:
staticinvoke <java.nio.file.Files: boolean deleteIfExists(java.nio.file.Path)>(v);
label:
v = staticinvoke <java.nio.file.Files: boolean isSymbolicLink(java.nio.file.Path)>(v);
if v == 0 goto label;
label:
staticinvoke <java.nio.file.Files: void delete(java.nio.file.Path)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
virtualinvoke v.<org.apache.commons.io.file.DeletingPathVisitor: void updateFileCounters(java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes)>(v, v);
v = <java.nio.file.FileVisitResult: java.nio.file.FileVisitResult CONTINUE>;
return v;
catch java.nio.file.NoSuchFileException from label to label with label;
}
}