java.util.logging.LogManager#getLogManager ( )源码实例Demo

下面列出了java.util.logging.LogManager#getLogManager ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: jdk8u_jdk   文件: LoggingDeadlock.java
public static void main(String[] args) throws InterruptedException{
    Thread t1 = new Thread(new Runnable() {
        public void run() {
            randomDelay();
            // Trigger Logger.<clinit>
            Logger.getAnonymousLogger();
        }
    });

    Thread t2 = new Thread(new Runnable() {
        public void run() {
            randomDelay();
            // Trigger LogManager.<clinit>
            LogManager.getLogManager();
        }
    });

    t1.start();
    t2.start();

    t1.join();
    t2.join();
    System.out.println("\nTest passed");
}
 
源代码2 项目: hottub   文件: LoggingDeadlock.java
public static void main(String[] args) throws InterruptedException{
    Thread t1 = new Thread(new Runnable() {
        public void run() {
            randomDelay();
            // Trigger Logger.<clinit>
            Logger.getAnonymousLogger();
        }
    });

    Thread t2 = new Thread(new Runnable() {
        public void run() {
            randomDelay();
            // Trigger LogManager.<clinit>
            LogManager.getLogManager();
        }
    });

    t1.start();
    t2.start();

    t1.join();
    t2.join();
    System.out.println("\nTest passed");
}
 
源代码3 项目: java-cloudant   文件: HttpConnection.java
public HttpConnection(String requestMethod,
                      URL url,
                      String contentType) {
    this.requestMethod = requestMethod;
    this.url = url;
    this.contentType = contentType;
    this.requestProperties = new HashMap<String, String>();
    this.requestInterceptors = new LinkedList<HttpConnectionRequestInterceptor>();
    this.responseInterceptors = new LinkedList<HttpConnectionResponseInterceptor>();

    // Calculate log filter for this request if logging is enabled
    if (logger.isLoggable(Level.FINE)) {
        LogManager m = LogManager.getLogManager();
        String httpMethodFilter = m.getProperty("com.cloudant.http.filter.method");
        String urlFilter = m.getProperty("com.cloudant.http.filter.url");
        if (httpMethodFilter != null) {
            // Split the comma separated list of methods
            List<String> methods = Arrays.asList(httpMethodFilter.split(","));
            requestIsLoggable = requestIsLoggable && methods.contains(requestMethod);
        }
        if (urlFilter != null) {
            requestIsLoggable = requestIsLoggable && url.toString().matches(urlFilter);
        }
    }
}
 
源代码4 项目: reef   文件: ThreadLogFormatter.java
public ThreadLogFormatter() {

    super();
    final LogManager logManager = LogManager.getLogManager();
    final String className = this.getClass().getName();

    final String format = logManager.getProperty(className + ".format");
    this.logFormat = format != null ? format : DEFAULT_FORMAT;

    final String rawDropStr = logManager.getProperty(className + ".dropPrefix");
    if (rawDropStr != null) {
      for (String prefix : rawDropStr.trim().split(",")) {
        prefix = prefix.trim();
        if (!prefix.isEmpty()) {
          this.dropPrefix.add(prefix);
        }
      }
    }
  }
 
源代码5 项目: jdk8u60   文件: LoggingDeadlock.java
public static void main(String[] args) throws InterruptedException{
    Thread t1 = new Thread(new Runnable() {
        public void run() {
            randomDelay();
            // Trigger Logger.<clinit>
            Logger.getAnonymousLogger();
        }
    });

    Thread t2 = new Thread(new Runnable() {
        public void run() {
            randomDelay();
            // Trigger LogManager.<clinit>
            LogManager.getLogManager();
        }
    });

    t1.start();
    t2.start();

    t1.join();
    t2.join();
    System.out.println("\nTest passed");
}
 
源代码6 项目: AndroidRobot   文件: PythonProject.java
private static final void replaceAllLogFormatters(Formatter form, Level level)
/*     */   {
/* 179 */     LogManager mgr = LogManager.getLogManager();
/* 180 */     Enumeration loggerNames = mgr.getLoggerNames();
/* 181 */     while (loggerNames.hasMoreElements()) {
/* 182 */       String loggerName = (String)loggerNames.nextElement();
/* 183 */       Logger logger = mgr.getLogger(loggerName);
/* 184 */       for (Handler handler : logger.getHandlers()) {
/* 185 */         handler.setFormatter(form);
/* 186 */         handler.setLevel(level);
/*     */       }
/*     */     }
/*     */   }
 
源代码7 项目: quarkus   文件: SentryLoggerTest.java
public static SentryHandler getSentryHandler() {
    LogManager logManager = LogManager.getLogManager();
    assertThat(logManager).isInstanceOf(org.jboss.logmanager.LogManager.class);

    DelayedHandler delayedHandler = InitialConfigurator.DELAYED_HANDLER;
    assertThat(Logger.getLogger("").getHandlers()).contains(delayedHandler);
    assertThat(delayedHandler.getLevel()).isEqualTo(Level.ALL);

    Handler handler = Arrays.stream(delayedHandler.getHandlers())
            .filter(h -> (h instanceof SentryHandler))
            .findFirst().orElse(null);
    return (SentryHandler) handler;
}
 
源代码8 项目: beam   文件: DataflowWorkerHarnessHelper.java
public static void initializeLogging(Class<?> workerHarnessClass) {
  /* Set up exception handling tied to the workerHarnessClass. */
  Thread.setDefaultUncaughtExceptionHandler(
      new WorkerUncaughtExceptionHandler(LoggerFactory.getLogger(workerHarnessClass)));

  // Reset the global log manager, get the root logger and remove the default log handlers.
  LogManager logManager = LogManager.getLogManager();
  logManager.reset();
  java.util.logging.Logger rootLogger = logManager.getLogger(ROOT_LOGGER_NAME);
  for (Handler handler : rootLogger.getHandlers()) {
    rootLogger.removeHandler(handler);
  }
  DataflowWorkerLoggingInitializer.initialize();
}
 
源代码9 项目: symja_android_library   文件: L4MLogger.java
/**
 * Default initialization, checking for applet in sandbox.
 */
protected void initialize() {
	String loggerName = getName();
	boolean runningSandbox = false;
	// check if we are running in an applet sandbox
	SecurityManager sm = System.getSecurityManager();
	if (null != sm) {
		try {
			Permission perm = new java.util.logging.LoggingPermission("control", "");
			sm.checkPermission(perm);
		} catch (SecurityException e) {
			System.out.println("L4M Logger runs in sandbox");
			runningSandbox = true;
		}
	}
	if (!runningSandbox) {
		// do not use parent handlers but our own
		setUseParentHandlers(false);
		// and add the Lab4inf handler to our logger
		addHandler(new Lab4InfHandler());
		// register with the LogManager
	}
	LogManager manager = LogManager.getLogManager();
	Logger aLogger = manager.getLogger(loggerName);
	if (manager.getLogger(loggerName) == null) {
		if (!LogManager.getLogManager().addLogger(this)) {
			System.err.println("failed to add " + this);
			throw new RuntimeException("addding L4MLogger failed");
		}
	} else {
		String msg;
		msg = format("allready registered %s by %s", loggerName, aLogger);
		aLogger.warning(msg);
		msg = format("could not register me: %s", this);
		aLogger.warning(msg);
	}
	setLevel(Level.WARNING);
}
 
源代码10 项目: hottub   文件: LoggingDeadlock2.java
public static void main(String args[]) throws Throwable {
    final CyclicBarrier startingGate = new CyclicBarrier(2);
    final Throwable[] thrown = new Throwable[1];

    // Some random variation, to help tickle races.
    final Random rnd = new Random();
    final boolean dojoin = rnd.nextBoolean();
    final int JITTER = 1024;
    final int iters1 = rnd.nextInt(JITTER);
    final int iters2 = JITTER - iters1;
    final AtomicInteger counter = new AtomicInteger(0);

    Thread exiter = new Thread() {
        public void run() {
            try {
                startingGate.await();
                for (int i = 0; i < iters1; i++)
                    counter.getAndIncrement();
                System.exit(99);
            } catch (Throwable t) {
                t.printStackTrace();
                System.exit(86);
            }
        }};
    exiter.start();

    startingGate.await();
    for (int i = 0; i < iters2; i++)
        counter.getAndIncrement();
    // This may or may not result in a first call to
    // Runtime.addShutdownHook after shutdown has already
    // commenced.
    LogManager.getLogManager();

    if (dojoin) {
        exiter.join();
        if (thrown[0] != null)
            throw new Error(thrown[0]);
        check(counter.get() == JITTER);
    }
}
 
源代码11 项目: jdk8u-dev-jdk   文件: TestGetLoggerNPE.java
public static void main(String[] args) throws Exception {
    final String testCase = args.length == 0 ? "getLogger" : args[0];
    final JavaAWTAccessStub access = new JavaAWTAccessStub();
    SharedSecrets.setJavaAWTAccess(access);
    final ThreadGroup tg = new ThreadGroup("TestGroup");
    Thread t = new Thread(tg, "test") {
        public void run() {
            try {
                access.setContext(Context.ONE);
                final PrintStream out = System.out;
                System.setOut(null);
                try {
                    if ("getLogger".equals(testCase)) {
                       Logger.getLogger("sun.plugin");
                    } else {
                       LogManager.getLogManager();
                    }
                } finally {
                    System.setOut(out);
                }

                System.out.println(Logger.global);
            } catch (Throwable x) {
                x.printStackTrace();
                thrown = x;
            }
        }
    };
    Policy.setPolicy(new Policy() {
         public boolean implies(ProtectionDomain domain,
                                Permission permission) {
             return true; // all permissions
         }
    });
    System.setSecurityManager(new SecurityManager());
    t.start();
    t.join();
    if (thrown == null) {
        System.out.println("PASSED: " + testCase);
    } else {
        System.err.println("FAILED: " + testCase);
        throw new Error("Test failed: " + testCase + " - " + thrown, thrown);
    }

}
 
源代码12 项目: openjdk-8   文件: MemoryHandlerTest.java
public static void main(String... args) throws IOException {
    // load logging.propertes for the test
    String tstSrc = System.getProperty("test.src", ".");
    File fname = new File(tstSrc, LM_PROP_FNAME);
    String prop = fname.getCanonicalPath();
    System.setProperty(CFG_FILE_PROP, prop);
    LogManager.getLogManager();
    // create a logger
    logger = Logger.getLogger(MemoryHandlerTest.class.getName());
    // don't have parent handlers get log messages
    logger.setUseParentHandlers(false);
    //
    // Test 1,2: create a CustomMemoryHandler which in the config has
    // specified a target of CustomTargetHandler.  (1) Make sure that it
    // is created and (2) that the target handler is loaded.
    //
    CustomMemoryHandler cmh = new CustomMemoryHandler();
    try {
        logger.addHandler(cmh);
    } catch (RuntimeException rte) {
        throw new RuntimeException(
            "Test Failed: did not load java.util.logging.ConsoleHandler as expected",
            rte);
    }
    // if we get here and our config has been processed properly, then we
    // should have loaded our target handler
    if (CustomTargetHandler.numLoaded !=1) {
        throw new RuntimeException(
            "Test failed: did not load CustomTargetHandler as expected");
    }
    //
    // Test 3: try to add a handler with no target.  This should fail with
    // an exception
    CustomMemoryHandlerNoTarget cmhnt = null;
    try {
        cmhnt = new CustomMemoryHandlerNoTarget();
    } catch (RuntimeException re) {
        // expected -- no target specified
        System.out.println("Info: " + re.getMessage() + " as expected.");
    }
    if (cmhnt != null) {
        throw new RuntimeException(
            "Test Failed: erroneously loaded CustomMemoryHandlerNoTarget");
    }

    // Test 4: log a message and check that the target handler is actually used
    logger.log(Level.WARNING, "Unused");
    if (CustomTargetHandler.numPublished != 1) {
        throw new RuntimeException("Test failed: CustomTargetHandler was not used");
    }

    // Test 5: make sure that SimpleTargetHandler hasn't been erroneously called
    if (SimpleTargetHandler.numPublished != 0) {
        throw new RuntimeException("Test failed: SimpleTargetHandler has been used");
    }

    // Test 6: try using SimpleTargetHanlder via standard MemoryHandler
    // (which has target set to SimpleTargetHandler)
    MemoryHandler mh = new MemoryHandler();
    mh.publish(new LogRecord(Level.INFO, "Unused msg to MemoryHandler"));
    // see if it made it to the SimpleTargetHandler
    if (SimpleTargetHandler.numPublished != 1) {
        throw new RuntimeException("Test failed: SimpleTargetHandler was not used");
    }
}
 
源代码13 项目: openjdk-jdk9   文件: MemoryHandlerTest.java
public static void main(String... args) throws IOException {
    // load logging.propertes for the test
    String tstSrc = System.getProperty("test.src", ".");
    File fname = new File(tstSrc, LM_PROP_FNAME);
    String prop = fname.getCanonicalPath();
    System.setProperty(CFG_FILE_PROP, prop);
    LogManager.getLogManager();
    // create a logger
    logger = Logger.getLogger(MemoryHandlerTest.class.getName());
    // don't have parent handlers get log messages
    logger.setUseParentHandlers(false);
    //
    // Test 1,2: create a CustomMemoryHandler which in the config has
    // specified a target of CustomTargetHandler.  (1) Make sure that it
    // is created and (2) that the target handler is loaded.
    //
    CustomMemoryHandler cmh = new CustomMemoryHandler();
    try {
        logger.addHandler(cmh);
    } catch (RuntimeException rte) {
        throw new RuntimeException(
            "Test Failed: did not load java.util.logging.ConsoleHandler as expected",
            rte);
    }
    // if we get here and our config has been processed properly, then we
    // should have loaded our target handler
    if (CustomTargetHandler.numLoaded !=1) {
        throw new RuntimeException(
            "Test failed: did not load CustomTargetHandler as expected");
    }
    //
    // Test 3: try to add a handler with no target.  This should fail with
    // an exception
    CustomMemoryHandlerNoTarget cmhnt = null;
    try {
        cmhnt = new CustomMemoryHandlerNoTarget();
    } catch (RuntimeException re) {
        // expected -- no target specified
        System.out.println("Info: " + re.getMessage() + " as expected.");
    }
    if (cmhnt != null) {
        throw new RuntimeException(
            "Test Failed: erroneously loaded CustomMemoryHandlerNoTarget");
    }

    // Test 4: log a message and check that the target handler is actually used
    logger.log(Level.WARNING, "Unused");
    if (CustomTargetHandler.numPublished != 1) {
        throw new RuntimeException("Test failed: CustomTargetHandler was not used");
    }

    // Test 5: make sure that SimpleTargetHandler hasn't been erroneously called
    if (SimpleTargetHandler.numPublished != 0) {
        throw new RuntimeException("Test failed: SimpleTargetHandler has been used");
    }

    // Test 6: try using SimpleTargetHanlder via standard MemoryHandler
    // (which has target set to SimpleTargetHandler)
    MemoryHandler mh = new MemoryHandler();
    mh.publish(new LogRecord(Level.INFO, "Unused msg to MemoryHandler"));
    // see if it made it to the SimpleTargetHandler
    if (SimpleTargetHandler.numPublished != 1) {
        throw new RuntimeException("Test failed: SimpleTargetHandler was not used");
    }
}
 
源代码14 项目: openjdk-jdk8u   文件: Listeners.java
@SuppressWarnings("deprecation")
public static void main(String[] args) throws Exception {
    LogManager logman = LogManager.getLogManager();

    Listener[] listeners = new Listener[2];
    Listener listener1 = listeners[0] = new Listener(LogManager.class);
    Listener listener2 = listeners[1] = new Listener(LogManager.class);

    // add listeners
    logman.addPropertyChangeListener(listener1);
    test(listeners, 1, 0);

    logman.addPropertyChangeListener(listener1);
    test(listeners, 2, 0);

    logman.addPropertyChangeListener(listener2);
    test(listeners, 2, 1);

    // null handling to check for impact on the existing registrations
    try {
        logman.addPropertyChangeListener(null);
        assertTrue(false, "NullPointerException expected");
    } catch (NullPointerException expected) { }
    test(listeners, 2, 1);

    logman.removePropertyChangeListener(null);  // no-op
    test(listeners, 2, 1);

    // remove listeners
    logman.removePropertyChangeListener(listener1);
    test(listeners, 1, 1);

    logman.removePropertyChangeListener(listener1);
    test(listeners, 0, 1);

    logman.removePropertyChangeListener(listener1);  // no-op
    test(listeners, 0, 1);

    logman.removePropertyChangeListener(listener2);
    test(listeners, 0, 0);

    logman.removePropertyChangeListener(listener2);  // no-op
    test(listeners, 0, 0);
}
 
源代码15 项目: lancoder   文件: Main.java
private static void buildLoggers(int verbosity) {
	Level loggingLevel = Level.SEVERE;

	if (verbosity > 6) {
		verbosity = 6;
	}

	switch (verbosity) {
	case 1:
		loggingLevel = Level.SEVERE;
		break;
	case 2:
		loggingLevel = Level.WARNING;
		break;
	case 3:
		loggingLevel = Level.INFO;
		break;
	case 4:
		loggingLevel = Level.FINE;
		break;
	case 5:
		loggingLevel = Level.FINER;
		break;
	case 6:
		loggingLevel = Level.FINEST;
		break;
	default:
		loggingLevel = Level.INFO;
	}

	LogManager manager = LogManager.getLogManager();
	manager.reset();

	logger.setLevel(loggingLevel);

	ConsoleHandler handler = new ConsoleHandler();
	handler.setLevel(loggingLevel);
	handler.setFormatter(new LogFormatter());
	logger.addHandler(handler);

	manager.addLogger(logger);
}
 
源代码16 项目: hottub   文件: MemoryHandlerTest.java
public static void main(String... args) throws IOException {
    // load logging.propertes for the test
    String tstSrc = System.getProperty("test.src", ".");
    File fname = new File(tstSrc, LM_PROP_FNAME);
    String prop = fname.getCanonicalPath();
    System.setProperty(CFG_FILE_PROP, prop);
    LogManager.getLogManager();
    // create a logger
    logger = Logger.getLogger(MemoryHandlerTest.class.getName());
    // don't have parent handlers get log messages
    logger.setUseParentHandlers(false);
    //
    // Test 1,2: create a CustomMemoryHandler which in the config has
    // specified a target of CustomTargetHandler.  (1) Make sure that it
    // is created and (2) that the target handler is loaded.
    //
    CustomMemoryHandler cmh = new CustomMemoryHandler();
    try {
        logger.addHandler(cmh);
    } catch (RuntimeException rte) {
        throw new RuntimeException(
            "Test Failed: did not load java.util.logging.ConsoleHandler as expected",
            rte);
    }
    // if we get here and our config has been processed properly, then we
    // should have loaded our target handler
    if (CustomTargetHandler.numLoaded !=1) {
        throw new RuntimeException(
            "Test failed: did not load CustomTargetHandler as expected");
    }
    //
    // Test 3: try to add a handler with no target.  This should fail with
    // an exception
    CustomMemoryHandlerNoTarget cmhnt = null;
    try {
        cmhnt = new CustomMemoryHandlerNoTarget();
    } catch (RuntimeException re) {
        // expected -- no target specified
        System.out.println("Info: " + re.getMessage() + " as expected.");
    }
    if (cmhnt != null) {
        throw new RuntimeException(
            "Test Failed: erroneously loaded CustomMemoryHandlerNoTarget");
    }

    // Test 4: log a message and check that the target handler is actually used
    logger.log(Level.WARNING, "Unused");
    if (CustomTargetHandler.numPublished != 1) {
        throw new RuntimeException("Test failed: CustomTargetHandler was not used");
    }

    // Test 5: make sure that SimpleTargetHandler hasn't been erroneously called
    if (SimpleTargetHandler.numPublished != 0) {
        throw new RuntimeException("Test failed: SimpleTargetHandler has been used");
    }

    // Test 6: try using SimpleTargetHanlder via standard MemoryHandler
    // (which has target set to SimpleTargetHandler)
    MemoryHandler mh = new MemoryHandler();
    mh.publish(new LogRecord(Level.INFO, "Unused msg to MemoryHandler"));
    // see if it made it to the SimpleTargetHandler
    if (SimpleTargetHandler.numPublished != 1) {
        throw new RuntimeException("Test failed: SimpleTargetHandler was not used");
    }
}
 
源代码17 项目: openjdk-jdk9   文件: TestGetLoggerNPE.java
public static void main(String[] args) throws Exception {
    final String testCase = args.length == 0 ? "getLogger" : args[0];
    final JavaAWTAccessStub access = new JavaAWTAccessStub();
    SharedSecrets.setJavaAWTAccess(access);
    final ThreadGroup tg = new ThreadGroup("TestGroup");
    Thread t = new Thread(tg, "test") {
        public void run() {
            try {
                access.setContext(Context.ONE);
                final PrintStream out = System.out;
                System.setOut(null);
                try {
                    if ("getLogger".equals(testCase)) {
                       Logger.getLogger("sun.plugin");
                    } else {
                       LogManager.getLogManager();
                    }
                } finally {
                    System.setOut(out);
                }

                System.out.println(Logger.global);
            } catch (Throwable x) {
                x.printStackTrace();
                thrown = x;
            }
        }
    };
    Policy.setPolicy(new Policy() {
         public boolean implies(ProtectionDomain domain,
                                Permission permission) {
             return true; // all permissions
         }
    });
    System.setSecurityManager(new SecurityManager());
    t.start();
    t.join();
    if (thrown == null) {
        System.out.println("PASSED: " + testCase);
    } else {
        System.err.println("FAILED: " + testCase);
        throw new Error("Test failed: " + testCase + " - " + thrown, thrown);
    }

}
 
源代码18 项目: candybean   文件: LoggerUnitTest.java
/**
 * A system test for a logger configured using the candybean logger
 * configuration.
 * 
 * @throws Exception
 */
@Test
public void cbConfiguredLogger() throws Exception {
	String name1 = this.getClass().getSimpleName() + "1";
	String name2 = this.getClass().getSimpleName() + "2";
	String config1Path = Candybean.ROOT_DIR + File.separator + name1 + ".config";
	String config2Path = Candybean.ROOT_DIR + File.separator + name2 + ".config";
	String log1Path = Candybean.ROOT_DIR + File.separator + "log" + File.separator + name1 + ".log";
	String log2Path = Candybean.ROOT_DIR + File.separator + "log" + File.separator + name2 + ".log";
	
	// Load the initial properties from the candybean config file
       Properties initialProperties = candybean.config.getPropertiesCopy();
	
	// Change the FileHandler Formatter to XMLFormatter
	initialProperties.setProperty("java.util.logging.FileHandler.formatter", "java.util.logging.XMLFormatter");
	initialProperties.setProperty("java.util.logging.ConsoleHandler.formatter", "java.util.logging.XMLFormatter");
	
	// Create a new config file and write props to that file
	File config1File = new File(config1Path);
	config1File.createNewFile();
	initialProperties.store(new FileOutputStream(config1File), null);

	// Update the system property that specifies where to load the logging configuration from.
	System.setProperty("java.util.logging.config.file", config1Path);
	LogManager.getLogManager().readConfiguration();
	logger = Logger.getLogger(this.getClass().getSimpleName());
	
	// Log to file and verify text
	File log1File = new File(log1Path);
	FileHandler firstFileHandler = new FileHandler(log1Path);
	logger.addHandler(firstFileHandler);
	logger.info("First logged message configured using candybean configuration file");
	assertTrue(log1File.exists());
	assertEquals(getLinesInLogFile(log1File), 14);
	
	// Change the FileHandler Formatter to SimpleFormatter
	initialProperties.setProperty("java.util.logging.FileHandler.formatter", "java.util.logging.SimpleFormatter");
	initialProperties.setProperty("java.util.logging.ConsoleHandler.formatter", "java.util.logging.SimpleFormatter");
	
	// Create a second config file and write props to that file
	File config2File = new File(config2Path);
	config2File.createNewFile();
	initialProperties.store(new FileOutputStream(config2File), null);

	// Update the system property that specifies where to load the logging configuration from.
	System.setProperty("java.util.logging.config.file", config2Path);
	LogManager.getLogManager().readConfiguration();
	logger = Logger.getLogger(this.getClass().getSimpleName());
	
	// Log to file and verify text
	File log2File = new File(log2Path);
	FileHandler secondFileHandler = new FileHandler(log2Path);
	logger.addHandler(secondFileHandler);
	logger.info("Second logged message configured using different candybean configuration file");
	assertTrue(log2File.exists());
	assertTrue(getLinesInLogFile(log2File) < 13);
	
	// Reset the logging config file path to the default and re-read the configuration
	System.setProperty("java.util.logging.config.file", candybean.config.configFile.getCanonicalPath());
	LogManager logManager = LogManager.getLogManager();
	logManager.readConfiguration();
	
	// Delete all created configuration and log files
	config1File.delete();
	log1File.delete();
	config2File.delete();
	log2File.delete();
}
 
源代码19 项目: openjdk-jdk8u-backup   文件: Listeners.java
@SuppressWarnings("deprecation")
public static void main(String[] args) throws Exception {
    LogManager logman = LogManager.getLogManager();

    Listener[] listeners = new Listener[2];
    Listener listener1 = listeners[0] = new Listener(LogManager.class);
    Listener listener2 = listeners[1] = new Listener(LogManager.class);

    // add listeners
    logman.addPropertyChangeListener(listener1);
    test(listeners, 1, 0);

    logman.addPropertyChangeListener(listener1);
    test(listeners, 2, 0);

    logman.addPropertyChangeListener(listener2);
    test(listeners, 2, 1);

    // null handling to check for impact on the existing registrations
    try {
        logman.addPropertyChangeListener(null);
        assertTrue(false, "NullPointerException expected");
    } catch (NullPointerException expected) { }
    test(listeners, 2, 1);

    logman.removePropertyChangeListener(null);  // no-op
    test(listeners, 2, 1);

    // remove listeners
    logman.removePropertyChangeListener(listener1);
    test(listeners, 1, 1);

    logman.removePropertyChangeListener(listener1);
    test(listeners, 0, 1);

    logman.removePropertyChangeListener(listener1);  // no-op
    test(listeners, 0, 1);

    logman.removePropertyChangeListener(listener2);
    test(listeners, 0, 0);

    logman.removePropertyChangeListener(listener2);  // no-op
    test(listeners, 0, 0);
}
 
源代码20 项目: openjdk-8-source   文件: MemoryHandlerTest.java
public static void main(String... args) throws IOException {
    // load logging.propertes for the test
    String tstSrc = System.getProperty("test.src", ".");
    File fname = new File(tstSrc, LM_PROP_FNAME);
    String prop = fname.getCanonicalPath();
    System.setProperty(CFG_FILE_PROP, prop);
    LogManager.getLogManager();
    // create a logger
    logger = Logger.getLogger(MemoryHandlerTest.class.getName());
    // don't have parent handlers get log messages
    logger.setUseParentHandlers(false);
    //
    // Test 1,2: create a CustomMemoryHandler which in the config has
    // specified a target of CustomTargetHandler.  (1) Make sure that it
    // is created and (2) that the target handler is loaded.
    //
    CustomMemoryHandler cmh = new CustomMemoryHandler();
    try {
        logger.addHandler(cmh);
    } catch (RuntimeException rte) {
        throw new RuntimeException(
            "Test Failed: did not load java.util.logging.ConsoleHandler as expected",
            rte);
    }
    // if we get here and our config has been processed properly, then we
    // should have loaded our target handler
    if (CustomTargetHandler.numLoaded !=1) {
        throw new RuntimeException(
            "Test failed: did not load CustomTargetHandler as expected");
    }
    //
    // Test 3: try to add a handler with no target.  This should fail with
    // an exception
    CustomMemoryHandlerNoTarget cmhnt = null;
    try {
        cmhnt = new CustomMemoryHandlerNoTarget();
    } catch (RuntimeException re) {
        // expected -- no target specified
        System.out.println("Info: " + re.getMessage() + " as expected.");
    }
    if (cmhnt != null) {
        throw new RuntimeException(
            "Test Failed: erroneously loaded CustomMemoryHandlerNoTarget");
    }

    // Test 4: log a message and check that the target handler is actually used
    logger.log(Level.WARNING, "Unused");
    if (CustomTargetHandler.numPublished != 1) {
        throw new RuntimeException("Test failed: CustomTargetHandler was not used");
    }

    // Test 5: make sure that SimpleTargetHandler hasn't been erroneously called
    if (SimpleTargetHandler.numPublished != 0) {
        throw new RuntimeException("Test failed: SimpleTargetHandler has been used");
    }

    // Test 6: try using SimpleTargetHanlder via standard MemoryHandler
    // (which has target set to SimpleTargetHandler)
    MemoryHandler mh = new MemoryHandler();
    mh.publish(new LogRecord(Level.INFO, "Unused msg to MemoryHandler"));
    // see if it made it to the SimpleTargetHandler
    if (SimpleTargetHandler.numPublished != 1) {
        throw new RuntimeException("Test failed: SimpleTargetHandler was not used");
    }
}