class sun.nio.fs.WindowsFileCopy
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.nio.fs.WindowsFileCopy
super_class: java.lang.Object
{
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lsun/nio/fs/WindowsFileCopy;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic sun.nio.fs.WindowsFileCopy.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/nio/fs/WindowsFileCopy;
static void copy(sun.nio.fs.WindowsPath, sun.nio.fs.WindowsPath, java.nio.file.CopyOption[]);
descriptor: (Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;[Ljava/nio/file/CopyOption;)V
flags: (0x0088) ACC_STATIC, ACC_VARARGS
Code:
stack=7, locals=18, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: iconst_1
istore 5
start local 5 3: iconst_0
istore 6
start local 6 4: aload 2
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 22
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int int int top int int java.nio.file.CopyOption[]
StackMap stack:
5: aload 10
iload 8
aaload
astore 7
start local 7 6: aload 7
getstatic java.nio.file.StandardCopyOption.REPLACE_EXISTING:Ljava/nio/file/StandardCopyOption;
if_acmpne 9
7: iconst_1
istore 3
8: goto 21
9: StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int int int java.nio.file.CopyOption int int java.nio.file.CopyOption[]
StackMap stack:
aload 7
getstatic java.nio.file.LinkOption.NOFOLLOW_LINKS:Ljava/nio/file/LinkOption;
if_acmpne 12
10: iconst_0
istore 5
11: goto 21
12: StackMap locals:
StackMap stack:
aload 7
getstatic java.nio.file.StandardCopyOption.COPY_ATTRIBUTES:Ljava/nio/file/StandardCopyOption;
if_acmpne 15
13: iconst_1
istore 4
14: goto 21
15: StackMap locals:
StackMap stack:
getstatic sun.nio.fs.ExtendedOptions.INTERRUPTIBLE:Lsun/nio/fs/ExtendedOptions$InternalOption;
aload 7
invokevirtual sun.nio.fs.ExtendedOptions$InternalOption.matches:(Ljava/lang/Object;)Z
ifeq 18
16: iconst_1
istore 6
17: goto 21
18: StackMap locals:
StackMap stack:
aload 7
ifnonnull 20
19: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
20: StackMap locals:
StackMap stack:
new java.lang.UnsupportedOperationException
dup
ldc "Unsupported copy option"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 7 21: StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int int int top int int java.nio.file.CopyOption[]
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
22: iload 8
iload 9
if_icmplt 5
23: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 7
start local 7 24: aload 7
ifnull 27
25: aload 0
invokevirtual sun.nio.fs.WindowsPath.checkRead:()V
26: aload 1
invokevirtual sun.nio.fs.WindowsPath.checkWrite:()V
27: StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int int int java.lang.SecurityManager
StackMap stack:
aconst_null
astore 8
start local 8 28: aconst_null
astore 9
start local 9 29: lconst_0
lstore 10
start local 10 30: aload 0
iload 5
invokevirtual sun.nio.fs.WindowsPath.openForReadAttributeAccess:(Z)J
lstore 10
31: goto 34
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int int int java.lang.SecurityManager sun.nio.fs.WindowsFileAttributes sun.nio.fs.WindowsFileAttributes long
StackMap stack: sun.nio.fs.WindowsException
32: astore 12
start local 12 33: aload 12
aload 0
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
end local 12 34: StackMap locals:
StackMap stack:
lload 10
invokestatic sun.nio.fs.WindowsFileAttributes.readAttributes:(J)Lsun/nio/fs/WindowsFileAttributes;
astore 8
35: goto 38
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
36: astore 12
start local 12 37: aload 12
aload 0
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
end local 12 38: StackMap locals:
StackMap stack:
lconst_0
lstore 12
start local 12 39: aload 1
iconst_0
invokevirtual sun.nio.fs.WindowsPath.openForReadAttributeAccess:(Z)J
lstore 12
40: lload 12
invokestatic sun.nio.fs.WindowsFileAttributes.readAttributes:(J)Lsun/nio/fs/WindowsFileAttributes;
astore 9
41: aload 8
aload 9
invokestatic sun.nio.fs.WindowsFileAttributes.isSameFile:(Lsun/nio/fs/WindowsFileAttributes;Lsun/nio/fs/WindowsFileAttributes;)Z
ifeq 45
42: lload 12
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
43: lload 10
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
44: return
45: StackMap locals: long
StackMap stack:
iload 3
ifne 52
46: new java.nio.file.FileAlreadyExistsException
dup
47: aload 1
invokevirtual sun.nio.fs.WindowsPath.getPathForExceptionMessage:()Ljava/lang/String;
48: invokespecial java.nio.file.FileAlreadyExistsException.<init>:(Ljava/lang/String;)V
athrow
49: StackMap locals:
StackMap stack: java.lang.Throwable
astore 14
50: lload 12
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
51: aload 14
athrow
52: StackMap locals:
StackMap stack:
lload 12
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
53: goto 59
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
54: pop
end local 12 55: goto 59
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int int int java.lang.SecurityManager sun.nio.fs.WindowsFileAttributes sun.nio.fs.WindowsFileAttributes long
StackMap stack: java.lang.Throwable
56: astore 15
57: lload 10
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
58: aload 15
athrow
59: StackMap locals:
StackMap stack:
lload 10
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
60: aload 7
ifnull 62
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isSymbolicLink:()Z
ifeq 62
61: aload 7
new java.nio.file.LinkPermission
dup
ldc "symbolic"
invokespecial java.nio.file.LinkPermission.<init>:(Ljava/lang/String;)V
invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
62: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.nio.fs.WindowsFileCopy.asWin32Path:(Lsun/nio/fs/WindowsPath;)Ljava/lang/String;
astore 12
start local 12 63: aload 1
invokestatic sun.nio.fs.WindowsFileCopy.asWin32Path:(Lsun/nio/fs/WindowsPath;)Ljava/lang/String;
astore 13
start local 13 64: aload 9
ifnull 78
65: aload 9
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifne 66
aload 9
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectoryLink:()Z
ifeq 68
66: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 13
invokestatic sun.nio.fs.WindowsNativeDispatcher.RemoveDirectory:(Ljava/lang/String;)V
67: goto 78
68: StackMap locals:
StackMap stack:
aload 13
invokestatic sun.nio.fs.WindowsNativeDispatcher.DeleteFile:(Ljava/lang/String;)V
69: goto 78
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
70: astore 14
start local 14 71: aload 9
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifeq 77
72: aload 14
invokevirtual sun.nio.fs.WindowsException.lastError:()I
sipush 145
if_icmpeq 74
73: aload 14
invokevirtual sun.nio.fs.WindowsException.lastError:()I
sipush 183
if_icmpne 77
74: StackMap locals: sun.nio.fs.WindowsException
StackMap stack:
new java.nio.file.DirectoryNotEmptyException
dup
75: aload 1
invokevirtual sun.nio.fs.WindowsPath.getPathForExceptionMessage:()Ljava/lang/String;
76: invokespecial java.nio.file.DirectoryNotEmptyException.<init>:(Ljava/lang/String;)V
athrow
77: StackMap locals:
StackMap stack:
aload 14
aload 1
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
end local 14 78: StackMap locals:
StackMap stack:
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifne 100
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectoryLink:()Z
ifne 100
79: iload 5
ifne 80
sipush 2048
goto 81
StackMap locals:
StackMap stack:
80: iconst_0
StackMap locals:
StackMap stack: int
81: istore 14
start local 14 82: iload 6
ifeq 91
83: new sun.nio.fs.WindowsFileCopy$1
dup
aload 12
aload 13
iload 14
aload 0
aload 1
invokespecial sun.nio.fs.WindowsFileCopy$1.<init>:(Ljava/lang/String;Ljava/lang/String;ILsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;)V
astore 15
start local 15 84: aload 15
invokestatic sun.nio.fs.Cancellable.runInterruptibly:(Lsun/nio/fs/Cancellable;)V
85: goto 95
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int int int java.lang.SecurityManager sun.nio.fs.WindowsFileAttributes sun.nio.fs.WindowsFileAttributes long java.lang.String java.lang.String int sun.nio.fs.Cancellable
StackMap stack: java.util.concurrent.ExecutionException
86: astore 16
start local 16 87: aload 16
invokevirtual java.util.concurrent.ExecutionException.getCause:()Ljava/lang/Throwable;
astore 17
start local 17 88: aload 17
instanceof java.io.IOException
ifeq 90
89: aload 17
checkcast java.io.IOException
athrow
90: StackMap locals: java.util.concurrent.ExecutionException java.lang.Throwable
StackMap stack:
new java.io.IOException
dup
aload 17
invokespecial java.io.IOException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 17 end local 16 end local 15 91: StackMap locals:
StackMap stack:
aload 12
aload 13
iload 14
lconst_0
invokestatic sun.nio.fs.WindowsNativeDispatcher.CopyFileEx:(Ljava/lang/String;Ljava/lang/String;IJ)V
92: goto 95
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
93: astore 15
start local 15 94: aload 15
aload 0
aload 1
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;)V
end local 15 95: StackMap locals:
StackMap stack:
iload 4
ifeq 99
96: aload 0
aload 1
iload 5
invokestatic sun.nio.fs.WindowsFileCopy.copySecurityAttributes:(Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;Z)V
97: goto 99
StackMap locals:
StackMap stack: java.io.IOException
98: pop
99: StackMap locals:
StackMap stack:
return
end local 14 100: StackMap locals:
StackMap stack:
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifeq 103
101: aload 13
lconst_0
invokestatic sun.nio.fs.WindowsNativeDispatcher.CreateDirectory:(Ljava/lang/String;J)V
102: goto 112
103: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.nio.fs.WindowsLinkSupport.readLink:(Lsun/nio/fs/WindowsPath;)Ljava/lang/String;
astore 14
start local 14 104: iconst_1
istore 15
start local 15 105: aload 13
106: aload 14
invokestatic sun.nio.fs.WindowsPath.addPrefixIfNeeded:(Ljava/lang/String;)Ljava/lang/String;
107: iload 15
108: invokestatic sun.nio.fs.WindowsNativeDispatcher.CreateSymbolicLink:(Ljava/lang/String;Ljava/lang/String;I)V
end local 15 end local 14 109: goto 112
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
110: astore 14
start local 14 111: aload 14
aload 1
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
end local 14 112: StackMap locals:
StackMap stack:
iload 4
ifeq 125
113: aload 1
iconst_0
invokestatic sun.nio.fs.WindowsFileAttributeViews.createDosView:(Lsun/nio/fs/WindowsPath;Z)Lsun/nio/fs/WindowsFileAttributeViews$Dos;
114: astore 14
start local 14 115: aload 14
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributeViews$Dos.setAttributes:(Lsun/nio/fs/WindowsFileAttributes;)V
116: goto 122
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int int int java.lang.SecurityManager sun.nio.fs.WindowsFileAttributes sun.nio.fs.WindowsFileAttributes long java.lang.String java.lang.String sun.nio.fs.WindowsFileAttributeViews$Dos
StackMap stack: java.io.IOException
117: pop
118: aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifeq 122
119: aload 13
invokestatic sun.nio.fs.WindowsNativeDispatcher.RemoveDirectory:(Ljava/lang/String;)V
120: goto 122
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
121: pop
122: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 5
invokestatic sun.nio.fs.WindowsFileCopy.copySecurityAttributes:(Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;Z)V
123: goto 125
StackMap locals:
StackMap stack: java.io.IOException
124: pop
end local 14 125: StackMap locals:
StackMap stack:
return
end local 13 end local 12 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 126 0 source Lsun/nio/fs/WindowsPath;
0 126 1 target Lsun/nio/fs/WindowsPath;
0 126 2 options [Ljava/nio/file/CopyOption;
1 126 3 replaceExisting Z
2 126 4 copyAttributes Z
3 126 5 followLinks Z
4 126 6 interruptible Z
6 21 7 option Ljava/nio/file/CopyOption;
24 126 7 sm Ljava/lang/SecurityManager;
28 126 8 sourceAttrs Lsun/nio/fs/WindowsFileAttributes;
29 126 9 targetAttrs Lsun/nio/fs/WindowsFileAttributes;
30 126 10 sourceHandle J
33 34 12 x Lsun/nio/fs/WindowsException;
37 38 12 x Lsun/nio/fs/WindowsException;
39 55 12 targetHandle J
63 126 12 sourcePath Ljava/lang/String;
64 126 13 targetPath Ljava/lang/String;
71 78 14 x Lsun/nio/fs/WindowsException;
82 100 14 flags I
84 91 15 copyTask Lsun/nio/fs/Cancellable;
87 91 16 e Ljava/util/concurrent/ExecutionException;
88 91 17 t Ljava/lang/Throwable;
94 95 15 x Lsun/nio/fs/WindowsException;
104 109 14 linkTarget Ljava/lang/String;
105 109 15 flags I
111 112 14 x Lsun/nio/fs/WindowsException;
115 125 14 view Lsun/nio/fs/WindowsFileAttributeViews$Dos;
Exception table:
from to target type
30 31 32 Class sun.nio.fs.WindowsException
34 35 36 Class sun.nio.fs.WindowsException
40 42 49 any
45 49 49 any
39 43 54 Class sun.nio.fs.WindowsException
45 53 54 Class sun.nio.fs.WindowsException
34 43 56 any
45 56 56 any
65 69 70 Class sun.nio.fs.WindowsException
84 85 86 Class java.util.concurrent.ExecutionException
91 92 93 Class sun.nio.fs.WindowsException
96 97 98 Class java.io.IOException
100 109 110 Class sun.nio.fs.WindowsException
115 116 117 Class java.io.IOException
119 120 121 Class sun.nio.fs.WindowsException
122 123 124 Class java.io.IOException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
source final
target final
options
static void move(sun.nio.fs.WindowsPath, sun.nio.fs.WindowsPath, java.nio.file.CopyOption[]);
descriptor: (Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;[Ljava/nio/file/CopyOption;)V
flags: (0x0088) ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=16, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: aload 2
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 15
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int top int int java.nio.file.CopyOption[]
StackMap stack:
3: aload 8
iload 6
aaload
astore 5
start local 5 4: aload 5
getstatic java.nio.file.StandardCopyOption.ATOMIC_MOVE:Ljava/nio/file/StandardCopyOption;
if_acmpne 7
5: iconst_1
istore 3
6: goto 14
7: StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int java.nio.file.CopyOption int int java.nio.file.CopyOption[]
StackMap stack:
aload 5
getstatic java.nio.file.StandardCopyOption.REPLACE_EXISTING:Ljava/nio/file/StandardCopyOption;
if_acmpne 10
8: iconst_1
istore 4
9: goto 14
10: StackMap locals:
StackMap stack:
aload 5
getstatic java.nio.file.LinkOption.NOFOLLOW_LINKS:Ljava/nio/file/LinkOption;
if_acmpne 12
11: goto 14
12: StackMap locals:
StackMap stack:
aload 5
ifnonnull 13
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
13: StackMap locals:
StackMap stack:
new java.lang.UnsupportedOperationException
dup
ldc "Unsupported copy option"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 5 14: StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int top int int java.nio.file.CopyOption[]
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
15: iload 6
iload 7
if_icmplt 3
16: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 5
start local 5 17: aload 5
ifnull 20
18: aload 0
invokevirtual sun.nio.fs.WindowsPath.checkWrite:()V
19: aload 1
invokevirtual sun.nio.fs.WindowsPath.checkWrite:()V
20: StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int java.lang.SecurityManager
StackMap stack:
aload 0
invokestatic sun.nio.fs.WindowsFileCopy.asWin32Path:(Lsun/nio/fs/WindowsPath;)Ljava/lang/String;
astore 6
start local 6 21: aload 1
invokestatic sun.nio.fs.WindowsFileCopy.asWin32Path:(Lsun/nio/fs/WindowsPath;)Ljava/lang/String;
astore 7
start local 7 22: iload 3
ifeq 34
23: aload 6
aload 7
iconst_1
invokestatic sun.nio.fs.WindowsNativeDispatcher.MoveFileEx:(Ljava/lang/String;Ljava/lang/String;I)V
24: goto 33
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int java.lang.SecurityManager java.lang.String java.lang.String
StackMap stack: sun.nio.fs.WindowsException
25: astore 8
start local 8 26: aload 8
invokevirtual sun.nio.fs.WindowsException.lastError:()I
bipush 17
if_icmpne 32
27: new java.nio.file.AtomicMoveNotSupportedException
dup
28: aload 0
invokevirtual sun.nio.fs.WindowsPath.getPathForExceptionMessage:()Ljava/lang/String;
29: aload 1
invokevirtual sun.nio.fs.WindowsPath.getPathForExceptionMessage:()Ljava/lang/String;
30: aload 8
invokevirtual sun.nio.fs.WindowsException.errorString:()Ljava/lang/String;
31: invokespecial java.nio.file.AtomicMoveNotSupportedException.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
athrow
32: StackMap locals: sun.nio.fs.WindowsException
StackMap stack:
aload 8
aload 0
aload 1
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;)V
end local 8 33: StackMap locals:
StackMap stack:
return
34: StackMap locals:
StackMap stack:
aconst_null
astore 8
start local 8 35: aconst_null
astore 9
start local 9 36: lconst_0
lstore 10
start local 10 37: aload 0
iconst_0
invokevirtual sun.nio.fs.WindowsPath.openForReadAttributeAccess:(Z)J
lstore 10
38: goto 41
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int java.lang.SecurityManager java.lang.String java.lang.String sun.nio.fs.WindowsFileAttributes sun.nio.fs.WindowsFileAttributes long
StackMap stack: sun.nio.fs.WindowsException
39: astore 12
start local 12 40: aload 12
aload 0
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
end local 12 41: StackMap locals:
StackMap stack:
lload 10
invokestatic sun.nio.fs.WindowsFileAttributes.readAttributes:(J)Lsun/nio/fs/WindowsFileAttributes;
astore 8
42: goto 45
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
43: astore 12
start local 12 44: aload 12
aload 0
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
end local 12 45: StackMap locals:
StackMap stack:
lconst_0
lstore 12
start local 12 46: aload 1
iconst_0
invokevirtual sun.nio.fs.WindowsPath.openForReadAttributeAccess:(Z)J
lstore 12
47: lload 12
invokestatic sun.nio.fs.WindowsFileAttributes.readAttributes:(J)Lsun/nio/fs/WindowsFileAttributes;
astore 9
48: aload 8
aload 9
invokestatic sun.nio.fs.WindowsFileAttributes.isSameFile:(Lsun/nio/fs/WindowsFileAttributes;Lsun/nio/fs/WindowsFileAttributes;)Z
ifeq 52
49: lload 12
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
50: lload 10
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
51: return
52: StackMap locals: long
StackMap stack:
iload 4
ifne 59
53: new java.nio.file.FileAlreadyExistsException
dup
54: aload 1
invokevirtual sun.nio.fs.WindowsPath.getPathForExceptionMessage:()Ljava/lang/String;
55: invokespecial java.nio.file.FileAlreadyExistsException.<init>:(Ljava/lang/String;)V
athrow
56: StackMap locals:
StackMap stack: java.lang.Throwable
astore 14
57: lload 12
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
58: aload 14
athrow
59: StackMap locals:
StackMap stack:
lload 12
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
60: goto 66
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
61: pop
end local 12 62: goto 66
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int java.lang.SecurityManager java.lang.String java.lang.String sun.nio.fs.WindowsFileAttributes sun.nio.fs.WindowsFileAttributes long
StackMap stack: java.lang.Throwable
63: astore 15
64: lload 10
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
65: aload 15
athrow
66: StackMap locals:
StackMap stack:
lload 10
invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
67: aload 9
ifnull 81
68: aload 9
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifne 69
aload 9
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectoryLink:()Z
ifeq 71
69: StackMap locals:
StackMap stack:
aload 7
invokestatic sun.nio.fs.WindowsNativeDispatcher.RemoveDirectory:(Ljava/lang/String;)V
70: goto 81
71: StackMap locals:
StackMap stack:
aload 7
invokestatic sun.nio.fs.WindowsNativeDispatcher.DeleteFile:(Ljava/lang/String;)V
72: goto 81
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
73: astore 12
start local 12 74: aload 9
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifeq 80
75: aload 12
invokevirtual sun.nio.fs.WindowsException.lastError:()I
sipush 145
if_icmpeq 77
76: aload 12
invokevirtual sun.nio.fs.WindowsException.lastError:()I
sipush 183
if_icmpne 80
77: StackMap locals: sun.nio.fs.WindowsException
StackMap stack:
new java.nio.file.DirectoryNotEmptyException
dup
78: aload 1
invokevirtual sun.nio.fs.WindowsPath.getPathForExceptionMessage:()Ljava/lang/String;
79: invokespecial java.nio.file.DirectoryNotEmptyException.<init>:(Ljava/lang/String;)V
athrow
80: StackMap locals:
StackMap stack:
aload 12
aload 1
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
end local 12 81: StackMap locals:
StackMap stack:
aload 6
aload 7
iconst_0
invokestatic sun.nio.fs.WindowsNativeDispatcher.MoveFileEx:(Ljava/lang/String;Ljava/lang/String;I)V
82: return
83: StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
astore 12
start local 12 84: aload 12
invokevirtual sun.nio.fs.WindowsException.lastError:()I
bipush 17
if_icmpeq 86
85: aload 12
aload 0
aload 1
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;)V
end local 12 86: StackMap locals:
StackMap stack:
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifne 95
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectoryLink:()Z
ifne 95
87: aload 6
aload 7
iconst_2
invokestatic sun.nio.fs.WindowsNativeDispatcher.MoveFileEx:(Ljava/lang/String;Ljava/lang/String;I)V
88: goto 91
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
89: astore 12
start local 12 90: aload 12
aload 0
aload 1
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;)V
end local 12 91: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_0
invokestatic sun.nio.fs.WindowsFileCopy.copySecurityAttributes:(Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;Z)V
92: goto 94
StackMap locals:
StackMap stack: java.io.IOException
93: pop
94: StackMap locals:
StackMap stack:
return
95: StackMap locals:
StackMap stack:
getstatic sun.nio.fs.WindowsFileCopy.$assertionsDisabled:Z
ifne 96
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifne 96
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectoryLink:()Z
ifne 96
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
96: StackMap locals:
StackMap stack:
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributes.isDirectory:()Z
ifeq 99
97: aload 7
lconst_0
invokestatic sun.nio.fs.WindowsNativeDispatcher.CreateDirectory:(Ljava/lang/String;J)V
98: goto 107
99: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.nio.fs.WindowsLinkSupport.readLink:(Lsun/nio/fs/WindowsPath;)Ljava/lang/String;
astore 12
start local 12 100: aload 7
101: aload 12
invokestatic sun.nio.fs.WindowsPath.addPrefixIfNeeded:(Ljava/lang/String;)Ljava/lang/String;
102: iconst_1
103: invokestatic sun.nio.fs.WindowsNativeDispatcher.CreateSymbolicLink:(Ljava/lang/String;Ljava/lang/String;I)V
end local 12 104: goto 107
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
105: astore 12
start local 12 106: aload 12
aload 1
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
end local 12 107: StackMap locals:
StackMap stack:
aload 1
iconst_0
invokestatic sun.nio.fs.WindowsFileAttributeViews.createDosView:(Lsun/nio/fs/WindowsPath;Z)Lsun/nio/fs/WindowsFileAttributeViews$Dos;
108: astore 12
start local 12 109: aload 12
aload 8
invokevirtual sun.nio.fs.WindowsFileAttributeViews$Dos.setAttributes:(Lsun/nio/fs/WindowsFileAttributes;)V
110: goto 116
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int java.lang.SecurityManager java.lang.String java.lang.String sun.nio.fs.WindowsFileAttributes sun.nio.fs.WindowsFileAttributes long sun.nio.fs.WindowsFileAttributeViews$Dos
StackMap stack: java.io.IOException
111: astore 13
start local 13 112: aload 7
invokestatic sun.nio.fs.WindowsNativeDispatcher.RemoveDirectory:(Ljava/lang/String;)V
113: goto 115
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int java.lang.SecurityManager java.lang.String java.lang.String sun.nio.fs.WindowsFileAttributes sun.nio.fs.WindowsFileAttributes long sun.nio.fs.WindowsFileAttributeViews$Dos java.io.IOException
StackMap stack: sun.nio.fs.WindowsException
114: pop
115: StackMap locals:
StackMap stack:
aload 13
athrow
end local 13 116: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_0
invokestatic sun.nio.fs.WindowsFileCopy.copySecurityAttributes:(Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;Z)V
117: goto 119
StackMap locals:
StackMap stack: java.io.IOException
118: pop
119: StackMap locals:
StackMap stack:
aload 6
invokestatic sun.nio.fs.WindowsNativeDispatcher.RemoveDirectory:(Ljava/lang/String;)V
120: goto 131
StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
121: astore 13
start local 13 122: aload 7
invokestatic sun.nio.fs.WindowsNativeDispatcher.RemoveDirectory:(Ljava/lang/String;)V
123: goto 125
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath java.nio.file.CopyOption[] int int java.lang.SecurityManager java.lang.String java.lang.String sun.nio.fs.WindowsFileAttributes sun.nio.fs.WindowsFileAttributes long sun.nio.fs.WindowsFileAttributeViews$Dos sun.nio.fs.WindowsException
StackMap stack: sun.nio.fs.WindowsException
124: pop
125: StackMap locals:
StackMap stack:
aload 13
invokevirtual sun.nio.fs.WindowsException.lastError:()I
sipush 145
if_icmpeq 127
126: aload 13
invokevirtual sun.nio.fs.WindowsException.lastError:()I
sipush 183
if_icmpne 130
127: StackMap locals:
StackMap stack:
new java.nio.file.DirectoryNotEmptyException
dup
128: aload 1
invokevirtual sun.nio.fs.WindowsPath.getPathForExceptionMessage:()Ljava/lang/String;
129: invokespecial java.nio.file.DirectoryNotEmptyException.<init>:(Ljava/lang/String;)V
athrow
130: StackMap locals:
StackMap stack:
aload 13
aload 0
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
end local 13 131: StackMap locals:
StackMap stack:
return
end local 12 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 132 0 source Lsun/nio/fs/WindowsPath;
0 132 1 target Lsun/nio/fs/WindowsPath;
0 132 2 options [Ljava/nio/file/CopyOption;
1 132 3 atomicMove Z
2 132 4 replaceExisting Z
4 14 5 option Ljava/nio/file/CopyOption;
17 132 5 sm Ljava/lang/SecurityManager;
21 132 6 sourcePath Ljava/lang/String;
22 132 7 targetPath Ljava/lang/String;
26 33 8 x Lsun/nio/fs/WindowsException;
35 132 8 sourceAttrs Lsun/nio/fs/WindowsFileAttributes;
36 132 9 targetAttrs Lsun/nio/fs/WindowsFileAttributes;
37 132 10 sourceHandle J
40 41 12 x Lsun/nio/fs/WindowsException;
44 45 12 x Lsun/nio/fs/WindowsException;
46 62 12 targetHandle J
74 81 12 x Lsun/nio/fs/WindowsException;
84 86 12 x Lsun/nio/fs/WindowsException;
90 91 12 x Lsun/nio/fs/WindowsException;
100 104 12 linkTarget Ljava/lang/String;
106 107 12 x Lsun/nio/fs/WindowsException;
109 132 12 view Lsun/nio/fs/WindowsFileAttributeViews$Dos;
112 116 13 x Ljava/io/IOException;
122 131 13 x Lsun/nio/fs/WindowsException;
Exception table:
from to target type
23 24 25 Class sun.nio.fs.WindowsException
37 38 39 Class sun.nio.fs.WindowsException
41 42 43 Class sun.nio.fs.WindowsException
47 49 56 any
52 56 56 any
46 50 61 Class sun.nio.fs.WindowsException
52 60 61 Class sun.nio.fs.WindowsException
41 50 63 any
52 63 63 any
68 72 73 Class sun.nio.fs.WindowsException
81 82 83 Class sun.nio.fs.WindowsException
87 88 89 Class sun.nio.fs.WindowsException
91 92 93 Class java.io.IOException
96 104 105 Class sun.nio.fs.WindowsException
109 110 111 Class java.io.IOException
112 113 114 Class sun.nio.fs.WindowsException
116 117 118 Class java.io.IOException
119 120 121 Class sun.nio.fs.WindowsException
122 123 124 Class sun.nio.fs.WindowsException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
source
target
options
private static java.lang.String asWin32Path(sun.nio.fs.WindowsPath);
descriptor: (Lsun/nio/fs/WindowsPath;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual sun.nio.fs.WindowsPath.getPathForWin32Calls:()Ljava/lang/String;
1: areturn
2: StackMap locals:
StackMap stack: sun.nio.fs.WindowsException
astore 1
start local 1 3: aload 1
aload 0
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
4: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 path Lsun/nio/fs/WindowsPath;
3 5 1 x Lsun/nio/fs/WindowsException;
Exception table:
from to target type
0 1 2 Class sun.nio.fs.WindowsException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
path
private static void copySecurityAttributes(sun.nio.fs.WindowsPath, sun.nio.fs.WindowsPath, boolean);
descriptor: (Lsun/nio/fs/WindowsPath;Lsun/nio/fs/WindowsPath;Z)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 2
invokestatic sun.nio.fs.WindowsLinkSupport.getFinalPath:(Lsun/nio/fs/WindowsPath;Z)Ljava/lang/String;
astore 3
start local 3 1: ldc "SeRestorePrivilege"
invokestatic sun.nio.fs.WindowsSecurity.enablePrivilege:(Ljava/lang/String;)Lsun/nio/fs/WindowsSecurity$Privilege;
2: astore 4
start local 4 3: bipush 7
istore 5
start local 5 4: aload 3
iload 5
invokestatic sun.nio.fs.WindowsAclFileAttributeView.getFileSecurity:(Ljava/lang/String;I)Lsun/nio/fs/NativeBuffer;
5: astore 6
start local 6 6: aload 1
invokevirtual sun.nio.fs.WindowsPath.getPathForWin32Calls:()Ljava/lang/String;
iload 5
7: aload 6
invokevirtual sun.nio.fs.NativeBuffer.address:()J
8: invokestatic sun.nio.fs.WindowsNativeDispatcher.SetFileSecurity:(Ljava/lang/String;IJ)V
9: goto 16
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath int java.lang.String sun.nio.fs.WindowsSecurity$Privilege int sun.nio.fs.NativeBuffer
StackMap stack: sun.nio.fs.WindowsException
10: astore 7
start local 7 11: aload 7
aload 1
invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Lsun/nio/fs/WindowsPath;)V
end local 7 12: goto 16
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 8
14: aload 6
invokevirtual sun.nio.fs.NativeBuffer.release:()V
15: aload 8
athrow
16: StackMap locals:
StackMap stack:
aload 6
invokevirtual sun.nio.fs.NativeBuffer.release:()V
end local 6 end local 5 17: goto 21
StackMap locals: sun.nio.fs.WindowsPath sun.nio.fs.WindowsPath int java.lang.String sun.nio.fs.WindowsSecurity$Privilege
StackMap stack: java.lang.Throwable
18: astore 9
19: aload 4
invokeinterface sun.nio.fs.WindowsSecurity$Privilege.drop:()V
20: aload 9
athrow
21: StackMap locals:
StackMap stack:
aload 4
invokeinterface sun.nio.fs.WindowsSecurity$Privilege.drop:()V
22: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 source Lsun/nio/fs/WindowsPath;
0 23 1 target Lsun/nio/fs/WindowsPath;
0 23 2 followLinks Z
1 23 3 path Ljava/lang/String;
3 23 4 priv Lsun/nio/fs/WindowsSecurity$Privilege;
4 17 5 request I
6 17 6 buffer Lsun/nio/fs/NativeBuffer;
11 12 7 x Lsun/nio/fs/WindowsException;
Exception table:
from to target type
6 9 10 Class sun.nio.fs.WindowsException
6 13 13 any
3 18 18 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
source
target
followLinks
}
SourceFile: "WindowsFileCopy.java"
NestMembers:
sun.nio.fs.WindowsFileCopy$1
InnerClasses:
public final InternalOption = sun.nio.fs.ExtendedOptions$InternalOption of sun.nio.fs.ExtendedOptions
Dos = sun.nio.fs.WindowsFileAttributeViews$Dos of sun.nio.fs.WindowsFileAttributeViews
sun.nio.fs.WindowsFileCopy$1
abstract Privilege = sun.nio.fs.WindowsSecurity$Privilege of sun.nio.fs.WindowsSecurity