Author: toad
Date: 2009-04-08 23:24:51 +0000 (Wed, 08 Apr 2009)
New Revision: 26667

Modified:
   trunk/freenet/src/freenet/node/fcp/ClientGet.java
   trunk/freenet/src/freenet/node/fcp/ClientPut.java
   trunk/freenet/src/freenet/node/fcp/ClientPutBase.java
   trunk/freenet/src/freenet/node/fcp/ClientPutDir.java
   trunk/freenet/src/freenet/node/fcp/ClientRequest.java
   trunk/freenet/src/freenet/node/fcp/FCPConnectionHandler.java
   trunk/freenet/src/freenet/node/fcp/FCPServer.java
Log:
FCPClient's other than the global queue are not necessarily activated. Hence we 
need to run the constructors for ClientGet/Put/PutDir on the database thread, 
in order to activate them.


Modified: trunk/freenet/src/freenet/node/fcp/ClientGet.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientGet.java   2009-04-08 22:57:59 UTC 
(rev 26666)
+++ trunk/freenet/src/freenet/node/fcp/ClientGet.java   2009-04-08 23:24:51 UTC 
(rev 26667)
@@ -82,10 +82,10 @@
        public ClientGet(FCPClient globalClient, FreenetURI uri, boolean 
dsOnly, boolean ignoreDS,
                        int maxSplitfileRetries, int maxNonSplitfileRetries, 
long maxOutputLength,
                        short returnType, boolean persistRebootOnly, String 
identifier, int verbosity, short prioClass,
-                       File returnFilename, File returnTempFilename, FCPServer 
server) throws IdentifierCollisionException, NotAllowedException, IOException {
+                       File returnFilename, File returnTempFilename, FCPServer 
server, ObjectContainer container) throws IdentifierCollisionException, 
NotAllowedException, IOException {
                super(uri, identifier, verbosity, null, globalClient, prioClass,
                                (persistRebootOnly ? 
ClientRequest.PERSIST_REBOOT : ClientRequest.PERSIST_FOREVER),
-                               null, true);
+                               null, true, container);
 
                fctx = new FetchContext(server.defaultFetchContext, 
FetchContext.IDENTICAL_MASK, false, null);
                fctx.eventProducer.addEventListener(this);
@@ -122,9 +122,9 @@
                                        returnBucket, null);
        }
        
-       public ClientGet(FCPConnectionHandler handler, ClientGetMessage 
message, FCPServer server) throws IdentifierCollisionException, 
MessageInvalidException {
+       public ClientGet(FCPConnectionHandler handler, ClientGetMessage 
message, FCPServer server, ObjectContainer container) throws 
IdentifierCollisionException, MessageInvalidException {
                super(message.uri, message.identifier, message.verbosity, 
handler, message.priorityClass,
-                               message.persistenceType, message.clientToken, 
message.global);
+                               message.persistenceType, message.clientToken, 
message.global, container);
                // Create a Fetcher directly in order to get more fine-grained 
control,
                // since the client may override a few context elements.
                fctx = new FetchContext(server.defaultFetchContext, 
FetchContext.IDENTICAL_MASK, false, null);

Modified: trunk/freenet/src/freenet/node/fcp/ClientPut.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientPut.java   2009-04-08 22:57:59 UTC 
(rev 26666)
+++ trunk/freenet/src/freenet/node/fcp/ClientPut.java   2009-04-08 23:24:51 UTC 
(rev 26667)
@@ -103,8 +103,8 @@
        public ClientPut(FCPClient globalClient, FreenetURI uri, String 
identifier, int verbosity, 
                        short priorityClass, short persistenceType, String 
clientToken, boolean getCHKOnly,
                        boolean dontCompress, int maxRetries, short 
uploadFromType, File origFilename, String contentType,
-                       Bucket data, FreenetURI redirectTarget, String 
targetFilename, boolean earlyEncode, FCPServer server) throws 
IdentifierCollisionException, NotAllowedException, FileNotFoundException, 
MalformedURLException, MetadataUnresolvedException {
-               super(uri, identifier, verbosity, null, globalClient, 
priorityClass, persistenceType, null, true, getCHKOnly, dontCompress, 
maxRetries, earlyEncode, server);
+                       Bucket data, FreenetURI redirectTarget, String 
targetFilename, boolean earlyEncode, FCPServer server, ObjectContainer 
container) throws IdentifierCollisionException, NotAllowedException, 
FileNotFoundException, MalformedURLException, MetadataUnresolvedException {
+               super(uri, identifier, verbosity, null, globalClient, 
priorityClass, persistenceType, null, true, getCHKOnly, dontCompress, 
maxRetries, earlyEncode, server, container);
                if(uploadFromType == ClientPutMessage.UPLOAD_FROM_DISK) {
                        if(!server.core.allowUploadFrom(origFilename))
                                throw new NotAllowedException();
@@ -145,10 +145,10 @@
                                null, targetFilename, binaryBlob);
        }
        
-       public ClientPut(FCPConnectionHandler handler, ClientPutMessage 
message, FCPServer server) throws IdentifierCollisionException, 
MessageInvalidException, MalformedURLException {
+       public ClientPut(FCPConnectionHandler handler, ClientPutMessage 
message, FCPServer server, ObjectContainer container) throws 
IdentifierCollisionException, MessageInvalidException, MalformedURLException {
                super(message.uri, message.identifier, message.verbosity, 
handler, 
                                message.priorityClass, message.persistenceType, 
message.clientToken, message.global,
-                               message.getCHKOnly, message.dontCompress, 
message.maxRetries, message.earlyEncode, server);
+                               message.getCHKOnly, message.dontCompress, 
message.maxRetries, message.earlyEncode, server, container);
                String salt = null;
                byte[] saltedHash = null;
                binaryBlob = message.binaryBlob;

Modified: trunk/freenet/src/freenet/node/fcp/ClientPutBase.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientPutBase.java       2009-04-08 
22:57:59 UTC (rev 26666)
+++ trunk/freenet/src/freenet/node/fcp/ClientPutBase.java       2009-04-08 
23:24:51 UTC (rev 26667)
@@ -62,8 +62,8 @@
 
        public ClientPutBase(FreenetURI uri, String identifier, int verbosity, 
FCPConnectionHandler handler, 
                        short priorityClass, short persistenceType, String 
clientToken, boolean global, boolean getCHKOnly,
-                       boolean dontCompress, int maxRetries, boolean 
earlyEncode, FCPServer server) throws MalformedURLException {
-               super(uri, identifier, verbosity, handler, priorityClass, 
persistenceType, clientToken, global);
+                       boolean dontCompress, int maxRetries, boolean 
earlyEncode, FCPServer server, ObjectContainer container) throws 
MalformedURLException {
+               super(uri, identifier, verbosity, handler, priorityClass, 
persistenceType, clientToken, global, container);
                this.getCHKOnly = getCHKOnly;
                ctx = new InsertContext(server.defaultInsertContext, new 
SimpleEventProducer());
                ctx.dontCompress = dontCompress;
@@ -75,8 +75,8 @@
 
        public ClientPutBase(FreenetURI uri, String identifier, int verbosity, 
FCPConnectionHandler handler,
                        FCPClient client, short priorityClass, short 
persistenceType, String clientToken, boolean global,
-                       boolean getCHKOnly, boolean dontCompress, int 
maxRetries, boolean earlyEncode, FCPServer server) throws MalformedURLException 
{
-               super(uri, identifier, verbosity, handler, client, 
priorityClass, persistenceType, clientToken, global);
+                       boolean getCHKOnly, boolean dontCompress, int 
maxRetries, boolean earlyEncode, FCPServer server, ObjectContainer container) 
throws MalformedURLException {
+               super(uri, identifier, verbosity, handler, client, 
priorityClass, persistenceType, clientToken, global, container);
                this.getCHKOnly = getCHKOnly;
                ctx = new InsertContext(server.defaultInsertContext, new 
SimpleEventProducer());
                ctx.dontCompress = dontCompress;

Modified: trunk/freenet/src/freenet/node/fcp/ClientPutDir.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientPutDir.java        2009-04-08 
22:57:59 UTC (rev 26666)
+++ trunk/freenet/src/freenet/node/fcp/ClientPutDir.java        2009-04-08 
23:24:51 UTC (rev 26667)
@@ -56,10 +56,10 @@
        }
        
        public ClientPutDir(FCPConnectionHandler handler, ClientPutDirMessage 
message, 
-                       HashMap<String, Object> manifestElements, boolean 
wasDiskPut, FCPServer server) throws IdentifierCollisionException, 
MalformedURLException {
+                       HashMap<String, Object> manifestElements, boolean 
wasDiskPut, FCPServer server, ObjectContainer container) throws 
IdentifierCollisionException, MalformedURLException {
                super(message.uri, message.identifier, message.verbosity, 
handler,
                                message.priorityClass, message.persistenceType, 
message.clientToken, message.global,
-                               message.getCHKOnly, message.dontCompress, 
message.maxRetries, message.earlyEncode, server);
+                               message.getCHKOnly, message.dontCompress, 
message.maxRetries, message.earlyEncode, server, container);
                logMINOR = Logger.shouldLog(Logger.MINOR, this);
                this.wasDiskPut = wasDiskPut;
                
@@ -88,8 +88,8 @@
        *       Puts a disk dir
         * @throws InsertException 
        */
-       public ClientPutDir(FCPClient client, FreenetURI uri, String 
identifier, int verbosity, short priorityClass, short persistenceType, String 
clientToken, boolean getCHKOnly, boolean dontCompress, int maxRetries, File 
dir, String defaultName, boolean allowUnreadableFiles, boolean global, boolean 
earlyEncode, FCPServer server) throws FileNotFoundException, 
IdentifierCollisionException, MalformedURLException {
-               super(uri, identifier, verbosity , null, client, priorityClass, 
persistenceType, clientToken, global, getCHKOnly, dontCompress, maxRetries, 
earlyEncode, server);
+       public ClientPutDir(FCPClient client, FreenetURI uri, String 
identifier, int verbosity, short priorityClass, short persistenceType, String 
clientToken, boolean getCHKOnly, boolean dontCompress, int maxRetries, File 
dir, String defaultName, boolean allowUnreadableFiles, boolean global, boolean 
earlyEncode, FCPServer server, ObjectContainer container) throws 
FileNotFoundException, IdentifierCollisionException, MalformedURLException {
+               super(uri, identifier, verbosity , null, client, priorityClass, 
persistenceType, clientToken, global, getCHKOnly, dontCompress, maxRetries, 
earlyEncode, server, container);
 
                wasDiskPut = true;
                logMINOR = Logger.shouldLog(Logger.MINOR, this);

Modified: trunk/freenet/src/freenet/node/fcp/ClientRequest.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientRequest.java       2009-04-08 
22:57:59 UTC (rev 26666)
+++ trunk/freenet/src/freenet/node/fcp/ClientRequest.java       2009-04-08 
23:24:51 UTC (rev 26667)
@@ -73,7 +73,7 @@
        }
        
        public ClientRequest(FreenetURI uri2, String identifier2, int 
verbosity2, FCPConnectionHandler handler, 
-                       FCPClient client, short priorityClass2, short 
persistenceType2, String clientToken2, boolean global) {
+                       FCPClient client, short priorityClass2, short 
persistenceType2, String clientToken2, boolean global, ObjectContainer 
container) {
                int hash = super.hashCode();
                if(hash == 0) hash = 1;
                hashCode = hash;
@@ -104,6 +104,10 @@
                        this.client = null;
                } else {
                        origHandler = null;
+                       if(persistenceType == PERSIST_FOREVER) {
+                               container.activate(client, 1);
+                               client.init(container);
+                       }
                        this.client = client;
                        if(client != null)
                                assert(client.persistenceType == 
persistenceType);
@@ -113,7 +117,7 @@
        }
 
        public ClientRequest(FreenetURI uri2, String identifier2, int 
verbosity2, FCPConnectionHandler handler, 
-                       short priorityClass2, short persistenceType2, String 
clientToken2, boolean global) {
+                       short priorityClass2, short persistenceType2, String 
clientToken2, boolean global, ObjectContainer container) {
                int hash = super.hashCode();
                if(hash == 0) hash = 1;
                hashCode = hash;
@@ -148,7 +152,7 @@
                        client = persistenceType == PERSIST_FOREVER ? 
handler.server.globalForeverClient : handler.server.globalRebootClient;
                } else {
                        
assert(!handler.server.core.clientDatabaseExecutor.onThread());
-                       client = persistenceType == PERSIST_FOREVER ? 
handler.getForeverClient(null) : handler.getRebootClient();
+                       client = persistenceType == PERSIST_FOREVER ? 
handler.getForeverClient(container) : handler.getRebootClient();
                }
                lowLevelClient = client.lowLevelClient;
                if(lowLevelClient == null)

Modified: trunk/freenet/src/freenet/node/fcp/FCPConnectionHandler.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/FCPConnectionHandler.java        
2009-04-08 22:57:59 UTC (rev 26666)
+++ trunk/freenet/src/freenet/node/fcp/FCPConnectionHandler.java        
2009-04-08 23:24:51 UTC (rev 26667)
@@ -226,11 +226,13 @@
                return clientName;
        }
 
+       // FIXME next 3 methods are in need of refactoring!
+       
        /**
         * Start a ClientGet. If there is an identifier collision, queue an 
IdentifierCollisionMessage.
         * Hence, we can run stuff on other threads if we need to, as long as 
we send the right messages.
         */
-       public void startClientGet(ClientGetMessage message) {
+       public void startClientGet(final ClientGetMessage message) {
                final String id = message.identifier;
                final boolean global = message.global;
                ClientGet cg = null;
@@ -245,15 +247,27 @@
                                success = !requestsByIdentifier.containsKey(id);
                        if(success) {
                                try {
-                                       cg = new ClientGet(this, message, 
server);
-                                       if(!persistent)
+                                       
+                                       if(!persistent) {
+                                               cg = new ClientGet(this, 
message, server, null);
                                                requestsByIdentifier.put(id, 
cg);
-                                       else if(message.persistenceType == 
ClientRequest.PERSIST_FOREVER) {
-                                               final ClientGet getter = cg;
+                                       } else if(message.persistenceType == 
ClientRequest.PERSIST_FOREVER) {
                                                
server.core.clientContext.jobRunner.queue(new DBJob() {
 
                                                        public void 
run(ObjectContainer container, ClientContext context) {
+                                                               ClientGet 
getter;
                                                                try {
+                                                                       getter 
= new ClientGet(FCPConnectionHandler.this, message, server, container);
+                                                               } catch 
(IdentifierCollisionException e1) {
+                                                                       
Logger.normal(this, "Identifier collision on "+this);
+                                                                       
FCPMessage msg = new IdentifierCollisionMessage(id, message.global);
+                                                                       
outputHandler.queue(msg);
+                                                                       return;
+                                                               } catch 
(MessageInvalidException e1) {
+                                                                       
outputHandler.queue(new ProtocolErrorMessage(e1.protocolCode, false, 
e1.getMessage(), e1.ident, e1.global));
+                                                                       return;
+                                                               }
+                                                               try {
                                                                        
getter.register(container, false, false);
                                                                        
container.store(getter);
                                                                } catch 
(IdentifierCollisionException e) {
@@ -268,6 +282,8 @@
                                                        
                                                }, 
NativeThread.HIGH_PRIORITY-1, false); // user wants a response soon... but 
doesn't want it to block the queue page etc
                                                return; // Don't run the 
start() below
+                                       } else {
+                                               cg = new ClientGet(this, 
message, server, null);
                                        }
                                } catch (IdentifierCollisionException e) {
                                        success = false;
@@ -310,24 +326,38 @@
                        else
                                success = !requestsByIdentifier.containsKey(id);
                        if(success) {
-                               try {
-                                       cp = new ClientPut(this, message, 
server);
-                               } catch (IdentifierCollisionException e) {
-                                       success = false;
-                               } catch (MessageInvalidException e) {
-                                       outputHandler.queue(new 
ProtocolErrorMessage(e.protocolCode, false, e.getMessage(), e.ident, e.global));
-                                       return;
-                               } catch (MalformedURLException e) {
-                                       failedMessage = new 
ProtocolErrorMessage(ProtocolErrorMessage.FREENET_URI_PARSE_ERROR, true, null, 
id, message.global);
-                               }
-                               if(cp != null && !persistent)
+                               if(cp != null && !persistent) {
+                                       try {
+                                               cp = new ClientPut(this, 
message, server, null);
+                                       } catch (IdentifierCollisionException 
e) {
+                                               success = false;
+                                       } catch (MessageInvalidException e) {
+                                               outputHandler.queue(new 
ProtocolErrorMessage(e.protocolCode, false, e.getMessage(), e.ident, e.global));
+                                               return;
+                                       } catch (MalformedURLException e) {
+                                               failedMessage = new 
ProtocolErrorMessage(ProtocolErrorMessage.FREENET_URI_PARSE_ERROR, true, null, 
id, message.global);
+                                       }
                                        requestsByIdentifier.put(id, cp);
-                               else if(cp != null && message.persistenceType 
== ClientRequest.PERSIST_FOREVER) {
-                                       final ClientPut putter = cp;
+                               } else if(cp != null && message.persistenceType 
== ClientRequest.PERSIST_FOREVER) {
                                        
server.core.clientContext.jobRunner.queue(new DBJob() {
 
                                                public void run(ObjectContainer 
container, ClientContext context) {
+                                                       ClientPut putter;
                                                        try {
+                                                               putter = new 
ClientPut(FCPConnectionHandler.this, message, server, container);
+                                                       } catch 
(IdentifierCollisionException e) {
+                                                               
Logger.normal(this, "Identifier collision on "+this);
+                                                               FCPMessage msg 
= new IdentifierCollisionMessage(id, message.global);
+                                                               
outputHandler.queue(msg);
+                                                               return;
+                                                       } catch 
(MessageInvalidException e) {
+                                                               
outputHandler.queue(new ProtocolErrorMessage(e.protocolCode, false, 
e.getMessage(), e.ident, e.global));
+                                                               return;
+                                                       } catch 
(MalformedURLException e) {
+                                                               
outputHandler.queue(new 
ProtocolErrorMessage(ProtocolErrorMessage.FREENET_URI_PARSE_ERROR, true, null, 
id, message.global));
+                                                               return;
+                                                       }
+                                                       try {
                                                                
putter.register(container, false, false);
                                                                
container.store(putter);
                                                        } catch 
(IdentifierCollisionException e) {
@@ -342,6 +372,17 @@
                                                
                                        }, NativeThread.HIGH_PRIORITY-1, 
false); // user wants a response soon... but doesn't want it to block the queue 
page etc
                                        return; // Don't run the start() below
+                               } else {
+                                       try {
+                                               cp = new ClientPut(this, 
message, server, null);
+                                       } catch (IdentifierCollisionException 
e) {
+                                               success = false;
+                                       } catch (MessageInvalidException e) {
+                                               outputHandler.queue(new 
ProtocolErrorMessage(e.protocolCode, false, e.getMessage(), e.ident, e.global));
+                                               return;
+                                       } catch (MalformedURLException e) {
+                                               failedMessage = new 
ProtocolErrorMessage(ProtocolErrorMessage.FREENET_URI_PARSE_ERROR, true, null, 
id, message.global);
+                                       }
                                }
                        }
                        if(!success) {
@@ -383,7 +424,7 @@
                }
        }
 
-       public void startClientPutDir(ClientPutDirMessage message, 
HashMap<String, Object> buckets, boolean wasDiskPut) {
+       public void startClientPutDir(final ClientPutDirMessage message, final 
HashMap<String, Object> buckets, final boolean wasDiskPut) {
                if(logMINOR)
                        Logger.minor(this, "Start ClientPutDir");
                final String id = message.identifier;
@@ -401,24 +442,35 @@
                                success = !requestsByIdentifier.containsKey(id);
                }
                if(success) {
-                       try {
-                               cp = new ClientPutDir(this, message, buckets, 
wasDiskPut, server);
-                       } catch (IdentifierCollisionException e) {
-                               success = false;
-                       } catch (MalformedURLException e) {
-                               failedMessage = new 
ProtocolErrorMessage(ProtocolErrorMessage.FREENET_URI_PARSE_ERROR, true, null, 
id, message.global);
-                       }
                        if(cp != null && !persistent) {
-                               synchronized(this) {
-                                       requestsByIdentifier.put(id, cp);
+                               try {
+                                       cp = new ClientPutDir(this, message, 
buckets, wasDiskPut, server, null);
+                                       synchronized(this) {
+                                               requestsByIdentifier.put(id, 
cp);
+                                       }
+                               } catch (IdentifierCollisionException e) {
+                                       success = false;
+                               } catch (MalformedURLException e) {
+                                       failedMessage = new 
ProtocolErrorMessage(ProtocolErrorMessage.FREENET_URI_PARSE_ERROR, true, null, 
id, message.global);
                                }
                                // FIXME register non-persistent requests in 
the constructors also, we already register persistent ones...
                        } else if(cp != null && message.persistenceType == 
ClientRequest.PERSIST_FOREVER) {
-                               final ClientPutDir putter = cp;
                                server.core.clientContext.jobRunner.queue(new 
DBJob() {
 
                                        public void run(ObjectContainer 
container, ClientContext context) {
+                                               ClientPutDir putter;
                                                try {
+                                                       putter = new 
ClientPutDir(FCPConnectionHandler.this, message, buckets, wasDiskPut, server, 
container);
+                                               } catch 
(IdentifierCollisionException e) {
+                                                       Logger.normal(this, 
"Identifier collision on "+this);
+                                                       FCPMessage msg = new 
IdentifierCollisionMessage(id, message.global);
+                                                       
outputHandler.queue(msg);
+                                                       return;
+                                               } catch (MalformedURLException 
e) {
+                                                       outputHandler.queue(new 
ProtocolErrorMessage(ProtocolErrorMessage.FREENET_URI_PARSE_ERROR, true, null, 
id, message.global));
+                                                       return;
+                                               }
+                                               try {
                                                        
putter.register(container, false, false);
                                                        container.store(putter);
                                                } catch 
(IdentifierCollisionException e) {
@@ -434,6 +486,14 @@
                                }, NativeThread.HIGH_PRIORITY-1, false); // 
user wants a response soon... but doesn't want it to block the queue page etc
                                return; // Don't run the start() below
                                
+                       } else {
+                               try {
+                                       cp = new ClientPutDir(this, message, 
buckets, wasDiskPut, server, null);
+                               } catch (IdentifierCollisionException e) {
+                                       success = false;
+                               } catch (MalformedURLException e) {
+                                       failedMessage = new 
ProtocolErrorMessage(ProtocolErrorMessage.FREENET_URI_PARSE_ERROR, true, null, 
id, message.global);
+                               }
                        }
                        if(!success) {
                                Logger.normal(this, "Identifier collision on 
"+this);
@@ -466,20 +526,12 @@
 
        public FCPClient getForeverClient(ObjectContainer container) {
                synchronized(this) {
-                       if(foreverClient != null)
-                               return foreverClient;
-                       if(container == null) {
-                               while(foreverClient == null && 
(!failedGetForever) && (!isClosed)) {
-                                       try {
-                                               wait();
-                                       } catch (InterruptedException e) {
-                                               // Ignore
-                                       }
-                               }
-                               return foreverClient;
-                       } else {
-                               return createForeverClient(clientName, 
container);
+                       if(foreverClient == null) {
+                               foreverClient = createForeverClient(clientName, 
container);
                        }
+                       container.activate(foreverClient, 1);
+                       foreverClient.init(container);
+                       return foreverClient;
                }
        }
 

Modified: trunk/freenet/src/freenet/node/fcp/FCPServer.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/FCPServer.java   2009-04-08 22:57:59 UTC 
(rev 26666)
+++ trunk/freenet/src/freenet/node/fcp/FCPServer.java   2009-04-08 23:24:51 UTC 
(rev 26667)
@@ -889,7 +889,7 @@
                        new ClientGet(persistRebootOnly ? globalRebootClient : 
globalForeverClient, fetchURI, defaultFetchContext.localRequestOnly, 
                                        defaultFetchContext.ignoreStore, 
QUEUE_MAX_RETRIES, QUEUE_MAX_RETRIES,
                                        QUEUE_MAX_DATA_SIZE, returnType, 
persistRebootOnly, id, Integer.MAX_VALUE,
-                                       
RequestStarter.BULK_SPLITFILE_PRIORITY_CLASS, returnFilename, 
returnTempFilename, this);
+                                       
RequestStarter.BULK_SPLITFILE_PRIORITY_CLASS, returnFilename, 
returnTempFilename, this, container);
                cg.register(container, false, false);
                cg.start(container, core.clientContext);
        }

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

Reply via email to