Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mobile
Path: blob/master/test/jdk/javax/management/modelmbean/LoggingExceptionTest.java
41152 views
1
/*
2
* Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.
3
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4
*
5
* This code is free software; you can redistribute it and/or modify it
6
* under the terms of the GNU General Public License version 2 only, as
7
* published by the Free Software Foundation.
8
*
9
* This code is distributed in the hope that it will be useful, but WITHOUT
10
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12
* version 2 for more details (a copy is included in the LICENSE file that
13
* accompanied this code).
14
*
15
* You should have received a copy of the GNU General Public License version
16
* 2 along with this work; if not, write to the Free Software Foundation,
17
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18
*
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.
22
*/
23
24
/*
25
* @test
26
* @bug 6471865 6675768
27
* @summary DescriptorSupport constructors throw IAE when traces are enabled;
28
* RequiredModelMBean.addAttributeChangeNotificationListener throws exception
29
* when traces enabled and no attributes.
30
* @author Luis-Miguel Alventosa
31
* @author Paul Cheeseman
32
*
33
* @modules java.logging
34
* java.management
35
*/
36
37
import java.util.logging.ConsoleHandler;
38
import java.util.logging.Handler;
39
import java.util.logging.Level;
40
import java.util.logging.Logger;
41
import javax.management.Notification;
42
import javax.management.NotificationListener;
43
import javax.management.modelmbean.DescriptorSupport;
44
import javax.management.modelmbean.RequiredModelMBean;
45
46
public class LoggingExceptionTest {
47
private static final String tests[] = new String[] {
48
"DescriptorSupport()",
49
"DescriptorSupport(int)",
50
"DescriptorSupport(String)",
51
"DescriptorSupport(String...)",
52
"DescriptorSupport(String[], Object[])",
53
"DescriptorSupport(DescriptorSupport)",
54
"RequiredModelMBean.addAttributeChangeNotificationListener",
55
};
56
public static void main(String[] args) {
57
Handler handler = new ConsoleHandler();
58
Logger logger = Logger.getLogger("javax.management.modelmbean");
59
logger.addHandler(handler);
60
logger.setLevel(Level.FINEST);
61
try {
62
for (int i = 0; i < tests.length; i++) {
63
System.out.println(">>> DescriptorSupportLoggingTest: Test Case " + i);
64
DescriptorSupport ds;
65
String msg = "Instantiate " + tests[i];
66
System.out.println(msg);
67
switch (i) {
68
case 0:
69
ds = new DescriptorSupport();
70
break;
71
case 1:
72
ds = new DescriptorSupport(10);
73
break;
74
case 2:
75
ds = new DescriptorSupport(new DescriptorSupport().toXMLString());
76
break;
77
case 3:
78
ds = new DescriptorSupport("name1=value1", "name2=value2");
79
break;
80
case 4:
81
ds = new DescriptorSupport(new String[] {"name"}, new Object[] {"value"});
82
break;
83
case 5:
84
ds = new DescriptorSupport(new DescriptorSupport());
85
break;
86
case 6:
87
RequiredModelMBean mbean = new RequiredModelMBean();
88
NotificationListener nl = new NotificationListener() {
89
public void handleNotification(Notification notification,
90
Object handback) {}
91
};
92
mbean.addAttributeChangeNotificationListener(nl, null, null);
93
break;
94
default:
95
throw new AssertionError();
96
}
97
System.out.println(msg + " OK");
98
}
99
} catch (Exception e) {
100
System.out.println("Got unexpected exception = " + e);
101
String msg = "Test FAILED!";
102
System.out.println(msg);
103
throw new IllegalArgumentException(msg);
104
}
105
System.out.println("Test PASSED!");
106
}
107
}
108
109