r26800 - trunk/freenet/src/freenet/client/async

[email protected] Tue, 14 Apr 2009 19:27:56 +0000
Newsgroups gmane.network.freenet.cvs
Message-ID <[email protected]>
Author: saces
Date: 2009-04-14 19:27:55 +0000 (Tue, 14 Apr 2009)
New Revision: 26800

Modified:
   trunk/freenet/src/freenet/client/async/ClientContext.java
Log:
add start(..) for BaseManifestPutter

Modified: trunk/freenet/src/freenet/client/async/ClientContext.java
===================================================================
--- trunk/freenet/src/freenet/client/async/ClientContext.java	2009-04-14 19:24:13 UTC (rev 26799)
+++ trunk/freenet/src/freenet/client/async/ClientContext.java	2009-04-14 19:27:55 UTC (rev 26800)
@@ -163,6 +163,26 @@
 		}
 	}
 
+	public void start(final BaseManifestPutter inserter) throws InsertException {
+		if(inserter.persistent()) {
+			jobRunner.queue(new DBJob() {
+				
+				public void run(ObjectContainer container, ClientContext context) {
+					container.activate(inserter, 1);
+					try {
+						inserter.start(container, context);
+					} catch (InsertException e) {
+						inserter.cb.onFailure(e, inserter, container);
+					}
+					container.deactivate(inserter, 1);
+				}
+				
+			}, NativeThread.NORM_PRIORITY, false);
+		} else {
+			inserter.start(null, this);
+		}
+	}
+
 	public BucketFactory getBucketFactory(boolean persistent) {
 		if(persistent)
 			return persistentBucketFactory;