/** * Set the logger's manager and initializes its configuration from the * manager's properties. */ internal void setManager(LogManager manager) { String levelProperty = manager.getProperty(name + ".level"); if (levelProperty != null) { try { manager.setLevelRecursively(this, Level.parse(levelProperty)); } catch (java.lang.IllegalArgumentException invalidLevel) { invalidLevel.printStackTrace(); } } String handlersPropertyName = "".equals(name) ? "handlers" : name + ".handlers"; String handlersProperty = manager.getProperty(handlersPropertyName); if (handlersProperty != null) { foreach (String handlerName in handlersProperty.Split(",|\\s".toCharArray())) { if (handlerName.equals("")) { continue; } Handler handler; try { handler = (Handler)LogManager.getInstanceByClass(handlerName); } catch (java.lang.Exception invalidHandlerName) { invalidHandlerName.printStackTrace(); continue; } try { String level = manager.getProperty(handlerName + ".level"); if (level != null) { handler.setLevel(Level.parse(level)); } } catch (java.lang.Exception invalidLevel) { invalidLevel.printStackTrace(); } handlers.add(handler); } } }
/* * Default constructor, construct and init a {@code MemoryHandler} using * {@code LogManager} properties or default values. * * @throws RuntimeException * if property value are invalid and no default value could be * used. */ public MemoryHandler() : base() { String className = this.getClass().getName(); // init target String targetName = manager.getProperty(className + ".target"); //$NON-NLS-1$ try { target = (Handler)java.lang.Class.forName(targetName).newInstance(); } catch (Exception e) { // logging.10=Cannot load target handler:{0} throw new java.lang.RuntimeException("Cannot load target handler: " + //$NON-NLS-1$ targetName); } // init size String sizeString = manager.getProperty(className + ".size"); //$NON-NLS-1$ if (null != sizeString) { try { size = java.lang.Integer.parseInt(sizeString); if (size <= 0) { size = DEFAULT_SIZE; } } catch (java.lang.Exception e) { printInvalidPropMessage(className + ".size", sizeString, e); //$NON-NLS-1$ } } // init push level String pushName = manager.getProperty(className + ".push"); //$NON-NLS-1$ if (null != pushName) { try { pushJ = Level.parse(pushName); } catch (java.lang.Exception e) { printInvalidPropMessage(className + ".push", pushName, e); //$NON-NLS-1$ } } // init other properties which are common for all Handler initProperties("ALL", null, "java.util.logging.SimpleFormatter", null); //$NON-NLS-1$//$NON-NLS-2$ buffer = new LogRecord[size]; }
/* * init the common properties, including filter, level, formatter, and * encoding */ internal void initProperties(String defaultLevel, String defaultFilter, String defaultFormatter, String defaultEncoding) { LogManager manager = LogManager.getLogManager(); // set filter String filterName = manager.getProperty(prefix + ".filter"); //$NON-NLS-1$ if (null != filterName) { try { filter = (Filter)getCustomizeInstance(filterName); } catch (java.lang.Exception e1) { printInvalidPropMessage("filter", filterName, e1); //$NON-NLS-1$ filter = (Filter)getDefaultInstance(defaultFilter); } } else { filter = (Filter)getDefaultInstance(defaultFilter); } // set level String levelName = manager.getProperty(prefix + ".level"); //$NON-NLS-1$ if (null != levelName) { try { level = Level.parse(levelName); } catch (java.lang.Exception e) { printInvalidPropMessage("level", levelName, e); //$NON-NLS-1$ level = Level.parse(defaultLevel); } } else { level = Level.parse(defaultLevel); } // set formatter String formatterName = manager.getProperty(prefix + ".formatter"); //$NON-NLS-1$ if (null != formatterName) { try { formatter = (Formatter)getCustomizeInstance(formatterName); } catch (java.lang.Exception e) { printInvalidPropMessage("formatter", formatterName, e); //$NON-NLS-1$ formatter = (Formatter)getDefaultInstance(defaultFormatter); } } else { formatter = (Formatter)getDefaultInstance(defaultFormatter); } // set encoding String encodingName = manager.getProperty(prefix + ".encoding"); //$NON-NLS-1$ try { internalSetEncoding(encodingName); } catch (java.io.UnsupportedEncodingException e) { printInvalidPropMessage("encoding", encodingName, e); //$NON-NLS-1$ } }