public class org.apache.tools.ant.taskdefs.CopyPath extends org.apache.tools.ant.Task
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.tools.ant.taskdefs.CopyPath
super_class: org.apache.tools.ant.Task
{
public static final java.lang.String ERROR_NO_DESTDIR;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "No destDir specified"
public static final java.lang.String ERROR_NO_PATH;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "No path specified"
public static final java.lang.String ERROR_NO_MAPPER;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "No mapper specified"
private static final org.apache.tools.ant.util.FileUtils FILE_UTILS;
descriptor: Lorg/apache/tools/ant/util/FileUtils;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private org.apache.tools.ant.util.FileNameMapper mapper;
descriptor: Lorg/apache/tools/ant/util/FileNameMapper;
flags: (0x0002) ACC_PRIVATE
private org.apache.tools.ant.types.Path path;
descriptor: Lorg/apache/tools/ant/types/Path;
flags: (0x0002) ACC_PRIVATE
private java.io.File destDir;
descriptor: Ljava/io/File;
flags: (0x0002) ACC_PRIVATE
private long granularity;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private boolean preserveLastModified;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic org.apache.tools.ant.util.FileUtils.getFileUtils:()Lorg/apache/tools/ant/util/FileUtils;
putstatic org.apache.tools.ant.taskdefs.CopyPath.FILE_UTILS:Lorg/apache/tools/ant/util/FileUtils;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.apache.tools.ant.Task.<init>:()V
1: aload 0
getstatic org.apache.tools.ant.taskdefs.CopyPath.FILE_UTILS:Lorg/apache/tools/ant/util/FileUtils;
invokevirtual org.apache.tools.ant.util.FileUtils.getFileTimestampGranularity:()J
putfield org.apache.tools.ant.taskdefs.CopyPath.granularity:J
2: aload 0
iconst_0
putfield org.apache.tools.ant.taskdefs.CopyPath.preserveLastModified:Z
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/tools/ant/taskdefs/CopyPath;
public void setDestDir(java.io.File);
descriptor: (Ljava/io/File;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.tools.ant.taskdefs.CopyPath.destDir:Ljava/io/File;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/tools/ant/taskdefs/CopyPath;
0 2 1 destDir Ljava/io/File;
MethodParameters:
Name Flags
destDir
public void add(org.apache.tools.ant.util.FileNameMapper);
descriptor: (Lorg/apache/tools/ant/util/FileNameMapper;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.tools.ant.taskdefs.CopyPath.mapper:Lorg/apache/tools/ant/util/FileNameMapper;
ifnull 2
1: new org.apache.tools.ant.BuildException
dup
ldc "Only one mapper allowed"
invokespecial org.apache.tools.ant.BuildException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.apache.tools.ant.taskdefs.CopyPath.mapper:Lorg/apache/tools/ant/util/FileNameMapper;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/tools/ant/taskdefs/CopyPath;
0 4 1 newmapper Lorg/apache/tools/ant/util/FileNameMapper;
MethodParameters:
Name Flags
newmapper
public void setPath(org.apache.tools.ant.types.Path);
descriptor: (Lorg/apache/tools/ant/types/Path;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.tools.ant.taskdefs.CopyPath.createPath:()Lorg/apache/tools/ant/types/Path;
aload 1
invokevirtual org.apache.tools.ant.types.Path.append:(Lorg/apache/tools/ant/types/Path;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/tools/ant/taskdefs/CopyPath;
0 2 1 s Lorg/apache/tools/ant/types/Path;
MethodParameters:
Name Flags
s
public void setPathRef(org.apache.tools.ant.types.Reference);
descriptor: (Lorg/apache/tools/ant/types/Reference;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.apache.tools.ant.taskdefs.CopyPath.createPath:()Lorg/apache/tools/ant/types/Path;
aload 1
invokevirtual org.apache.tools.ant.types.Path.setRefid:(Lorg/apache/tools/ant/types/Reference;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/tools/ant/taskdefs/CopyPath;
0 2 1 r Lorg/apache/tools/ant/types/Reference;
MethodParameters:
Name Flags
r
public org.apache.tools.ant.types.Path createPath();
descriptor: ()Lorg/apache/tools/ant/types/Path;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.tools.ant.taskdefs.CopyPath.path:Lorg/apache/tools/ant/types/Path;
ifnonnull 2
1: aload 0
new org.apache.tools.ant.types.Path
dup
aload 0
invokevirtual org.apache.tools.ant.taskdefs.CopyPath.getProject:()Lorg/apache/tools/ant/Project;
invokespecial org.apache.tools.ant.types.Path.<init>:(Lorg/apache/tools/ant/Project;)V
putfield org.apache.tools.ant.taskdefs.CopyPath.path:Lorg/apache/tools/ant/types/Path;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.tools.ant.taskdefs.CopyPath.path:Lorg/apache/tools/ant/types/Path;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/tools/ant/taskdefs/CopyPath;
public void setGranularity(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
putfield org.apache.tools.ant.taskdefs.CopyPath.granularity:J
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/tools/ant/taskdefs/CopyPath;
0 2 1 granularity J
MethodParameters:
Name Flags
granularity
public void setPreserveLastModified(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.apache.tools.ant.taskdefs.CopyPath.preserveLastModified:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/tools/ant/taskdefs/CopyPath;
0 2 1 preserveLastModified Z
MethodParameters:
Name Flags
preserveLastModified
protected void validateAttributes();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.tools.ant.taskdefs.CopyPath.destDir:Ljava/io/File;
ifnonnull 2
1: new org.apache.tools.ant.BuildException
dup
ldc "No destDir specified"
invokespecial org.apache.tools.ant.BuildException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.tools.ant.taskdefs.CopyPath.mapper:Lorg/apache/tools/ant/util/FileNameMapper;
ifnonnull 4
3: new org.apache.tools.ant.BuildException
dup
ldc "No mapper specified"
invokespecial org.apache.tools.ant.BuildException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.tools.ant.taskdefs.CopyPath.path:Lorg/apache/tools/ant/types/Path;
ifnonnull 6
5: new org.apache.tools.ant.BuildException
dup
ldc "No path specified"
invokespecial org.apache.tools.ant.BuildException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/tools/ant/taskdefs/CopyPath;
Exceptions:
throws org.apache.tools.ant.BuildException
public void execute();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=15, args_size=1
start local 0 0: aload 0
ldc "This task should have never been released and was obsoleted by ResourceCollection support in <copy> available since Ant 1.7.0. Don't use it."
1: iconst_0
2: invokevirtual org.apache.tools.ant.taskdefs.CopyPath.log:(Ljava/lang/String;I)V
3: aload 0
invokevirtual org.apache.tools.ant.taskdefs.CopyPath.validateAttributes:()V
4: aload 0
getfield org.apache.tools.ant.taskdefs.CopyPath.path:Lorg/apache/tools/ant/types/Path;
invokevirtual org.apache.tools.ant.types.Path.list:()[Ljava/lang/String;
astore 1
start local 1 5: aload 1
arraylength
ifne 8
6: aload 0
ldc "Path is empty"
iconst_3
invokevirtual org.apache.tools.ant.taskdefs.CopyPath.log:(Ljava/lang/String;I)V
7: return
8: StackMap locals: java.lang.String[]
StackMap stack:
aload 1
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 38
StackMap locals: org.apache.tools.ant.taskdefs.CopyPath java.lang.String[] top int int java.lang.String[]
StackMap stack:
9: aload 5
iload 3
aaload
astore 2
start local 2 10: new java.io.File
dup
aload 2
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 6
start local 6 11: aload 0
getfield org.apache.tools.ant.taskdefs.CopyPath.mapper:Lorg/apache/tools/ant/util/FileNameMapper;
aload 2
invokeinterface org.apache.tools.ant.util.FileNameMapper.mapFileName:(Ljava/lang/String;)[Ljava/lang/String;
astore 7
start local 7 12: aload 7
ifnonnull 14
13: goto 37
14: StackMap locals: org.apache.tools.ant.taskdefs.CopyPath java.lang.String[] java.lang.String int int java.lang.String[] java.io.File java.lang.String[]
StackMap stack:
aload 7
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 36
StackMap locals: org.apache.tools.ant.taskdefs.CopyPath java.lang.String[] java.lang.String int int java.lang.String[] java.io.File java.lang.String[] top int int java.lang.String[]
StackMap stack:
15: aload 11
iload 9
aaload
astore 8
start local 8 16: new java.io.File
dup
aload 0
getfield org.apache.tools.ant.taskdefs.CopyPath.destDir:Ljava/io/File;
aload 8
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 12
start local 12 17: aload 6
aload 12
invokevirtual java.io.File.equals:(Ljava/lang/Object;)Z
ifeq 20
18: aload 0
new java.lang.StringBuilder
dup
ldc "Skipping self-copy of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_3
invokevirtual org.apache.tools.ant.taskdefs.CopyPath.log:(Ljava/lang/String;I)V
19: goto 35
20: StackMap locals: org.apache.tools.ant.taskdefs.CopyPath java.lang.String[] java.lang.String int int java.lang.String[] java.io.File java.lang.String[] java.lang.String int int java.lang.String[] java.io.File
StackMap stack:
aload 6
invokevirtual java.io.File.isDirectory:()Z
ifeq 23
21: aload 0
new java.lang.StringBuilder
dup
ldc "Skipping directory "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.apache.tools.ant.taskdefs.CopyPath.log:(Ljava/lang/String;)V
22: goto 35
23: StackMap locals:
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
ldc "Copying "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_3
invokevirtual org.apache.tools.ant.taskdefs.CopyPath.log:(Ljava/lang/String;I)V
24: getstatic org.apache.tools.ant.taskdefs.CopyPath.FILE_UTILS:Lorg/apache/tools/ant/util/FileUtils;
aload 6
aload 12
aconst_null
aconst_null
iconst_0
25: aload 0
getfield org.apache.tools.ant.taskdefs.CopyPath.preserveLastModified:Z
aconst_null
aconst_null
aload 0
invokevirtual org.apache.tools.ant.taskdefs.CopyPath.getProject:()Lorg/apache/tools/ant/Project;
26: invokevirtual org.apache.tools.ant.util.FileUtils.copyFile:(Ljava/io/File;Ljava/io/File;Lorg/apache/tools/ant/types/FilterSetCollection;Ljava/util/Vector;ZZLjava/lang/String;Ljava/lang/String;Lorg/apache/tools/ant/Project;)V
27: goto 35
StackMap locals:
StackMap stack: java.io.IOException
28: astore 13
start local 13 29: new java.lang.StringBuilder
dup
ldc "Failed to copy "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " due to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
30: aload 13
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
31: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 14
start local 14 32: aload 12
invokevirtual java.io.File.exists:()Z
ifeq 34
aload 12
invokevirtual java.io.File.delete:()Z
ifne 34
33: new java.lang.StringBuilder
dup
aload 14
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " and I couldn't delete the corrupt "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 14
34: StackMap locals: java.io.IOException java.lang.String
StackMap stack:
new org.apache.tools.ant.BuildException
dup
aload 14
aload 13
aload 0
invokevirtual org.apache.tools.ant.taskdefs.CopyPath.getLocation:()Lorg/apache/tools/ant/Location;
invokespecial org.apache.tools.ant.BuildException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Lorg/apache/tools/ant/Location;)V
athrow
end local 14 end local 13 end local 12 end local 8 35: StackMap locals: org.apache.tools.ant.taskdefs.CopyPath java.lang.String[] java.lang.String int int java.lang.String[] java.io.File java.lang.String[] top int int java.lang.String[]
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
36: iload 9
iload 10
if_icmplt 15
end local 7 end local 6 end local 2 37: StackMap locals: org.apache.tools.ant.taskdefs.CopyPath java.lang.String[] top int int java.lang.String[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
38: iload 3
iload 4
if_icmplt 9
39: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lorg/apache/tools/ant/taskdefs/CopyPath;
5 40 1 sourceFiles [Ljava/lang/String;
10 37 2 sourceFileName Ljava/lang/String;
11 37 6 sourceFile Ljava/io/File;
12 37 7 toFiles [Ljava/lang/String;
16 35 8 destFileName Ljava/lang/String;
17 35 12 destFile Ljava/io/File;
29 35 13 ioe Ljava/io/IOException;
32 35 14 msg Ljava/lang/String;
Exception table:
from to target type
23 27 28 Class java.io.IOException
Exceptions:
throws org.apache.tools.ant.BuildException
}
SourceFile: "CopyPath.java"
RuntimeVisibleAnnotations:
java.lang.Deprecated()