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

dieppe at freenetproject.org dieppe at freenetproject.org
Wed Feb 20 03:57:05 UTC 2008


Author: dieppe
Date: 2008-02-20 03:57:05 +0000 (Wed, 20 Feb 2008)
New Revision: 18080

Modified:
   trunk/apps/thingamablog/src/net/sf/thingamablog/blog/TBWeblog.java
   trunk/apps/thingamablog/src/net/sf/thingamablog/blog/Weblog.java
   trunk/apps/thingamablog/src/net/sf/thingamablog/transport/FCPTransport.java
Log:
Bug fix


Modified: trunk/apps/thingamablog/src/net/sf/thingamablog/blog/TBWeblog.java
===================================================================
--- trunk/apps/thingamablog/src/net/sf/thingamablog/blog/TBWeblog.java	2008-02-20 01:22:10 UTC (rev 18079)
+++ trunk/apps/thingamablog/src/net/sf/thingamablog/blog/TBWeblog.java	2008-02-20 03:57:05 UTC (rev 18080)
@@ -998,7 +998,9 @@
 		{
 			try
 			{
-				File f = (File)e.nextElement();
+                            Object element = e.nextElement();
+                            File f = (File)element;
+                            if(!f.getAbsolutePath().contains(webFilesDirectory.getAbsolutePath()))
 				f.delete();				
 			}
 			catch(ClassCastException cce){}

Modified: trunk/apps/thingamablog/src/net/sf/thingamablog/blog/Weblog.java
===================================================================
--- trunk/apps/thingamablog/src/net/sf/thingamablog/blog/Weblog.java	2008-02-20 01:22:10 UTC (rev 18079)
+++ trunk/apps/thingamablog/src/net/sf/thingamablog/blog/Weblog.java	2008-02-20 03:57:05 UTC (rev 18080)
@@ -374,7 +374,7 @@
 			return;
 		}
             markWebFilesAsUpdated();
-            File webFiles[] = getUpdatedWebFiles();
+            File webFiles[] = getWebFiles();
             String webPaths[] = getWebFilesServerPaths(webFiles);
             long totalBytes = 0;				
             //count the total bytes for this publish
@@ -406,7 +406,9 @@
             boolean failed = false;
             //we are publishing a flog with fcp
             FCPTransport fcp = (FCPTransport) transport;
-            boolean result = fcp.publishFile(ht,progress,this.getFrontPageUrl().substring(("USK@" + fcp.getInsertURI() + "/" + fcp.getTitle() + "/" + fcp.getEdition() + "/").length()),getArchivePath());
+            int index = this.getFrontPageUrl().lastIndexOf("/");
+            String defaultName = this.getFrontPageUrl().substring(index+1);
+            boolean result = fcp.publishFile(ht,progress,defaultName,getArchivePath());
             if(!result)
 				{
 					//progress.publishFailed(transport.getFailureReason());
@@ -431,6 +433,45 @@
             System.out.println("PUBLISH COMPLETE");	
         }
         
+        private File[] getWebFiles(){            
+            if(webFilesDirectory != null && webFilesDirectory.exists())
+            {		                
+                Vector v = scanDirWithoutDate(webFilesDirectory, new Vector());
+                File f[] = new File[v.size()];
+                for(int i = 0; i < f.length; i++){
+                    f[i] = (File)v.elementAt(i);
+                }
+                return f;
+            }
+            return null;
+        }
+        
+        private Vector scanDirWithoutDate(File dir, Vector updatedFiles)
+        {		
+		File files[] = dir.listFiles(new FileFilter()
+		{
+			public boolean accept(File f)
+			{
+				return f.isFile();
+			}
+		});
+
+		for(int i = 0; i < files.length; i++)
+			updatedFiles.add(files[i]);                
+		
+		File dirs[] = dir.listFiles(new FileFilter()
+		{
+			public boolean accept(File f)
+			{
+				return f.isDirectory();
+			}	
+		});
+		for(int i = 0; i < dirs.length; i++)
+			scanDirWithoutDate(dirs[i], updatedFiles);
+		
+		return updatedFiles;
+	}
+        
 	private boolean publishWebFiles(File webFiles[], PublishProgress progress)
 	{
 		String webPaths[] = getWebFilesServerPaths(webFiles);

Modified: trunk/apps/thingamablog/src/net/sf/thingamablog/transport/FCPTransport.java
===================================================================
--- trunk/apps/thingamablog/src/net/sf/thingamablog/transport/FCPTransport.java	2008-02-20 01:22:10 UTC (rev 18079)
+++ trunk/apps/thingamablog/src/net/sf/thingamablog/transport/FCPTransport.java	2008-02-20 03:57:05 UTC (rev 18080)
@@ -121,6 +121,7 @@
         String dirURI = "freenet:USK@" + insertURI + "/" + title + "/" + edition + "/";
         System.out.println("Insert URI : " + dirURI);
         ClientPutComplexDir putDir = new ClientPutComplexDir("Thingamablog insert", dirURI);
+        System.out.println("Default name : " + frontPage);
         putDir.setDefaultName(frontPage);
         putDir.setMaxRetries(-1);
         int totalBytes = 0;
@@ -136,10 +137,8 @@
             }
         }
         try {            
-            System.out.println("Executing the command...");
             tp.publishStarted(totalBytes);
             client.execute(putDir);
-            System.out.println("Command executed!");
             System.out.println("Publish in progress...");
         } catch (IOException ioe) {
             logger.log(Level.WARNING,"Publish process failed : " + ioe.getMessage());




More information about the cvs mailing list