Author: toad
Date: 2009-01-28 17:42:06 +0000 (Wed, 28 Jan 2009)
New Revision: 25355

Modified:
   branches/db4o/freenet/src/freenet/client/async/SimpleManifestPutter.java
Log:
Refactor slightly, deactivation


Modified: 
branches/db4o/freenet/src/freenet/client/async/SimpleManifestPutter.java
===================================================================
--- branches/db4o/freenet/src/freenet/client/async/SimpleManifestPutter.java    
2009-01-28 17:34:33 UTC (rev 25354)
+++ branches/db4o/freenet/src/freenet/client/async/SimpleManifestPutter.java    
2009-01-28 17:42:06 UTC (rev 25355)
@@ -181,22 +181,27 @@
                                container.activate(SimpleManifestPutter.this, 
1);
                                
container.activate(putHandlersWaitingForMetadata, 2);
                        }
+                       
+                       boolean allMetadatas = false;
+                       
                        synchronized(SimpleManifestPutter.this) {
                                putHandlersWaitingForMetadata.remove(this);
                                if(persistent) {
                                        
container.store(putHandlersWaitingForMetadata);
                                        container.store(this);
                                }
-                               if(!putHandlersWaitingForMetadata.isEmpty()) {
+                               allMetadatas = 
putHandlersWaitingForMetadata.isEmpty();
+                               if(!allMetadatas) {
                                        if(logMINOR)
                                                Logger.minor(this, "Still 
waiting for metadata: "+putHandlersWaitingForMetadata.size());
-                                       return;
                                }
                        }
+                       if(allMetadatas) {
+                               gotAllMetadata(container, context);
+                       }
                        if(persistent) {
-                               container.activate(SimpleManifestPutter.this, 
1);
+                               container.deactivate(SimpleManifestPutter.this, 
1);
                        }
-                       gotAllMetadata(container, context);
                }
 
                @Override

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

Reply via email to