< prev index next >
test/jdk/java/util/logging/Level/CustomLevel.java
Print this page
*** 20,29 ****
--- 20,31 ----
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
import java.io.*;
+ import java.lang.management.ManagementFactory;
+ import java.lang.management.PlatformLoggingMXBean;
import java.lang.ref.Reference;
import java.lang.ref.ReferenceQueue;
import java.lang.ref.WeakReference;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
*** 33,45 ****
import java.util.*;
import java.util.logging.*;
/*
* @test
! * @bug 8026027 6543126
* @summary Test Level.parse to look up custom levels by name and its
! * localized name
*
* @run main/othervm CustomLevel
*/
public class CustomLevel extends Level {
--- 35,48 ----
import java.util.*;
import java.util.logging.*;
/*
* @test
! * @bug 8026027 6543126 8187073
! * @modules java.management
* @summary Test Level.parse to look up custom levels by name and its
! * localized name, as well as severity.
*
* @run main/othervm CustomLevel
*/
public class CustomLevel extends Level {
*** 71,80 ****
--- 74,85 ----
}
public static void main(String[] args) throws Exception {
setupCustomLevels();
setUpCustomLevelsOtherLoader();
+ PlatformLoggingMXBean mxbean = ManagementFactory.getPlatformMXBean(PlatformLoggingMXBean.class);
+ Logger logger = Logger.getLogger("foo.bar");
// Level.parse will return the custom Level instance
for (Level level : levels) {
final ResourceBundle rb = getResourceBundle(level);
String name = level.getName();
*** 94,104 ****
--- 99,128 ----
if (l != level) {
throw new RuntimeException("Unexpected level " + l + " "
+ l.getClass() + " for " + localizedName
+ " in " + rb.getBaseBundleName());
}
+ l = Level.parse(String.valueOf(level.intValue()));
+ System.out.println("Level.parse(" + level.intValue() + ") returns " + l);
+ if (l != level) {
+ if (l == null || l.intValue() != level.intValue()) {
+ throw new RuntimeException("Unexpected level " + l
+ + (l == null ? "" : (" " + l.getClass()))
+ + " for " + level.intValue());
+ }
+ }
+ mxbean.setLoggerLevel(logger.getName(), String.valueOf(level.intValue()));
+ Level l2 = logger.getLevel();
+ if (l2 != level) {
+ if (l2 == null || l2.intValue() != level.intValue()) {
+ throw new RuntimeException("Unexpected level " + l2
+ + (l2 == null ? "" : (" " + l2.getClass()))
+ + " for " + level.intValue());
}
+ }
+ }
+
final long otherLevelCount = levels.stream()
.filter(CustomLevel::isCustomLoader)
.count();
< prev index next >