Author: jflesch
Date: 2006-07-14 22:52:16 +0000 (Fri, 14 Jul 2006)
New Revision: 9615

Modified:
   trunk/apps/Thaw/src/thaw/fcp/FCPClientGet.java
   trunk/apps/Thaw/src/thaw/fcp/FCPClientPut.java
   trunk/apps/Thaw/src/thaw/fcp/FCPConnection.java
   trunk/apps/Thaw/src/thaw/fcp/FCPQueueLoader.java
   trunk/apps/Thaw/src/thaw/fcp/FCPQueueManager.java
   trunk/apps/Thaw/src/thaw/plugins/queueWatcher/DetailPanel.java
   trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java
Log:
Fix queue resuming + Adding file names in the identifiers

Modified: trunk/apps/Thaw/src/thaw/fcp/FCPClientGet.java
===================================================================
--- trunk/apps/Thaw/src/thaw/fcp/FCPClientGet.java      2006-07-14 22:29:59 UTC 
(rev 9614)
+++ trunk/apps/Thaw/src/thaw/fcp/FCPClientGet.java      2006-07-14 22:52:16 UTC 
(rev 9615)
@@ -136,7 +136,7 @@
                status = "Requesting";

                if(this.identifier == null || this.identifier.equals(""))
-                       this.identifier = queueManager.getAnID();
+                       this.identifier = queueManager.getAnID() + 
"-"+filename;;

                Logger.info(this, "Requesting key : "+getFileKey());

@@ -587,6 +587,8 @@
        public boolean stop(FCPQueueManager queryManager) {
                Logger.info(this, "Stop fetching of the key : "+getFileKey());

+               removeRequest();
+
                progress = 100;
                successful = false;
                status = "Stopped";

Modified: trunk/apps/Thaw/src/thaw/fcp/FCPClientPut.java
===================================================================
--- trunk/apps/Thaw/src/thaw/fcp/FCPClientPut.java      2006-07-14 22:29:59 UTC 
(rev 9614)
+++ trunk/apps/Thaw/src/thaw/fcp/FCPClientPut.java      2006-07-14 22:52:16 UTC 
(rev 9615)
@@ -240,7 +240,7 @@

                status = "Sending to the node";

-               identifier = queueManager.getAnID();
+               identifier = queueManager.getAnID() + "-"+ localFile.getName();

                setChanged();
                notifyObservers();

Modified: trunk/apps/Thaw/src/thaw/fcp/FCPConnection.java
===================================================================
--- trunk/apps/Thaw/src/thaw/fcp/FCPConnection.java     2006-07-14 22:29:59 UTC 
(rev 9614)
+++ trunk/apps/Thaw/src/thaw/fcp/FCPConnection.java     2006-07-14 22:52:16 UTC 
(rev 9615)
@@ -164,7 +164,7 @@
        }

        /**
-        * Doesn't check the lock state !
+        * Doesn't check the lock state ! You have to manage it yourself.
         */
        public boolean rawWrite(byte[] data) {
                if(out != null && socket != null && socket.isConnected()) {
@@ -188,8 +188,11 @@

        public synchronized boolean write(String toWrite, boolean checkLock) {

+               if(checkLock && lockWriting) {
+                       Logger.verbose(this, "Writting lock, unable to write.");
+               }
+
                while(checkLock && lockWriting) {
-                       Logger.verbose(this, "Writting lock, unable to write.");
                        try {
                                Thread.sleep(200);
                        } catch(java.lang.InterruptedException e) {

Modified: trunk/apps/Thaw/src/thaw/fcp/FCPQueueLoader.java
===================================================================
--- trunk/apps/Thaw/src/thaw/fcp/FCPQueueLoader.java    2006-07-14 22:29:59 UTC 
(rev 9614)
+++ trunk/apps/Thaw/src/thaw/fcp/FCPQueueLoader.java    2006-07-14 22:52:16 UTC 
(rev 9615)
@@ -8,6 +8,7 @@
 /**
  * Reload the queue from the queue node.
  * Send himself the ListPersistentRequests.
+ * It remains active to receive and add the persistentGet/Put receive during 
the execution
  */
 public class FCPQueueLoader implements Observer {
        FCPQueueManager queueManager;
@@ -119,8 +120,8 @@
                }

                if(msg.getMessageName().equals("EndListPersistentRequests")) {
-                       Logger.info(this, "End Of ListPersistentRequests. Self 
removing");
-                       queueManager.getQueryManager().deleteObserver(this);
+                       Logger.info(this, "End Of ListPersistentRequests.");
+                       return;
                }
        }
 }

Modified: trunk/apps/Thaw/src/thaw/fcp/FCPQueueManager.java
===================================================================
--- trunk/apps/Thaw/src/thaw/fcp/FCPQueueManager.java   2006-07-14 22:29:59 UTC 
(rev 9614)
+++ trunk/apps/Thaw/src/thaw/fcp/FCPQueueManager.java   2006-07-14 22:52:16 UTC 
(rev 9615)
@@ -75,11 +75,16 @@
                        pendingQueries[i] = new Vector();
        }

-
+       /**
+        * Take care: Can change while you're using it.
+        */
        public Vector[] getPendingQueues() {
                return pendingQueries;
        }

+       /**
+        * Take care: Can change while you're using it.
+        */
        public Vector getRunningQueue() {
                return runningQueries;
        }
@@ -130,11 +135,16 @@
                         */

                        /* FIXME (not urgent) : Find a cleaner / safer way. */
-                       String[] subId = query.getIdentifier().split("_");
-                       int id = ((new 
Integer(subId[subId.length-1])).intValue());
-                       
-                       if(id > lastId) {
-                               lastId = id;
+                       try {
+                               String[] subId = 
query.getIdentifier().split("-");
+                               subId = subId[0].split("_");
+                               int id = ((new 
Integer(subId[subId.length-1])).intValue());
+                               
+                               if(id > lastId) {
+                                       lastId = id;
+                               }
+                       } catch(Exception e) {
+                               Logger.notice(this, "Exception while parsing 
previous Id. Not really a problem");
                        }
                }


Modified: trunk/apps/Thaw/src/thaw/plugins/queueWatcher/DetailPanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/queueWatcher/DetailPanel.java      
2006-07-14 22:29:59 UTC (rev 9614)
+++ trunk/apps/Thaw/src/thaw/plugins/queueWatcher/DetailPanel.java      
2006-07-14 22:52:16 UTC (rev 9615)
@@ -146,7 +146,10 @@
                        else
                                
key.setText(I18n.getMessage("thaw.common.unknown"));

-                       size.setText((new 
Long(query.getFileSize())).toString()+" B");
+                       if(query.getFileSize() > 0)
+                               
size.setText(I18n.getMessage("thaw.common.unknown"));
+                       else
+                               size.setText((new 
Long(query.getFileSize())).toString()+" B");

                        status.setText(query.getStatus());
                        if(query.getIdentifier() != null)

Modified: trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java       
2006-07-14 22:29:59 UTC (rev 9614)
+++ trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java       
2006-07-14 22:52:16 UTC (rev 9615)
@@ -259,11 +259,9 @@
                                        continue;

                                if(e.getSource() == removeItem) {
-                                       if(query.isRunning() && 
!query.isFinished())
-                                               
query.stop(core.getQueueManager());
-                                       if(query.isFinished())
-                                               query.removeRequest();

+                                       query.stop(core.getQueueManager());
+
                                        core.getQueueManager().remove(query);

                                        tableModel.removeQuery(query);
@@ -281,11 +279,8 @@
                                }

                                if(e.getSource() == forceRestartItem) {
-                                       if(query.isRunning() && 
!query.isFinished())
-                                               
query.stop(core.getQueueManager());
+                                       query.stop(core.getQueueManager());

-                                       query.removeRequest();
-
                                        if(query.getMaxAttempt() >= 0)
                                                query.setAttempt(0);



Reply via email to