src/share/classes/java/util/logging/MemoryHandler.java

Print this page

        

@@ -92,35 +92,35 @@
     private int size;
     private Handler target;
     private LogRecord buffer[];
     int start, count;
 
-    // Private method to configure a MemoryHandler from LogManager
-    // properties and/or default values as specified in the class
-    // javadoc.
-    private void configure() {
+    // Package-private support for configuring various properties
+    // with specified/configured/default values
+
+    @Override
+    Level getDefaultLevel() { return Level.ALL; }
+
+    @Override
+    void configure(Formatter specifiedFormatter) {
         LogManager manager = LogManager.getLogManager();
         String cname = getClass().getName();
 
         pushLevel = manager.getLevelProperty(cname +".push", Level.SEVERE);
         size = manager.getIntProperty(cname + ".size", DEFAULT_SIZE);
         if (size <= 0) {
             size = DEFAULT_SIZE;
         }
-        setLevel(manager.getLevelProperty(cname +".level", Level.ALL));
-        setFilter(manager.getFilterProperty(cname +".filter", null));
-        setFormatter(manager.getFormatterProperty(cname +".formatter", new SimpleFormatter()));
+        super.configure(specifiedFormatter);
     }
 
     /**
      * Create a <tt>MemoryHandler</tt> and configure it based on
      * <tt>LogManager</tt> configuration properties.
      */
     public MemoryHandler() {
-        sealed = false;
-        configure();
-        sealed = true;
+        configure(null);
 
         LogManager manager = LogManager.getLogManager();
         String handlerName = getClass().getName();
         String targetName = manager.getProperty(handlerName+".target");
         if (targetName == null) {

@@ -162,13 +162,11 @@
             throw new NullPointerException();
         }
         if (size <= 0) {
             throw new IllegalArgumentException();
         }
-        sealed = false;
-        configure();
-        sealed = true;
+        configure(null);
         this.target = target;
         this.pushLevel = pushLevel;
         this.size = size;
         init();
     }