public class sun.jvmstat.PlatformSupportImpl extends sun.jvmstat.PlatformSupport
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvmstat.PlatformSupportImpl
super_class: sun.jvmstat.PlatformSupport
{
private static final java.lang.String containerTmpPath;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String pidPatternStr;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "^[0-9]+$"
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new java.lang.StringBuilder
dup
ldc "/root"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
invokestatic sun.jvmstat.PlatformSupportImpl.getTemporaryDirectory:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putstatic sun.jvmstat.PlatformSupportImpl.containerTmpPath:Ljava/lang/String;
1: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial sun.jvmstat.PlatformSupport.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvmstat/PlatformSupportImpl;
public java.util.List<java.lang.String> getTemporaryDirectories(int);
descriptor: (I)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=18, args_size=2
start local 0 start local 1 0: ldc "^[0-9]+$"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
astore 4
start local 4 1: lconst_0
lstore 5
start local 5 2: new java.io.File
dup
ldc "/proc"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 7
start local 7 3: iload 1
ifeq 6
4: iload 1
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
astore 4
5: goto 7
6: StackMap locals: sun.jvmstat.PlatformSupportImpl int top top java.util.regex.Pattern long java.io.File
StackMap stack:
ldc "^[0-9]+$"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
astore 4
7: StackMap locals:
StackMap stack:
aload 4
ldc ""
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 3
start local 3 8: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 8
start local 8 9: aload 8
invokestatic sun.jvmstat.PlatformSupportImpl.getTemporaryDirectory:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: new java.io.File
dup
invokestatic sun.jvmstat.PlatformSupportImpl.getTemporaryDirectory:()Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 9
start local 9 11: aload 9
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
ldc "unix:ino"
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.getAttribute:(Ljava/nio/file/Path;Ljava/lang/String;[Ljava/nio/file/LinkOption;)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lstore 5
end local 9 12: goto 14
13: StackMap locals: sun.jvmstat.PlatformSupportImpl int top java.util.regex.Matcher java.util.regex.Pattern long java.io.File java.util.List
StackMap stack: java.io.IOException
pop
14: StackMap locals:
StackMap stack:
new sun.jvmstat.PlatformSupportImpl$1
dup
aload 0
aload 3
invokespecial sun.jvmstat.PlatformSupportImpl$1.<init>:(Lsun/jvmstat/PlatformSupportImpl;Ljava/util/regex/Matcher;)V
astore 2
start local 2 15: aload 7
aload 2
invokevirtual java.io.File.listFiles:(Ljava/io/FilenameFilter;)[Ljava/io/File;
astore 9
start local 9 16: aload 9
dup
astore 13
arraylength
istore 12
iconst_0
istore 11
goto 27
StackMap locals: sun.jvmstat.PlatformSupportImpl int java.io.FilenameFilter java.util.regex.Matcher java.util.regex.Pattern long java.io.File java.util.List java.io.File[] top int int java.io.File[]
StackMap stack:
17: aload 13
iload 11
aaload
astore 10
start local 10 18: new java.lang.StringBuilder
dup
aload 10
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic sun.jvmstat.PlatformSupportImpl.containerTmpPath:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 14
start local 14 19: new java.io.File
dup
aload 14
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 15
start local 15 20: aload 15
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
ldc "unix:ino"
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.getAttribute:(Ljava/nio/file/Path;Ljava/lang/String;[Ljava/nio/file/LinkOption;)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lstore 16
start local 16 21: aload 15
invokevirtual java.io.File.exists:()Z
ifeq 26
aload 15
invokevirtual java.io.File.isDirectory:()Z
ifeq 26
22: aload 15
invokevirtual java.io.File.canRead:()Z
ifeq 26
lload 16
lload 5
lcmp
ifeq 26
23: aload 8
aload 14
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 16 24: goto 26
25: StackMap locals: sun.jvmstat.PlatformSupportImpl int java.io.FilenameFilter java.util.regex.Matcher java.util.regex.Pattern long java.io.File java.util.List java.io.File[] java.io.File int int java.io.File[] java.lang.String java.io.File
StackMap stack: java.io.IOException
pop
end local 15 end local 14 end local 10 26: StackMap locals: sun.jvmstat.PlatformSupportImpl int java.io.FilenameFilter java.util.regex.Matcher java.util.regex.Pattern long java.io.File java.util.List java.io.File[] top int int java.io.File[]
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
27: iload 11
iload 12
if_icmplt 17
28: aload 8
areturn
end local 9 end local 8 end local 7 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 29 0 this Lsun/jvmstat/PlatformSupportImpl;
0 29 1 pid I
15 29 2 pidFilter Ljava/io/FilenameFilter;
8 29 3 pidMatcher Ljava/util/regex/Matcher;
1 29 4 pidPattern Ljava/util/regex/Pattern;
2 29 5 tmpInode J
3 29 7 procdir Ljava/io/File;
9 29 8 v Ljava/util/List<Ljava/lang/String;>;
11 12 9 f Ljava/io/File;
16 29 9 dirs [Ljava/io/File;
18 26 10 dir Ljava/io/File;
19 26 14 containerTmpDir Ljava/lang/String;
20 26 15 containerFile Ljava/io/File;
21 24 16 procInode J
Exception table:
from to target type
10 12 13 Class java.io.IOException
20 24 25 Class java.io.IOException
Signature: (I)Ljava/util/List<Ljava/lang/String;>;
MethodParameters:
Name Flags
pid
public int getLocalVmId(java.io.File);
descriptor: (Ljava/io/File;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
astore 2
start local 2 1: aload 2
ldc "\\/"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 3
start local 3 2: aload 3
arraylength
bipush 7
if_icmpne 8
aload 3
iconst_1
aaload
ldc "proc"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
3: aload 3
iconst_2
aaload
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 4
start local 4 4: aload 3
bipush 6
aaload
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 5
start local 5 5: iload 5
iload 4
if_icmpeq 6
iload 5
aload 0
iload 4
invokevirtual sun.jvmstat.PlatformSupportImpl.getNamespaceVmId:(I)I
if_icmpne 7
6: StackMap locals: sun.jvmstat.PlatformSupportImpl java.io.File java.lang.String java.lang.String[] int int
StackMap stack:
iload 4
ireturn
7: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 5 end local 4 8: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.File.getName:()Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/jvmstat/PlatformSupportImpl;
0 9 1 file Ljava/io/File;
1 9 2 p Ljava/lang/String;
2 9 3 s [Ljava/lang/String;
4 8 4 hostpid I
5 8 5 nspid I
Exceptions:
throws java.lang.NumberFormatException
MethodParameters:
Name Flags
file
public int getNamespaceVmId(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: ldc "/proc"
iconst_2
anewarray java.lang.String
dup
iconst_0
iload 1
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
aastore
dup
iconst_1
ldc "status"
aastore
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
astore 2
start local 2 1: aload 2
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.notExists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
ifeq 3
2: iload 1
ireturn
3: StackMap locals: java.nio.file.Path
StackMap stack:
aload 2
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokestatic java.nio.file.Files.readAllLines:(Ljava/nio/file/Path;Ljava/nio/charset/Charset;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 11
StackMap locals: sun.jvmstat.PlatformSupportImpl int java.nio.file.Path top java.util.Iterator
StackMap stack:
4: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 5: aload 3
ldc ":"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 5
start local 5 6: aload 5
arraylength
iconst_2
if_icmpne 11
aload 5
iconst_0
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
ldc "NSpid"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
7: aload 5
iconst_1
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
ldc "\\s+"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 5
8: aload 5
aload 5
arraylength
iconst_1
isub
aaload
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 6
start local 6 9: iload 6
10: ireturn
end local 6 end local 5 end local 3 11: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
12: iload 1
13: ireturn
14: StackMap locals: sun.jvmstat.PlatformSupportImpl int java.nio.file.Path
StackMap stack: java.lang.Exception
pop
15: iload 1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lsun/jvmstat/PlatformSupportImpl;
0 16 1 pid I
1 16 2 statusPath Ljava/nio/file/Path;
5 11 3 line Ljava/lang/String;
6 11 5 parts [Ljava/lang/String;
9 11 6 ns_pid I
Exception table:
from to target type
3 10 14 Class java.lang.NumberFormatException
11 13 14 Class java.lang.NumberFormatException
3 10 14 Class java.io.IOException
11 13 14 Class java.io.IOException
MethodParameters:
Name Flags
pid
}
SourceFile: "PlatformSupportImpl.java"
NestMembers:
sun.jvmstat.PlatformSupportImpl$1
InnerClasses:
sun.jvmstat.PlatformSupportImpl$1