Author: toad
Date: 2008-07-23 12:50:54 +0000 (Wed, 23 Jul 2008)
New Revision: 21338
Modified:
branches/db4o/freenet/src/freenet/node/fcp/ClientGet.java
branches/db4o/freenet/src/freenet/node/fcp/FCPClient.java
branches/db4o/freenet/src/freenet/node/fcp/FCPConnectionHandler.java
branches/db4o/freenet/src/freenet/node/fcp/WatchGlobal.java
Log:
Activate/deactivate client when used. DO NOT DEACTIVATE THE GLOBAL QUEUE
CLIENT!!
Modified: branches/db4o/freenet/src/freenet/node/fcp/ClientGet.java
===================================================================
--- branches/db4o/freenet/src/freenet/node/fcp/ClientGet.java 2008-07-23
12:46:28 UTC (rev 21337)
+++ branches/db4o/freenet/src/freenet/node/fcp/ClientGet.java 2008-07-23
12:50:54 UTC (rev 21338)
@@ -479,6 +479,8 @@
if(persistenceType == PERSIST_FOREVER)
container.activate(client, 1);
client.queueClientRequestMessage(msg,
VERBOSITY_SPLITFILE_PROGRESS, container);
+ if(persistenceType == PERSIST_FOREVER && !client.isGlobalQueue)
+ container.deactivate(client, 1);
}
public void sendPendingMessages(FCPConnectionOutputHandler handler,
boolean includePersistentRequest, boolean includeData, boolean onlyData,
ObjectContainer container) {
Modified: branches/db4o/freenet/src/freenet/node/fcp/FCPClient.java
===================================================================
--- branches/db4o/freenet/src/freenet/node/fcp/FCPClient.java 2008-07-23
12:46:28 UTC (rev 21337)
+++ branches/db4o/freenet/src/freenet/node/fcp/FCPClient.java 2008-07-23
12:50:54 UTC (rev 21338)
@@ -280,6 +280,8 @@
container.activate(clients[i], 1);
if(clients[i].persistenceType !=
persistenceType) continue;
clients[i].queueClientRequestMessage(msg,
verbosityLevel, true, container);
+ if(persistenceType ==
ClientRequest.PERSIST_FOREVER)
+ container.deactivate(clients[i], 1);
}
}
}
Modified: branches/db4o/freenet/src/freenet/node/fcp/FCPConnectionHandler.java
===================================================================
--- branches/db4o/freenet/src/freenet/node/fcp/FCPConnectionHandler.java
2008-07-23 12:46:28 UTC (rev 21337)
+++ branches/db4o/freenet/src/freenet/node/fcp/FCPConnectionHandler.java
2008-07-23 12:50:54 UTC (rev 21338)
@@ -118,8 +118,12 @@
public void run(ObjectContainer container,
ClientContext context) {
if((rebootClient != null) &&
!rebootClient.hasPersistentRequests(container))
server.unregisterClient(rebootClient,
container);
- if((foreverClient != null) &&
!foreverClient.hasPersistentRequests(container))
- server.unregisterClient(foreverClient,
container);
+ if(foreverClient != null) {
+ container.activate(foreverClient, 1);
+
if(!foreverClient.hasPersistentRequests(container))
+
server.unregisterClient(foreverClient, container);
+ container.deactivate(foreverClient, 1);
+ }
}
}, NativeThread.NORM_PRIORITY, false);
@@ -618,10 +622,12 @@
FCPClient client =
global ? server.globalForeverClient :
getForeverClient(container);
+ container.activate(client, 1);
ClientRequest req = client.getRequest(identifier, container);
if(req != null) {
client.removeByIdentifier(identifier, true, server,
container, server.core.clientContext);
}
+ container.deactivate(client, 1);
return req;
}
}
Modified: branches/db4o/freenet/src/freenet/node/fcp/WatchGlobal.java
===================================================================
--- branches/db4o/freenet/src/freenet/node/fcp/WatchGlobal.java 2008-07-23
12:46:28 UTC (rev 21337)
+++ branches/db4o/freenet/src/freenet/node/fcp/WatchGlobal.java 2008-07-23
12:50:54 UTC (rev 21338)
@@ -48,7 +48,10 @@
handler.server.core.clientContext.jobRunner.queue(new DBJob() {
public void run(ObjectContainer container,
ClientContext context) {
-
handler.getForeverClient(container).setWatchGlobal(enabled, verbosityMask,
handler.server, container);
+ FCPClient client =
handler.getForeverClient(container);
+ container.activate(client, 1);
+ client.setWatchGlobal(enabled, verbosityMask,
handler.server, container);
+ container.deactivate(client, 1);
}
}, NativeThread.NORM_PRIORITY, false);