Author: toad
Date: 2009-04-20 20:17:45 +0000 (Mon, 20 Apr 2009)
New Revision: 27112

Modified:
   trunk/freenet/src/freenet/client/async/DatastoreChecker.java
Log:
Logging infrastructure


Modified: trunk/freenet/src/freenet/client/async/DatastoreChecker.java
===================================================================
--- trunk/freenet/src/freenet/client/async/DatastoreChecker.java        
2009-04-20 20:05:47 UTC (rev 27111)
+++ trunk/freenet/src/freenet/client/async/DatastoreChecker.java        
2009-04-20 20:17:45 UTC (rev 27112)
@@ -14,6 +14,7 @@
 import freenet.node.RequestStarter;
 import freenet.node.SendableGet;
 import freenet.support.Executor;
+import freenet.support.LogThresholdCallback;
 import freenet.support.Logger;
 import freenet.support.io.NativeThread;
 
@@ -22,6 +23,18 @@
  */
 public class DatastoreChecker implements PrioRunnable {
        
+       private static volatile boolean logMINOR;
+       
+       static {
+               Logger.registerLogThresholdCallback(new LogThresholdCallback() {
+                       
+                       @Override
+                       public void shouldUpdate() {
+                               logMINOR = Logger.shouldLog(Logger.MINOR, this);
+                       }
+               });
+       }
+       
        static final int MAX_PERSISTENT_KEYS = 1024;
        
        /** List of arrays of keys to check for persistent requests. PARTIAL: 
@@ -92,7 +105,6 @@
        };
        
     public void loadPersistentRequests(ObjectContainer container, final 
ClientContext context) {
-               boolean logMINOR = Logger.shouldLog(Logger.MINOR, this);
                int totalSize = 0;
                synchronized(this) {
                        for(int i=0;i<persistentKeys.length;i++) {
@@ -220,7 +232,7 @@
        }
        
        public void queueTransientRequest(SendableGet getter, BlockSet blocks) {
-               if(Logger.shouldLog(Logger.MINOR, this)) Logger.minor(this, 
"Queueing transient request "+getter);
+               if(logMINOR) Logger.minor(this, "Queueing transient request 
"+getter);
                Key[] checkKeys = getter.listKeys(null);
                short prio = getter.getPriorityClass(null);
                // FIXME check using store.probablyInStore
@@ -290,7 +302,6 @@
        }
 
        private void realRun() {
-               boolean logMINOR = Logger.shouldLog(Logger.MINOR, this);
                Key[] keys = null;
                SendableGet getter = null;
                boolean persistent = false;
@@ -329,7 +340,7 @@
                                                persistent = false;
                                                item = null;
                                                blocks = 
transientBlockSets[prio].remove(0);
-                                               
if(Logger.shouldLog(Logger.MINOR, this))
+                                               if(logMINOR)
                                                        Logger.minor(this, 
"Checking transient request "+getter);
                                                break;
                                        } else if((!notPersistent) && 
(!persistentGetters[prio].isEmpty())) {
@@ -394,7 +405,7 @@
                                        }
                                        if(!container.ext().isStored(get)) {
                                                // Completed and deleted 
already.
-                                               
if(Logger.shouldLog(Logger.MINOR, this)) 
+                                               if(logMINOR) 
                                                        Logger.minor(this, 
"Already deleted from database");
                                                container.delete(it);
                                                return;

_______________________________________________
cvs mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs

Reply via email to