class sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl implements java.nio.file.attribute.BasicFileAttributeView
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl
super_class: java.lang.Object
{
final sun.nio.fs.UnixPath file;
descriptor: Lsun/nio/fs/UnixPath;
flags: (0x0010) ACC_FINAL
final boolean followLinks;
descriptor: Z
flags: (0x0010) ACC_FINAL
final sun.nio.fs.UnixSecureDirectoryStream this$0;
descriptor: Lsun/nio/fs/UnixSecureDirectoryStream;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(sun.nio.fs.UnixSecureDirectoryStream, sun.nio.fs.UnixPath, boolean);
descriptor: (Lsun/nio/fs/UnixSecureDirectoryStream;Lsun/nio/fs/UnixPath;Z)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
1: aload 0
invokespecial java.lang.Object.<init>:()V
2: aload 0
aload 2
putfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
3: aload 0
iload 3
putfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.followLinks:Z
4: return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/nio/fs/UnixSecureDirectoryStream$BasicFileAttributeViewImpl;
0 5 2 file Lsun/nio/fs/UnixPath;
0 5 3 followLinks Z
MethodParameters:
Name Flags
this$0 final
file
followLinks
int open();
descriptor: ()I
flags: (0x0000)
Code:
stack=4, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.followLinks:Z
ifne 3
2: iload 1
ldc 131072
ior
istore 1
3: StackMap locals: int
StackMap stack:
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.dfd:I
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixPath.asByteArray:()[B
iload 1
iconst_0
invokestatic sun.nio.fs.UnixNativeDispatcher.openat:(I[BII)I
4: ireturn
5: StackMap locals:
StackMap stack: sun.nio.fs.UnixException
astore 2
start local 2 6: aload 2
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixException.rethrowAsIOException:(Lsun/nio/fs/UnixPath;)V
7: iconst_m1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/nio/fs/UnixSecureDirectoryStream$BasicFileAttributeViewImpl;
1 8 1 oflags I
6 8 2 x Lsun/nio/fs/UnixException;
Exception table:
from to target type
3 4 5 Class sun.nio.fs.UnixException
Exceptions:
throws java.io.IOException
private void checkWriteAccess();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 1
start local 1 1: aload 1
ifnull 6
2: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
ifnonnull 5
3: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.directory:()Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixPath.checkWrite:()V
4: goto 6
5: StackMap locals: java.lang.SecurityManager
StackMap stack:
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.directory:()Lsun/nio/fs/UnixPath;
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixPath.resolve:(Ljava/nio/file/Path;)Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixPath.checkWrite:()V
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/nio/fs/UnixSecureDirectoryStream$BasicFileAttributeViewImpl;
1 7 1 sm Ljava/lang/SecurityManager;
public java.lang.String name();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "basic"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/nio/fs/UnixSecureDirectoryStream$BasicFileAttributeViewImpl;
public java.nio.file.attribute.BasicFileAttributes readAttributes();
descriptor: ()Ljava/nio/file/attribute/BasicFileAttributes;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.readLock:()Ljava/util/concurrent/locks/Lock;
invokeinterface java.util.concurrent.locks.Lock.lock:()V
1: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.isOpen:()Z
ifne 3
2: new java.nio.file.ClosedDirectoryStreamException
dup
invokespecial java.nio.file.ClosedDirectoryStreamException.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 1
start local 1 4: aload 1
ifnull 9
5: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
ifnonnull 8
6: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.directory:()Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixPath.checkRead:()V
7: goto 9
8: StackMap locals: java.lang.SecurityManager
StackMap stack:
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.directory:()Lsun/nio/fs/UnixPath;
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixPath.resolve:(Ljava/nio/file/Path;)Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixPath.checkRead:()V
9: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
ifnonnull 11
10: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.dfd:I
invokestatic sun.nio.fs.UnixFileAttributes.get:(I)Lsun/nio/fs/UnixFileAttributes;
goto 12
11: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.dfd:I
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.followLinks:Z
invokestatic sun.nio.fs.UnixFileAttributes.get:(ILsun/nio/fs/UnixPath;Z)Lsun/nio/fs/UnixFileAttributes;
12: StackMap locals:
StackMap stack: sun.nio.fs.UnixFileAttributes
astore 2
start local 2 13: aload 2
invokevirtual sun.nio.fs.UnixFileAttributes.asBasicFileAttributes:()Ljava/nio/file/attribute/BasicFileAttributes;
astore 4
14: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.readLock:()Ljava/util/concurrent/locks/Lock;
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
15: aload 4
areturn
end local 2 16: StackMap locals:
StackMap stack: sun.nio.fs.UnixException
astore 2
start local 2 17: aload 2
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixException.rethrowAsIOException:(Lsun/nio/fs/UnixPath;)V
18: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.readLock:()Ljava/util/concurrent/locks/Lock;
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
19: aconst_null
areturn
end local 2 end local 1 20: StackMap locals: sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl
StackMap stack: java.lang.Throwable
astore 3
21: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.readLock:()Ljava/util/concurrent/locks/Lock;
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
22: aload 3
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lsun/nio/fs/UnixSecureDirectoryStream$BasicFileAttributeViewImpl;
4 20 1 sm Ljava/lang/SecurityManager;
13 16 2 attrs Lsun/nio/fs/UnixFileAttributes;
17 20 2 x Lsun/nio/fs/UnixException;
Exception table:
from to target type
9 14 16 Class sun.nio.fs.UnixException
1 14 20 any
16 18 20 any
Exceptions:
throws java.io.IOException
public void setTimes(java.nio.file.attribute.FileTime, java.nio.file.attribute.FileTime, java.nio.file.attribute.FileTime);
descriptor: (Ljava/nio/file/attribute/FileTime;Ljava/nio/file/attribute/FileTime;Ljava/nio/file/attribute/FileTime;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.checkWriteAccess:()V
1: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.readLock:()Ljava/util/concurrent/locks/Lock;
invokeinterface java.util.concurrent.locks.Lock.lock:()V
2: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.isOpen:()Z
ifne 4
3: new java.nio.file.ClosedDirectoryStreamException
dup
invokespecial java.nio.file.ClosedDirectoryStreamException.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
ifnonnull 5
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.dfd:I
goto 6
StackMap locals:
StackMap stack:
5: aload 0
invokevirtual sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.open:()I
StackMap locals:
StackMap stack: int
6: istore 4
start local 4 7: aload 1
ifnull 8
aload 2
ifnonnull 16
8: StackMap locals: int
StackMap stack:
iload 4
invokestatic sun.nio.fs.UnixFileAttributes.get:(I)Lsun/nio/fs/UnixFileAttributes;
astore 5
start local 5 9: aload 1
ifnonnull 11
10: aload 5
invokevirtual sun.nio.fs.UnixFileAttributes.lastModifiedTime:()Ljava/nio/file/attribute/FileTime;
astore 1
11: StackMap locals: sun.nio.fs.UnixFileAttributes
StackMap stack:
aload 2
ifnonnull 16
12: aload 5
invokevirtual sun.nio.fs.UnixFileAttributes.lastAccessTime:()Ljava/nio/file/attribute/FileTime;
astore 2
end local 5 13: goto 16
StackMap locals: sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime int
StackMap stack: sun.nio.fs.UnixException
14: astore 5
start local 5 15: aload 5
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixException.rethrowAsIOException:(Lsun/nio/fs/UnixPath;)V
end local 5 16: StackMap locals:
StackMap stack:
iload 4
17: aload 2
getstatic java.util.concurrent.TimeUnit.MICROSECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.nio.file.attribute.FileTime.to:(Ljava/util/concurrent/TimeUnit;)J
18: aload 1
getstatic java.util.concurrent.TimeUnit.MICROSECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.nio.file.attribute.FileTime.to:(Ljava/util/concurrent/TimeUnit;)J
19: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
ifnonnull 20
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.directory:()Lsun/nio/fs/UnixPath;
goto 21
StackMap locals: sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime int
StackMap stack: int long long
20: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
21: StackMap locals: sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime int
StackMap stack: int long long sun.nio.fs.UnixPath
invokestatic sun.nio.fs.UnixNativeDispatcher.futimes:(IJJLsun/nio/fs/UnixPath;)V
22: goto 30
StackMap locals:
StackMap stack: sun.nio.fs.UnixException
23: astore 5
start local 5 24: aload 5
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
invokevirtual sun.nio.fs.UnixException.rethrowAsIOException:(Lsun/nio/fs/UnixPath;)V
end local 5 25: goto 30
StackMap locals:
StackMap stack: java.lang.Throwable
26: astore 6
27: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
ifnull 29
28: iload 4
invokestatic sun.nio.fs.UnixNativeDispatcher.close:(I)V
29: StackMap locals: sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime int top java.lang.Throwable
StackMap stack:
aload 6
athrow
30: StackMap locals: sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime int
StackMap stack:
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.file:Lsun/nio/fs/UnixPath;
ifnull 36
31: iload 4
invokestatic sun.nio.fs.UnixNativeDispatcher.close:(I)V
end local 4 32: goto 36
StackMap locals: sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime java.nio.file.attribute.FileTime
StackMap stack: java.lang.Throwable
33: astore 7
34: aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.readLock:()Ljava/util/concurrent/locks/Lock;
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
35: aload 7
athrow
36: StackMap locals:
StackMap stack:
aload 0
getfield sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl.this$0:Lsun/nio/fs/UnixSecureDirectoryStream;
getfield sun.nio.fs.UnixSecureDirectoryStream.ds:Lsun/nio/fs/UnixDirectoryStream;
invokevirtual sun.nio.fs.UnixDirectoryStream.readLock:()Ljava/util/concurrent/locks/Lock;
invokeinterface java.util.concurrent.locks.Lock.unlock:()V
37: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lsun/nio/fs/UnixSecureDirectoryStream$BasicFileAttributeViewImpl;
0 38 1 lastModifiedTime Ljava/nio/file/attribute/FileTime;
0 38 2 lastAccessTime Ljava/nio/file/attribute/FileTime;
0 38 3 createTime Ljava/nio/file/attribute/FileTime;
7 32 4 fd I
9 13 5 attrs Lsun/nio/fs/UnixFileAttributes;
15 16 5 x Lsun/nio/fs/UnixException;
24 25 5 x Lsun/nio/fs/UnixException;
Exception table:
from to target type
8 13 14 Class sun.nio.fs.UnixException
16 22 23 Class sun.nio.fs.UnixException
7 26 26 any
2 33 33 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
lastModifiedTime
lastAccessTime
createTime
}
SourceFile: "UnixSecureDirectoryStream.java"
NestHost: sun.nio.fs.UnixSecureDirectoryStream
InnerClasses:
private BasicFileAttributeViewImpl = sun.nio.fs.UnixSecureDirectoryStream$BasicFileAttributeViewImpl of sun.nio.fs.UnixSecureDirectoryStream