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);