[freenet-cvs] r19717 - in trunk/apps/thingamablog/src/net/sf/thingamablog: blog gui/app transport

dieppe at freenetproject.org dieppe at freenetproject.org
Sat May 3 22:09:34 UTC 2008


Author: dieppe
Date: 2008-05-03 22:09:33 +0000 (Sat, 03 May 2008)
New Revision: 19717

Modified:
   trunk/apps/thingamablog/src/net/sf/thingamablog/blog/Weblog.java
   trunk/apps/thingamablog/src/net/sf/thingamablog/gui/app/LogPanel.java
   trunk/apps/thingamablog/src/net/sf/thingamablog/transport/FCPTransport.java
   trunk/apps/thingamablog/src/net/sf/thingamablog/transport/TransportProgress.java
Log:
The logPanel now shows infos (Total, Succeeded, Fatally failed, 
Failed, Final?) during insertion;
The progress bar is now functionnal;



Modified: trunk/apps/thingamablog/src/net/sf/thingamablog/blog/Weblog.java
===================================================================
--- trunk/apps/thingamablog/src/net/sf/thingamablog/blog/Weblog.java	2008-05-03 20:24:03 UTC (rev 19716)
+++ trunk/apps/thingamablog/src/net/sf/thingamablog/blog/Weblog.java	2008-05-03 22:09:33 UTC (rev 19717)
@@ -376,10 +376,8 @@
             markWebFilesAsUpdated();
             File webFiles[] = getWebFiles();
             String webPaths[] = getWebFilesServerPaths(webFiles);
-            long totalBytes = 0;				
             //count the total bytes for this publish
             for(int i = 0; i < webFiles.length; i++){
-                totalBytes += webFiles[i].length();
                 ht.put(webFiles[i],webPaths[i]);
             }
             for(Enumeration e = ht.keys() ; e.hasMoreElements() ;) 
@@ -387,12 +385,9 @@
                     try
                     {
                         File f = (File)e.nextElement();
-                        totalBytes += f.length();
                     }   
                     catch(ClassCastException cce){}
             }
-		
-            progress.publishStarted(totalBytes);
         
             if(!transport.connect())
             {

Modified: trunk/apps/thingamablog/src/net/sf/thingamablog/gui/app/LogPanel.java
===================================================================
--- trunk/apps/thingamablog/src/net/sf/thingamablog/gui/app/LogPanel.java	2008-05-03 20:24:03 UTC (rev 19716)
+++ trunk/apps/thingamablog/src/net/sf/thingamablog/gui/app/LogPanel.java	2008-05-03 22:09:33 UTC (rev 19717)
@@ -257,6 +257,13 @@
     { 
         updateProgressValue((int)bytes, true);
     }
+    
+    public void updateBlocksTransferred(final int blocks, final int total, String name)
+    {
+        if (!label.getIcon().equals(fileIcon))
+            updateLabelText(fileIcon, name, false);
+        updateProgressBar(blocks, total);
+    }
 
     /* (non-Javadoc)
      * @see net.sf.thingamablog.transport.TransportProgress#isAborted()

Modified: trunk/apps/thingamablog/src/net/sf/thingamablog/transport/FCPTransport.java
===================================================================
--- trunk/apps/thingamablog/src/net/sf/thingamablog/transport/FCPTransport.java	2008-05-03 20:24:03 UTC (rev 19716)
+++ trunk/apps/thingamablog/src/net/sf/thingamablog/transport/FCPTransport.java	2008-05-03 22:09:33 UTC (rev 19717)
@@ -32,6 +32,7 @@
 import net.sf.thingamablog.util.freenet.fcp.Verbosity;
 import net.sf.thingamablog.util.freenet.fcp.fcpManager;
 import net.sf.thingamablog.util.string.ASCIIconv;
+import thingamablog.l10n.i18n;
 
 /**
  * There is *a lot* of code below that comes from jSite
@@ -123,12 +124,11 @@
         int current_edition = edition + 1;
         String dirURI = "freenet:USK@" + insertURI + "/" + ASCIIconv.convertNonAscii(this.SSKPath) + "/" + current_edition + "/";
         System.out.println("Insert URI : " + dirURI);
-        ClientPutComplexDir putDir = new ClientPutComplexDir("Thingamablog insert", dirURI);
+        ClientPutComplexDir putDir = new ClientPutComplexDir("Thingamablog-insert", dirURI);
         System.out.println("Default name : " + frontPage);
         putDir.setDefaultName(frontPage);
         putDir.setMaxRetries(-1);
         putDir.setVerbosity(Verbosity.ALL);
-        int totalBytes = 0;
         for(Enumeration e = ht.keys() ; e.hasMoreElements() ;) {
             Object element = e.nextElement();
             File file = (File)element;
@@ -138,7 +138,6 @@
                 FileEntry fileEntry = createDirectFileEntry(file.getName(), fileEntryInputStream, fileLength);           
                 if (fileEntry != null) {
                     System.out.println("File to insert : " + fileEntry.getFilename());
-                    totalBytes += fileLength[0];
                     putDir.addFileEntry(fileEntry);
                 }
             } catch (IOException ex) {
@@ -155,7 +154,6 @@
                 FileEntry fileEntry = createDirectFileEntry("activelink.png", fileEntryInputStream, fileLength);
                 if (fileEntry != null) {
                     System.out.println("File to insert : activelink.png");
-                    totalBytes += file.length();                
                     putDir.addFileEntry(fileEntry);
                 }
              } catch (IOException ex) {
@@ -163,7 +161,6 @@
              }
         }
         try {            
-            tp.publishStarted(totalBytes);
             client.execute(putDir);
             System.out.println("Publish in progress...");
         } catch (IOException ioe) {
@@ -174,6 +171,9 @@
         boolean success = false;
         boolean finished = false;
         boolean disconnected = false;
+        int totalBlockToPublish = 0;
+        int blockPublished = 0;
+        tp.publishStarted(totalBlockToPublish);
         while (!finished) {
             Message message = client.readMessage();
             finished = (message == null) || (disconnected = client.isDisconnected());
@@ -189,16 +189,30 @@
                     int fatal = Integer.parseInt(message.get("FatallyFailed"));
                     int failed = Integer.parseInt(message.get("Failed"));
                     boolean finalized = Boolean.valueOf(message.get("FinalizedTotal")).booleanValue();
-                    tp.bytesTransferred(succeeded);
+                    blockPublished = succeeded;
+                    if (totalBlockToPublish != total) {
+                        totalBlockToPublish = total;
+                    }
+                    String log = "";
+                    log += "Total : " + total;
+                    log += "; Succeeded : " + succeeded;
+                    log += "; Fatally failed : " + fatal;
+                    log += "; Failed : " + failed;
+                    log += "; Final ? " + (finalized ? "yes;" : "no;");
+                    tp.logMessage(log);
+                    tp.updateBlocksTransferred(blockPublished, totalBlockToPublish, i18n.str("insertion_in_progress"));
                 }
                 success = "PutSuccessful".equals(messageName);
                 finished = success || "PutFailed".equals(messageName) || messageName.endsWith("Error");
+                if (tp.isAborted())
+                    disconnect();
             }            
         }
         // If the publish has been made, we update the edition number to the current edition
         if(finalURI != null){
             edition++;
         }
+        tp.logMessage("URI : " + finalURI);
         return success;
     }
     

Modified: trunk/apps/thingamablog/src/net/sf/thingamablog/transport/TransportProgress.java
===================================================================
--- trunk/apps/thingamablog/src/net/sf/thingamablog/transport/TransportProgress.java	2008-05-03 20:24:03 UTC (rev 19716)
+++ trunk/apps/thingamablog/src/net/sf/thingamablog/transport/TransportProgress.java	2008-05-03 22:09:33 UTC (rev 19717)
@@ -44,5 +44,7 @@
 	 */
 	public boolean isAborted();
     
-    public void logMessage(String msg);
+        public void logMessage(String msg);
+        
+        public void updateBlocksTransferred(int blocks, int total, String name);
 }




More information about the cvs mailing list