       1 /*
       2  * Copyright (c) 2012, 2013, 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.  Oracle designates this
       8  * particular file as subject to the "Classpath" exception as provided
       9  * by Oracle in the LICENSE file that accompanied this code.
      10  *
      11  * This code is distributed in the hope that it will be useful, but WITHOUT
      12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
      13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
      14  * version 2 for more details (a copy is included in the LICENSE file that
      15  * accompanied this code).
      16  *
      17  * You should have received a copy of the GNU General Public License version
      18  * 2 along with this work; if not, write to the Free Software Foundation,
      19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
      20  *
      21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
      22  * or visit www.oracle.com if you need additional information or have any
      23  * questions.
      24  */
      25
      26 package com.sun.glass.ui.lens;
      27
      28 import java.security.AccessController;
      29 import java.security.PrivilegedAction;
      30 import java.util.Locale;
      31 import sun.util.logging.PlatformLogger;
      32 import sun.util.logging.PlatformLogger.Level;
      33
      34 final class LensLogger {
      35
      36     private static final PlatformLogger logger = initLogger();
      37
      38     private static PlatformLogger initLogger() {
      39         PlatformLogger logger = PlatformLogger.getLogger("lens");
      40         String levelString = AccessController.doPrivileged(
      41         new PrivilegedAction<String>() {
      42             public String run() {
      43                 return System.getProperty("log.lens", "SEVERE").toUpperCase(Locale.ROOT);
      44             }
      45         });
      46         try {
      47             logger.setLevel(Level.valueOf(levelString));
      48         } catch (Exception e) {
      49             logger.setLevel(Level.SEVERE);
      50         }
      51         return logger;
      52     }
      53
      54     public static PlatformLogger getLogger() {
      55         return logger;
      56     }
      57 }