Author: toad
Date: 2008-05-30 00:00:22 +0000 (Fri, 30 May 2008)
New Revision: 20142

Modified:
   branches/db4o/freenet/src/freenet/client/async/ClientRequestScheduler.java
Log:
addPendingKey() must be called on the database thread, therefore doesn't need 
to schedule a job

Modified: 
branches/db4o/freenet/src/freenet/client/async/ClientRequestScheduler.java
===================================================================
--- branches/db4o/freenet/src/freenet/client/async/ClientRequestScheduler.java  
2008-05-29 23:58:05 UTC (rev 20141)
+++ branches/db4o/freenet/src/freenet/client/async/ClientRequestScheduler.java  
2008-05-30 00:00:22 UTC (rev 20142)
@@ -233,15 +233,10 @@

        void addPendingKey(final ClientKey key, final SendableGet getter) {
                if(getter.persistent()) {
-                       databaseExecutor.execute(new Runnable() {
-                               public void run() {
-                                       try {
-                                               schedCore.addPendingKey(key, 
getter);
-                                       } catch (Throwable t) {
-                                               Logger.error(this, "Caught "+t, 
t);
-                                       }
-                               }
-                       }, "Add pending key");
+                       if(!databaseExecutor.onThread()) {
+                               throw new IllegalStateException("Not on 
database thread!");
+                       }
+                       schedCore.addPendingKey(key, getter);
                } else
                        schedTransient.addPendingKey(key, getter);
        }


Reply via email to