Author: mfortun Date: 2011-04-12 14:41:07 +0200 (Tue, 12 Apr 2011) New Revision: 792 Url: http://nuiton.org/repositories/revision/wikitty/792 Log: *Correct pb with directory with a name that begin with a "." Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyPublication.java trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyPublicationFileSystem.java Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyPublication.java =================================================================== --- trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyPublication.java 2011-04-12 11:05:53 UTC (rev 791) +++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyPublication.java 2011-04-12 12:41:07 UTC (rev 792) @@ -216,6 +216,7 @@ WikittyProxy remoteWikittyService = new WikittyProxy( WikittyServiceFactory.buildWikittyService(applicationConfig)); + remoteWikittyService.clear(); // load the list of file List<File> toTransfert = listFile(dir, !noRecur); @@ -307,7 +308,7 @@ WikittyProxy remoteWikittyService = new WikittyProxy( WikittyServiceFactory.buildWikittyService(applicationConfig)); WikittyPublicationFileSystem localWikittyService = new WikittyPublicationFileSystem( - dir, noRecur, label); + dir, !noRecur, label); @@ -340,11 +341,7 @@ PagedResult<Wikitty> pageResult= remoteWikittyService.findAllByCriteria(labelCriteria); List<Wikitty> wikittiesToWrite = pageResult.getAll(); - - for ( Wikitty w : wikittiesToWrite){ - System.out.println(w); - - } + // write the proper properties file! Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyPublicationFileSystem.java =================================================================== --- trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyPublicationFileSystem.java 2011-04-12 11:05:53 UTC (rev 791) +++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyPublicationFileSystem.java 2011-04-12 12:41:07 UTC (rev 792) @@ -25,19 +25,14 @@ package org.nuiton.wikitty.publication; import java.io.BufferedInputStream; -import java.io.BufferedReader; -import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileReader; import java.io.FileWriter; -import java.io.InputStreamReader; import java.util.Collection; -import java.util.HashSet; import java.util.List; import java.util.Properties; import java.util.Set; -import java.util.TreeSet; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -48,7 +43,6 @@ import org.nuiton.wikitty.entities.Wikitty; import org.nuiton.wikitty.entities.WikittyExtension; import org.nuiton.wikitty.entities.WikittyImpl; -import org.nuiton.wikitty.entities.WikittyLabel; import org.nuiton.wikitty.entities.WikittyLabelHelper; import org.nuiton.wikitty.entities.WikittyLabelImpl; import org.nuiton.wikitty.publication.entities.WikittyPubData; @@ -229,8 +223,13 @@ if (pathFilecreated) { // create the path with the label String path = homeFile.getCanonicalFile() + File.separator - + ourDir.replaceAll(".", File.separator); + + ourDir.replace(".", File.separator); + + //correct the pb with directory name begin by . + path = path.replace(File.separator + File.separator, + File.separator + "."); + // create the propertie directory if necessary File propertieDirectory = new File(path + File.separator + WikittyPublication.PROPERTY_DIRECTORY); @@ -305,7 +304,7 @@ metaProperties.setProperty(name + "." + extension + ".version", w.getVersion()); metaProperties.setProperty(name + "." + extension - + ".id", w.getVersion()); + + ".id", w.getId()); metaProperties.setProperty(name + "." + extension + ".checksum", localMd5); // save @@ -322,29 +321,15 @@ } } - /* - * pour chaque wikitty en fonction du type on va aller écrire le - * fichier avec la bonne extention en fonction du mime. - * - * Et niveau propriété : double entré d'id, checksum, version aussi. - * - * - * faire en deux passes, pour mettre les labels et labels courant - * aussi les ranger et tout. - */ - // StringUtil.encodeMD5(toEncode) - } catch (Exception e) { e.printStackTrace(); - //TODO mfortun-2011-04-12 really handle exceptions + // TODO mfortun-2011-04-12 really handle exceptions } WikittyEvent result = new WikittyEvent(this); return result; - // return null; - } @Override @@ -491,6 +476,7 @@ static public Wikitty fileToWikitty(File fileToTransform, File starts) throws Exception { + String completeName = fileToTransform.getName(); // isolate extension and file name @@ -519,6 +505,12 @@ */ String path = startDirName + pathToFile.replaceAll(pathToStart, ""); + /* + * FIXME actually with a dot as a wikittylabel_separator, + * when restauring label to directory it destroy directory that containt dot + * in the name e.g.: /home/truc.machin/bob + */ + String label = path.replaceAll(File.separator, WIKITTYLABEL_SEPARATOR); WikittyLabelHelper.addLabels(result, label); @@ -572,9 +564,9 @@ * TODO mfortun-2011-04-11 really implements this method */ if (mime.equalsIgnoreCase("ws")) { - return "application/javascript"; + return "ws"; } else { - return "image/png"; + return "ws"; } } @@ -609,18 +601,23 @@ */ static public boolean createFilesFromLabelPath(String label, File starts) throws Exception { - String[] pathElements = StringUtil.split(label, "."); + label = label.replace(".", File.separator); + label = label.replace(File.separator + File.separator, File.separator + + "."); + String[] pathElements = StringUtil.split(label, File.separator); + boolean result = false; if (starts.exists() && starts.isDirectory()) { String path = starts.getCanonicalPath(); - + result = true; for (int i = 0; i < pathElements.length; i++) { path = path + File.separator + pathElements[i]; File temp = new File(path); - result = result && FileUtil.createDirectoryIfNecessary(temp); + FileUtil.createDirectoryIfNecessary(temp); + result = result && temp.exists(); } }