author | ykantser |
Thu, 07 May 2015 09:11:49 +0200 | |
changeset 30376 | 2ccf2cf7ea48 |
parent 14342 | 8435a30053c1 |
child 37890 | f6cb5112c878 |
permissions | -rw-r--r-- |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
1 |
/* |
30376
2ccf2cf7ea48
8078896: Add @modules as needed to the jdk_svc tests
ykantser
parents:
14342
diff
changeset
|
2 |
* Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved. |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
3 |
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
4 |
* |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
5 |
* This code is free software; you can redistribute it and/or modify it |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
6 |
* under the terms of the GNU General Public License version 2 only, as |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
7 |
* published by the Free Software Foundation. |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
8 |
* |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
9 |
* This code is distributed in the hope that it will be useful, but WITHOUT |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
10 |
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
11 |
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
12 |
* version 2 for more details (a copy is included in the LICENSE file that |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
13 |
* accompanied this code). |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
14 |
* |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
15 |
* You should have received a copy of the GNU General Public License version |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
16 |
* 2 along with this work; if not, write to the Free Software Foundation, |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
17 |
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
18 |
* |
5506 | 19 |
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
20 |
* or visit www.oracle.com if you need additional information or have any |
|
21 |
* questions. |
|
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
22 |
*/ |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
23 |
|
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
24 |
/* |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
25 |
* @test |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
26 |
* @bug 6610094 7024172 |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
27 |
* @summary Basic unit test of ManagementFactory.getPlatformMXBean(s) |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
28 |
* methods and PlatformManagedObject.getObjectName() |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
29 |
* @author Mandy Chung |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
30 |
* |
30376
2ccf2cf7ea48
8078896: Add @modules as needed to the jdk_svc tests
ykantser
parents:
14342
diff
changeset
|
31 |
* @modules java.management |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
32 |
* @run main GetPlatformMXBeans |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
33 |
*/ |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
34 |
|
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
35 |
import java.lang.management.*; |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
36 |
import java.io.IOException; |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
37 |
import java.util.*; |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
38 |
import javax.management.*; |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
39 |
|
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
40 |
import static java.lang.management.ManagementFactory.*; |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
41 |
|
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
42 |
public class GetPlatformMXBeans { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
43 |
private static MBeanServer platformMBeanServer = |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
44 |
getPlatformMBeanServer(); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
45 |
public static void main(String[] argv) throws Exception { |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
46 |
// singleton platform MXBean |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
47 |
checkPlatformMXBean(getClassLoadingMXBean(), |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
48 |
ClassLoadingMXBean.class, |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
49 |
CLASS_LOADING_MXBEAN_NAME); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
50 |
checkPlatformMXBean(getCompilationMXBean(), |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
51 |
CompilationMXBean.class, |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
52 |
COMPILATION_MXBEAN_NAME); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
53 |
checkPlatformMXBean(getMemoryMXBean(), |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
54 |
MemoryMXBean.class, |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
55 |
MEMORY_MXBEAN_NAME); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
56 |
checkPlatformMXBean(getOperatingSystemMXBean(), |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
57 |
OperatingSystemMXBean.class, |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
58 |
OPERATING_SYSTEM_MXBEAN_NAME); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
59 |
checkPlatformMXBean(getRuntimeMXBean(), |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
60 |
RuntimeMXBean.class, |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
61 |
RUNTIME_MXBEAN_NAME); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
62 |
checkPlatformMXBean(getThreadMXBean(), |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
63 |
ThreadMXBean.class, |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
64 |
THREAD_MXBEAN_NAME); |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
65 |
|
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
66 |
// the following MXBean can have more than one instances |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
67 |
checkGarbageCollectorMXBeans(getGarbageCollectorMXBeans()); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
68 |
checkMemoryManagerMXBeans(getMemoryManagerMXBeans()); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
69 |
checkMemoryPoolMXBeans(getMemoryPoolMXBeans()); |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
70 |
|
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
71 |
// check invalid platform MXBean |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
72 |
checkInvalidPlatformMXBean(); |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
73 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
74 |
|
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
75 |
private static <T extends PlatformManagedObject> |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
76 |
void checkPlatformMXBean(T obj, Class<T> mxbeanInterface, |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
77 |
String mxbeanName) |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
78 |
throws Exception |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
79 |
{ |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
80 |
// getPlatformMXBean may return null if the mxbean is not implemented |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
81 |
PlatformManagedObject mxbean = getPlatformMXBean(mxbeanInterface); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
82 |
if (obj != mxbean) { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
83 |
throw new RuntimeException("Singleton MXBean returned not matched"); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
84 |
} |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
85 |
|
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
86 |
int numElements = obj == null ? 0 : 1; |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
87 |
List<? extends PlatformManagedObject> mxbeans = |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
88 |
getPlatformMXBeans(mxbeanInterface); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
89 |
if (mxbeans.size() != numElements) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
90 |
throw new RuntimeException("Unmatched number of platform MXBeans " |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
91 |
+ mxbeans.size() + ". Expected = " + numElements); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
92 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
93 |
|
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
94 |
if (obj != null) { |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
95 |
if (obj != mxbeans.get(0)) { |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
96 |
throw new RuntimeException("The list returned by getPlatformMXBeans" |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
97 |
+ " not matched"); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
98 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
99 |
ObjectName on = new ObjectName(mxbeanName); |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
100 |
if (!on.equals(mxbean.getObjectName())) { |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
101 |
throw new RuntimeException("Unmatched ObjectName " + |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
102 |
mxbean.getObjectName() + " Expected = " + on); |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
103 |
} |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
104 |
checkRemotePlatformMXBean(obj, platformMBeanServer, |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
105 |
mxbeanInterface, mxbeanName); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
106 |
} |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
107 |
} |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
108 |
|
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
109 |
// verify platform MXBeans in the platform MBeanServer |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
110 |
private static <T extends PlatformManagedObject> |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
111 |
void checkRemotePlatformMXBean(T obj, |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
112 |
MBeanServerConnection mbs, |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
113 |
Class<T> mxbeanInterface, |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
114 |
String mxbeanName) |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
115 |
throws Exception |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
116 |
{ |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
117 |
PlatformManagedObject mxbean = getPlatformMXBean(mbs, mxbeanInterface); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
118 |
if ((obj == null && mxbean != null) || (obj != null && mxbean == null)) { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
119 |
throw new RuntimeException("Singleton MXBean returned not matched"); |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
120 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
121 |
|
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
122 |
int numElements = obj == null ? 0 : 1; |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
123 |
List<? extends PlatformManagedObject> mxbeans = |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
124 |
getPlatformMXBeans(mbs, mxbeanInterface); |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
125 |
if (mxbeans.size() != numElements) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
126 |
throw new RuntimeException("Unmatched number of platform MXBeans " |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
127 |
+ mxbeans.size() + ". Expected = " + numElements); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
128 |
} |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
129 |
|
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
130 |
ObjectName on = new ObjectName(mxbeanName); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
131 |
if (!on.equals(mxbean.getObjectName())) { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
132 |
throw new RuntimeException("Unmatched ObjectName " + |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
133 |
mxbean.getObjectName() + " Expected = " + on); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
134 |
} |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
135 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
136 |
|
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
137 |
private static void checkMemoryManagerMXBeans(List<MemoryManagerMXBean> objs) |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
138 |
throws Exception |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
139 |
{ |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
140 |
checkPlatformMXBeans(objs, MemoryManagerMXBean.class); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
141 |
for (MemoryManagerMXBean mxbean : objs) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
142 |
String domainAndType; |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
143 |
if (mxbean instanceof GarbageCollectorMXBean) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
144 |
domainAndType = GARBAGE_COLLECTOR_MXBEAN_DOMAIN_TYPE; |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
145 |
} else { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
146 |
domainAndType = MEMORY_MANAGER_MXBEAN_DOMAIN_TYPE; |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
147 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
148 |
ObjectName on = new ObjectName(domainAndType + |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
149 |
",name=" + mxbean.getName()); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
150 |
if (!on.equals(mxbean.getObjectName())) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
151 |
throw new RuntimeException("Unmatched ObjectName " + |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
152 |
mxbean.getObjectName() + " Expected = " + on); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
153 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
154 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
155 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
156 |
private static void checkMemoryPoolMXBeans(List<MemoryPoolMXBean> objs) |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
157 |
throws Exception |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
158 |
{ |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
159 |
checkPlatformMXBeans(objs, MemoryPoolMXBean.class); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
160 |
for (MemoryPoolMXBean mxbean : objs) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
161 |
ObjectName on = new ObjectName(MEMORY_POOL_MXBEAN_DOMAIN_TYPE + |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
162 |
",name=" + mxbean.getName()); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
163 |
if (!on.equals(mxbean.getObjectName())) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
164 |
throw new RuntimeException("Unmatched ObjectName " + |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
165 |
mxbean.getObjectName() + " Expected = " + on); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
166 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
167 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
168 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
169 |
|
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
170 |
private static void checkGarbageCollectorMXBeans(List<GarbageCollectorMXBean> objs) |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
171 |
throws Exception |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
172 |
{ |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
173 |
checkPlatformMXBeans(objs, GarbageCollectorMXBean.class); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
174 |
for (GarbageCollectorMXBean mxbean : objs) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
175 |
ObjectName on = new ObjectName(GARBAGE_COLLECTOR_MXBEAN_DOMAIN_TYPE + |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
176 |
",name=" + mxbean.getName()); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
177 |
if (!on.equals(mxbean.getObjectName())) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
178 |
throw new RuntimeException("Unmatched ObjectName " + |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
179 |
mxbean.getObjectName() + " Expected = " + on); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
180 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
181 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
182 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
183 |
|
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
184 |
private static <T extends PlatformManagedObject> |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
185 |
void checkPlatformMXBeans(List<T> objs, Class<T> mxbeanInterface) |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
186 |
throws Exception |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
187 |
{ |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
188 |
try { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
189 |
getPlatformMXBean(mxbeanInterface); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
190 |
// mxbeanInterface is not a singleton |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
191 |
throw new RuntimeException(mxbeanInterface + ": not a singleton MXBean"); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
192 |
} catch (IllegalArgumentException e) { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
193 |
// expect IAE |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
194 |
} |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
195 |
|
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
196 |
// verify local list of platform MXBeans |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
197 |
List<? extends PlatformManagedObject> mxbeans = |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
198 |
getPlatformMXBeans(mxbeanInterface); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
199 |
if (objs.size() != mxbeans.size()) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
200 |
throw new RuntimeException("Unmatched number of platform MXBeans " |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
201 |
+ mxbeans.size() + ". Expected = " + objs.size()); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
202 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
203 |
List<T> list = new ArrayList<T>(objs); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
204 |
for (PlatformManagedObject pmo : mxbeans) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
205 |
if (list.contains(pmo)) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
206 |
list.remove(pmo); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
207 |
} else { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
208 |
throw new RuntimeException(pmo + |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
209 |
" not in the platform MXBean list"); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
210 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
211 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
212 |
|
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
213 |
if (!list.isEmpty()) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
214 |
throw new RuntimeException("The list returned by getPlatformMXBeans" |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
215 |
+ " not matched"); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
216 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
217 |
|
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
218 |
// verify platform MXBeans in the platform MBeanServer |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
219 |
mxbeans = getPlatformMXBeans(platformMBeanServer, mxbeanInterface); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
220 |
if (objs.size() != mxbeans.size()) { |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
221 |
throw new RuntimeException("Unmatched number of platform MXBeans " |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
222 |
+ mxbeans.size() + ". Expected = " + objs.size()); |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
223 |
} |
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
224 |
} |
9013
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
225 |
|
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
226 |
interface FakeMXBean extends PlatformManagedObject {}; |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
227 |
|
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
228 |
private static void checkInvalidPlatformMXBean() throws IOException { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
229 |
try { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
230 |
getPlatformMXBean(FakeMXBean.class); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
231 |
// mxbeanInterface is not a singleton |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
232 |
throw new RuntimeException("Expect IllegalArgumentException but not thrown"); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
233 |
} catch (IllegalArgumentException e) { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
234 |
// expect IAE |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
235 |
} |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
236 |
|
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
237 |
try { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
238 |
getPlatformMXBeans(FakeMXBean.class); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
239 |
// mxbeanInterface is not a singleton |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
240 |
throw new RuntimeException("Expect IllegalArgumentException but not thrown"); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
241 |
} catch (IllegalArgumentException e) { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
242 |
// expect IAE |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
243 |
} |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
244 |
|
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
245 |
try { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
246 |
getPlatformMXBean(platformMBeanServer, FakeMXBean.class); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
247 |
// mxbeanInterface is not a singleton |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
248 |
throw new RuntimeException("Expect IllegalArgumentException but not thrown"); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
249 |
} catch (IllegalArgumentException e) { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
250 |
// expect IAE |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
251 |
} |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
252 |
|
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
253 |
try { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
254 |
getPlatformMXBeans(platformMBeanServer, FakeMXBean.class); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
255 |
// mxbeanInterface is not a singleton |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
256 |
throw new RuntimeException("Expect IllegalArgumentException but not thrown"); |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
257 |
} catch (IllegalArgumentException e) { |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
258 |
// expect IAE |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
259 |
} |
eedac0b9f552
7024172: Move BufferPoolMXBean and PlatformLoggingMXBean java.lang.management
mchung
parents:
5506
diff
changeset
|
260 |
} |
401
ef01e0dccd63
6610094: Add generic support for platform MXBeans of any type (also fixed 6681031)
mchung
parents:
diff
changeset
|
261 |
} |