public class org.apache.catalina.mbeans.MBeanDumper
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.catalina.mbeans.MBeanDumper
super_class: java.lang.Object
{
private static final org.apache.juli.logging.Log log;
descriptor: Lorg/apache/juli/logging/Log;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
protected static final org.apache.tomcat.util.res.StringManager sm;
descriptor: Lorg/apache/tomcat/util/res/StringManager;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
private static final java.lang.String CRLF;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "\r\n"
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/apache/catalina/mbeans/MBeanDumper;
invokestatic org.apache.juli.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/juli/logging/Log;
putstatic org.apache.catalina.mbeans.MBeanDumper.log:Lorg/apache/juli/logging/Log;
1: ldc Lorg/apache/catalina/mbeans/MBeanDumper;
invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/Class;)Lorg/apache/tomcat/util/res/StringManager;
putstatic org.apache.catalina.mbeans.MBeanDumper.sm:Lorg/apache/tomcat/util/res/StringManager;
2: 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 java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/mbeans/MBeanDumper;
public static java.lang.String dumpBeans(javax.management.MBeanServer, java.util.Set<javax.management.ObjectName>);
descriptor: (Ljavax/management/MBeanServer;Ljava/util/Set;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=20, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 1: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 91
StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.management.ObjectName
astore 3
start local 3 3: aload 2
ldc "Name: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
4: aload 2
aload 3
invokevirtual javax.management.ObjectName.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: aload 2
ldc "\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: aload 0
aload 3
invokeinterface javax.management.MBeanServer.getMBeanInfo:(Ljavax/management/ObjectName;)Ljavax/management/MBeanInfo;
astore 5
start local 5 7: aload 5
invokevirtual javax.management.MBeanInfo.getClassName:()Ljava/lang/String;
astore 6
start local 6 8: ldc "org.apache.commons.modeler.BaseModelMBean"
aload 6
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
9: aload 0
aload 3
ldc "modelerType"
invokeinterface javax.management.MBeanServer.getAttribute:(Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String
astore 6
10: StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator javax.management.MBeanInfo java.lang.String
StackMap stack:
aload 2
ldc "modelerType: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
11: aload 2
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: aload 2
ldc "\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
13: aload 5
invokevirtual javax.management.MBeanInfo.getAttributes:()[Ljavax/management/MBeanAttributeInfo;
astore 7
start local 7 14: aconst_null
astore 8
start local 8 15: aload 7
dup
astore 12
arraylength
istore 11
iconst_0
istore 10
goto 86
StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator javax.management.MBeanInfo java.lang.String javax.management.MBeanAttributeInfo[] java.lang.Object top int int javax.management.MBeanAttributeInfo[]
StackMap stack:
16: aload 12
iload 10
aaload
astore 9
start local 9 17: aload 9
invokevirtual javax.management.MBeanAttributeInfo.isReadable:()Z
ifne 19
18: goto 85
19: StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator javax.management.MBeanInfo java.lang.String javax.management.MBeanAttributeInfo[] java.lang.Object javax.management.MBeanAttributeInfo int int javax.management.MBeanAttributeInfo[]
StackMap stack:
aload 9
invokevirtual javax.management.MBeanAttributeInfo.getName:()Ljava/lang/String;
astore 13
start local 13 20: ldc "modelerType"
aload 13
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 22
21: goto 85
22: StackMap locals: java.lang.String
StackMap stack:
aload 13
bipush 61
invokevirtual java.lang.String.indexOf:(I)I
ifge 85
aload 13
bipush 58
invokevirtual java.lang.String.indexOf:(I)I
ifge 85
23: aload 13
bipush 32
invokevirtual java.lang.String.indexOf:(I)I
iflt 25
24: goto 85
25: StackMap locals:
StackMap stack:
aload 0
aload 3
aload 13
invokeinterface javax.management.MBeanServer.getAttribute:(Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object;
astore 8
26: goto 43
StackMap locals:
StackMap stack: javax.management.JMRuntimeException
27: astore 14
start local 14 28: aload 14
invokevirtual javax.management.JMRuntimeException.getCause:()Ljava/lang/Throwable;
astore 15
start local 15 29: aload 15
instanceof java.lang.UnsupportedOperationException
ifeq 33
30: getstatic org.apache.catalina.mbeans.MBeanDumper.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 85
31: getstatic org.apache.catalina.mbeans.MBeanDumper.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.mbeans.MBeanDumper.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "mBeanDumper.getAttributeError"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 13
aastore
dup
iconst_1
aload 3
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 14
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
32: goto 85
StackMap locals: javax.management.JMRuntimeException java.lang.Throwable
StackMap stack:
33: aload 15
instanceof java.lang.NullPointerException
ifeq 37
34: getstatic org.apache.catalina.mbeans.MBeanDumper.log:Lorg/apache/juli/logging/Log;
invokeinterface org.apache.juli.logging.Log.isDebugEnabled:()Z
ifeq 85
35: getstatic org.apache.catalina.mbeans.MBeanDumper.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.mbeans.MBeanDumper.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "mBeanDumper.getAttributeError"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 13
aastore
dup
iconst_1
aload 3
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 14
invokeinterface org.apache.juli.logging.Log.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
36: goto 85
37: StackMap locals:
StackMap stack:
getstatic org.apache.catalina.mbeans.MBeanDumper.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.mbeans.MBeanDumper.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "mBeanDumper.getAttributeError"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 13
aastore
dup
iconst_1
aload 3
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 14
invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
38: goto 85
end local 15 end local 14 39: StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator javax.management.MBeanInfo java.lang.String javax.management.MBeanAttributeInfo[] java.lang.Object javax.management.MBeanAttributeInfo int int javax.management.MBeanAttributeInfo[] java.lang.String
StackMap stack: java.lang.Throwable
astore 14
start local 14 40: aload 14
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
41: getstatic org.apache.catalina.mbeans.MBeanDumper.log:Lorg/apache/juli/logging/Log;
getstatic org.apache.catalina.mbeans.MBeanDumper.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "mBeanDumper.getAttributeError"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 13
aastore
dup
iconst_1
aload 3
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 14
invokeinterface org.apache.juli.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
42: goto 85
end local 14 43: StackMap locals:
StackMap stack:
aload 8
ifnonnull 45
44: goto 85
45: StackMap locals:
StackMap stack:
aload 8
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 15
start local 15 46: aload 15
invokevirtual java.lang.Class.isArray:()Z
ifeq 63
47: aload 8
invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
istore 16
start local 16 48: new java.lang.StringBuilder
dup
new java.lang.StringBuilder
dup
ldc "Array["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
49: aload 15
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] of length "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 16
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
50: invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 17
start local 17 51: iload 16
ifle 53
52: aload 17
ldc "\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
53: StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator javax.management.MBeanInfo java.lang.String javax.management.MBeanAttributeInfo[] java.lang.Object javax.management.MBeanAttributeInfo int int javax.management.MBeanAttributeInfo[] java.lang.String top java.lang.Class int java.lang.StringBuilder
StackMap stack:
iconst_0
istore 18
start local 18 54: goto 60
55: StackMap locals: int
StackMap stack:
aload 8
iload 18
invokestatic java.lang.reflect.Array.get:(Ljava/lang/Object;I)Ljava/lang/Object;
astore 19
start local 19 56: aload 17
aload 19
invokestatic org.apache.catalina.mbeans.MBeanDumper.tableItemToString:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
57: iload 18
iload 16
iconst_1
isub
if_icmpge 59
58: aload 17
ldc "\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 19 59: StackMap locals:
StackMap stack:
iinc 18 1
StackMap locals:
StackMap stack:
60: iload 18
iload 16
if_icmplt 55
end local 18 61: aload 17
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 14
end local 17 end local 16 start local 14 62: goto 78
end local 14 StackMap locals:
StackMap stack:
63: ldc Ljavax/management/openmbean/TabularData;
aload 8
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifeq 77
64: ldc Ljavax/management/openmbean/TabularData;
aload 8
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast javax.management.openmbean.TabularData
astore 16
start local 16 65: new java.util.StringJoiner
dup
ldc "\r\n"
invokespecial java.util.StringJoiner.<init>:(Ljava/lang/CharSequence;)V
astore 17
start local 17 66: aload 17
67: new java.lang.StringBuilder
dup
ldc "TabularData["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 16
invokeinterface javax.management.openmbean.TabularData.getTabularType:()Ljavax/management/openmbean/TabularType;
invokevirtual javax.management.openmbean.TabularType.getRowType:()Ljavax/management/openmbean/CompositeType;
invokevirtual javax.management.openmbean.CompositeType.getTypeName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
68: ldc "] of length "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 16
invokeinterface javax.management.openmbean.TabularData.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
69: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
70: invokevirtual java.util.StringJoiner.add:(Ljava/lang/CharSequence;)Ljava/util/StringJoiner;
pop
71: aload 16
invokeinterface javax.management.openmbean.TabularData.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 19
goto 74
StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator javax.management.MBeanInfo java.lang.String javax.management.MBeanAttributeInfo[] java.lang.Object javax.management.MBeanAttributeInfo int int javax.management.MBeanAttributeInfo[] java.lang.String top java.lang.Class javax.management.openmbean.TabularData java.util.StringJoiner top java.util.Iterator
StackMap stack:
72: aload 19
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 18
start local 18 73: aload 17
aload 18
invokestatic org.apache.catalina.mbeans.MBeanDumper.tableItemToString:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.util.StringJoiner.add:(Ljava/lang/CharSequence;)Ljava/util/StringJoiner;
pop
end local 18 74: StackMap locals:
StackMap stack:
aload 19
invokeinterface java.util.Iterator.hasNext:()Z
ifne 72
75: aload 17
invokevirtual java.util.StringJoiner.toString:()Ljava/lang/String;
astore 14
end local 17 end local 16 start local 14 76: goto 78
end local 14 77: StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator javax.management.MBeanInfo java.lang.String javax.management.MBeanAttributeInfo[] java.lang.Object javax.management.MBeanAttributeInfo int int javax.management.MBeanAttributeInfo[] java.lang.String top java.lang.Class
StackMap stack:
aload 8
invokestatic org.apache.catalina.mbeans.MBeanDumper.valueToString:(Ljava/lang/Object;)Ljava/lang/String;
astore 14
start local 14 78: StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator javax.management.MBeanInfo java.lang.String javax.management.MBeanAttributeInfo[] java.lang.Object javax.management.MBeanAttributeInfo int int javax.management.MBeanAttributeInfo[] java.lang.String java.lang.String java.lang.Class
StackMap stack:
aload 2
aload 13
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
79: aload 2
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
80: aload 2
aload 14
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
81: aload 2
ldc "\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 15 82: goto 85
end local 14 StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator javax.management.MBeanInfo java.lang.String javax.management.MBeanAttributeInfo[] java.lang.Object javax.management.MBeanAttributeInfo int int javax.management.MBeanAttributeInfo[] java.lang.String
StackMap stack: java.lang.Throwable
83: astore 15
start local 15 84: aload 15
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
end local 15 end local 13 end local 9 85: StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator javax.management.MBeanInfo java.lang.String javax.management.MBeanAttributeInfo[] java.lang.Object top int int javax.management.MBeanAttributeInfo[]
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
86: iload 10
iload 11
if_icmplt 16
end local 8 end local 7 end local 6 end local 5 87: goto 90
StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder javax.management.ObjectName java.util.Iterator
StackMap stack: java.lang.Throwable
88: astore 5
start local 5 89: aload 5
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
end local 5 90: StackMap locals:
StackMap stack:
aload 2
ldc "\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 3 91: StackMap locals: javax.management.MBeanServer java.util.Set java.lang.StringBuilder top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
92: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 93 0 mbeanServer Ljavax/management/MBeanServer;
0 93 1 names Ljava/util/Set<Ljavax/management/ObjectName;>;
1 93 2 buf Ljava/lang/StringBuilder;
3 91 3 oname Ljavax/management/ObjectName;
7 87 5 minfo Ljavax/management/MBeanInfo;
8 87 6 code Ljava/lang/String;
14 87 7 attrs [Ljavax/management/MBeanAttributeInfo;
15 87 8 value Ljava/lang/Object;
17 85 9 attr Ljavax/management/MBeanAttributeInfo;
20 85 13 attName Ljava/lang/String;
28 39 14 rme Ljavax/management/JMRuntimeException;
29 39 15 cause Ljava/lang/Throwable;
40 43 14 t Ljava/lang/Throwable;
62 63 14 valueString Ljava/lang/String;
76 77 14 valueString Ljava/lang/String;
78 83 14 valueString Ljava/lang/String;
46 82 15 c Ljava/lang/Class<*>;
48 62 16 len I
51 62 17 sb Ljava/lang/StringBuilder;
54 61 18 j I
56 59 19 item Ljava/lang/Object;
65 76 16 tab Ljavax/management/openmbean/TabularData;
66 76 17 joiner Ljava/util/StringJoiner;
73 74 18 item Ljava/lang/Object;
84 85 15 t Ljava/lang/Throwable;
89 90 5 t Ljava/lang/Throwable;
Exception table:
from to target type
25 26 27 Class javax.management.JMRuntimeException
25 26 39 Class java.lang.Throwable
45 82 83 Class java.lang.Throwable
6 87 88 Class java.lang.Throwable
Signature: (Ljavax/management/MBeanServer;Ljava/util/Set<Ljavax/management/ObjectName;>;)Ljava/lang/String;
MethodParameters:
Name Flags
mbeanServer
names
public static java.lang.String escape(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
ldc "\n"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
istore 1
start local 1 1: iload 1
ifge 3
2: aload 0
areturn
3: StackMap locals: int
StackMap stack:
iconst_0
istore 2
start local 2 4: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 5: goto 12
6: StackMap locals: int java.lang.StringBuilder
StackMap stack:
aload 3
aload 0
iload 2
iload 1
invokestatic org.apache.catalina.mbeans.MBeanDumper.appendHead:(Ljava/lang/StringBuilder;Ljava/lang/String;II)V
7: aload 3
ldc "\\n\n "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: iload 1
iconst_1
iadd
istore 2
9: iload 1
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
if_icmpne 11
10: goto 13
11: StackMap locals:
StackMap stack:
aload 0
bipush 10
iload 1
iconst_1
iadd
invokevirtual java.lang.String.indexOf:(II)I
istore 1
12: StackMap locals:
StackMap stack:
iload 1
ifge 6
13: StackMap locals:
StackMap stack:
iload 2
aload 0
invokevirtual java.lang.String.length:()I
if_icmpge 15
14: aload 3
aload 0
iload 2
aload 0
invokevirtual java.lang.String.length:()I
invokestatic org.apache.catalina.mbeans.MBeanDumper.appendHead:(Ljava/lang/StringBuilder;Ljava/lang/String;II)V
15: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 value Ljava/lang/String;
1 16 1 idx I
4 16 2 prev I
5 16 3 sb Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
value
private static void appendHead(java.lang.StringBuilder, java.lang.String, int, int);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;II)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
iconst_1
if_icmpge 2
1: return
2: StackMap locals:
StackMap stack:
iload 2
istore 4
start local 4 3: goto 7
4: StackMap locals: int
StackMap stack:
aload 0
aload 1
iload 4
iload 4
bipush 78
iadd
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: aload 0
ldc "\n "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: iinc 4 78
7: StackMap locals:
StackMap stack:
iload 3
iload 4
isub
bipush 78
if_icmpgt 4
8: aload 0
aload 1
iload 4
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
9: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 sb Ljava/lang/StringBuilder;
0 10 1 value Ljava/lang/String;
0 10 2 start I
0 10 3 end I
3 10 4 pos I
MethodParameters:
Name Flags
sb
value
start
end
private static java.lang.String tableItemToString(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: ldc "\tNULL VALUE"
areturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "\t"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokestatic org.apache.catalina.mbeans.MBeanDumper.valueToString:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: areturn
4: StackMap locals:
StackMap stack: java.lang.Throwable
astore 1
start local 1 5: aload 1
invokestatic org.apache.tomcat.util.ExceptionUtils.handleThrowable:(Ljava/lang/Throwable;)V
6: ldc "\tNON-STRINGABLE VALUE"
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 item Ljava/lang/Object;
5 7 1 t Ljava/lang/Throwable;
Exception table:
from to target type
2 3 4 Class java.lang.Throwable
MethodParameters:
Name Flags
item
private static java.lang.String valueToString(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=8, args_size=1
start local 0 0: ldc Ljavax/management/openmbean/CompositeData;
aload 0
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifeq 13
1: new java.lang.StringBuilder
dup
ldc "{"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 2
start local 2 2: ldc ""
astore 3
start local 3 3: ldc Ljavax/management/openmbean/CompositeData;
aload 0
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast javax.management.openmbean.CompositeData
astore 4
start local 4 4: aload 4
invokeinterface javax.management.openmbean.CompositeData.getCompositeType:()Ljavax/management/openmbean/CompositeType;
invokevirtual javax.management.openmbean.CompositeType.keySet:()Ljava/util/Set;
astore 5
start local 5 5: aload 5
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 9
StackMap locals: java.lang.Object top java.lang.StringBuilder java.lang.String javax.management.openmbean.CompositeData java.util.Set top java.util.Iterator
StackMap stack:
6: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 7: aload 2
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 61
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 4
aload 6
invokeinterface javax.management.openmbean.CompositeData.get:(Ljava/lang/String;)Ljava/lang/Object;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
8: ldc ", "
astore 3
end local 6 9: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
10: aload 2
bipush 125
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
11: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
end local 5 end local 4 end local 3 end local 2 start local 1 12: goto 14
end local 1 13: StackMap locals: java.lang.Object
StackMap stack:
aload 0
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
astore 1
start local 1 14: StackMap locals: java.lang.String
StackMap stack:
aload 1
invokestatic org.apache.catalina.mbeans.MBeanDumper.escape:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 value Ljava/lang/Object;
12 13 1 valueString Ljava/lang/String;
14 15 1 valueString Ljava/lang/String;
2 12 2 sb Ljava/lang/StringBuilder;
3 12 3 sep Ljava/lang/String;
4 12 4 composite Ljavax/management/openmbean/CompositeData;
5 12 5 keys Ljava/util/Set<Ljava/lang/String;>;
7 9 6 key Ljava/lang/String;
MethodParameters:
Name Flags
value
}
SourceFile: "MBeanDumper.java"