Wikitty-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
August 2011
- 6 participants
- 125 discussions
r1105 - in trunk/wikitty-publication/src: main/java/org/nuiton/wikitty/publication/synchro test/java/org/nuiton/wikitty/publication test/java/org/nuiton/wikitty/publication/synchro
by mfortun@users.nuiton.org 02 Aug '11
by mfortun@users.nuiton.org 02 Aug '11
02 Aug '11
Author: mfortun
Date: 2011-08-02 17:50:31 +0200 (Tue, 02 Aug 2011)
New Revision: 1105
Url: http://nuiton.org/repositories/revision/wikitty/1105
Log:
* test for wikittyPublicationFileSystem
* correction for wikittyPublicationFileSystem
Modified:
trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystem.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyPublicationFallbackServiceTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystemTest.java
Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystem.java
===================================================================
--- trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystem.java 2011-08-02 09:13:37 UTC (rev 1104)
+++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystem.java 2011-08-02 15:50:31 UTC (rev 1105)
@@ -71,7 +71,6 @@
import org.nuiton.wikitty.services.WikittyEvent;
import org.nuiton.wikitty.services.WikittyListener;
-
public class WikittyPublicationFileSystem extends AbstractWikittyFileService {
/** to use log facility, just put in your code: log.info(\"...\"); */
@@ -80,7 +79,6 @@
static public String WIKITTYLABEL_SEPARATOR = ".";
-
/**
* The working directory of the wikitty service
*/
@@ -125,7 +123,6 @@
*/
static public String META_PREFIX_KEY_ID = "id.";
-
/**
* The file name of the wikitty service property
*/
@@ -197,30 +194,34 @@
homeFile, WIKITTY_FILE_SERVICE);
// the original label use to create if not exist
- if (!propertyWikittyService.containsKey(WikittyPublicationSynchronize.LABEL_KEY)) {
+ if (!propertyWikittyService
+ .containsKey(WikittyPublicationSynchronize.LABEL_KEY)) {
log.debug("Writing home property label"
+ propertyWikittyService.getOrigin());
- propertyWikittyService.setProperty(WikittyPublicationSynchronize.LABEL_KEY,
- this.label);
+ propertyWikittyService.setProperty(
+ WikittyPublicationSynchronize.LABEL_KEY, this.label);
}
// the service use to update or commit
String uriService = app
.getOption(WikittyPublicationSynchronize.WIKITTY_SERVICE_INTERLOCUTEUR);
- if (uriService !=null) {
- log.debug("Writing home property service on:"
- + propertyWikittyService.getOrigin() + " uri" + uriService);
+ if (uriService != null) {
+ log.debug("Writing home property service on:"
+ + propertyWikittyService.getOrigin() + " uri" + uriService);
- propertyWikittyService.setProperty(
- WikittyPublicationSynchronize.WIKITTY_SERVICE_INTERLOCUTEUR, uriService);
+ propertyWikittyService
+ .setProperty(
+ WikittyPublicationSynchronize.WIKITTY_SERVICE_INTERLOCUTEUR,
+ uriService);
}
-
+
propertyWikittyService.store();
recursion = true;
- if (app.getOptions().containsKey(WikittyPublicationSynchronize.IS_RECURSION_OPTION)) {
-
- this.recursion = app
- .getOptionAsBoolean(WikittyPublicationSynchronize.IS_RECURSION_OPTION);
+ if (app.getOptions().containsKey(
+ WikittyPublicationSynchronize.IS_RECURSION_OPTION)) {
+
+ this.recursion = app
+ .getOptionAsBoolean(WikittyPublicationSynchronize.IS_RECURSION_OPTION);
}
// TODO mfotun-2011-04-28 add a support for filtered file with a
// property file
@@ -322,18 +323,13 @@
@Override
public boolean exists(String securityToken, String wikittyId) {
- // TODO mfortun-2011-04-05
- throw new UnsupportedOperationException("not yet implemented");
- // return false;
+ return getAllWikitties().containsKey(wikittyId);
}
@Override
public boolean isDeleted(String securityToken, String wikittyId) {
- // TODO mfortun-2011-04-05
- throw new UnsupportedOperationException("not yet implemented");
- // return false;
-
+ return !exists(securityToken, wikittyId);
}
@Override
@@ -377,7 +373,6 @@
// if label is empty it means that the wikitty have to be remove
// from the FileSystem
if ("".equals(ourDir)) {
-
// remove file if the wikitty already exist
BidiMap location = harvestLocalWikitties(homeFile, true);
@@ -401,7 +396,8 @@
}
// create the directories from the label
- boolean pathFilecreated = WikittyFileUtil.createFilesFromLabelPath(homeFile,ourDir);
+ boolean pathFilecreated = WikittyFileUtil
+ .createFilesFromLabelPath(homeFile, ourDir);
if (pathFilecreated) {
// create the path with the label
@@ -498,10 +494,10 @@
List<String> result = new LinkedList<String>();
result.add(WikittyPubData.EXT_WIKITTYPUBDATA);
result.add(WikittyPubText.EXT_WIKITTYPUBTEXT);
- //result.add(WikittyPubTextCompiled.EXT_WIKITTYPUBTEXTCOMPILED);
+ // result.add(WikittyPubTextCompiled.EXT_WIKITTYPUBTEXTCOMPILED);
result.add(WikittyLabel.EXT_WIKITTYLABEL);
-
- return result;
+
+ return result;
}
@Override
@@ -554,7 +550,7 @@
* restore file as wikitty
*/
public List<Wikitty> restore(String securityToken, List<String> id) {
-
+
List<Wikitty> result = new ArrayList<Wikitty>();
log.info("restore wikitty, number: " + id.size());
try {
@@ -570,7 +566,6 @@
// register wikitty in the result
for (String wikid : id) {
Object value = locations.get(wikid);
-
if (value != null) {
FileSystemWIkittyId localisation = (FileSystemWIkittyId) value;
@@ -583,7 +578,7 @@
e.printStackTrace();
// TODO mfortun-2011-01-12 really handle exception
}
-
+
return result;
}
@@ -652,8 +647,6 @@
return result;
}
-
-
@Override
protected Map<String, Wikitty> getAllWikitties() {
Map<String, Wikitty> wikitties = new HashMap<String, Wikitty>();
@@ -688,10 +681,7 @@
}
return wikitties;
}
-
-
-
@Override
public WikittyEvent deleteTree(String securityToken, String treeNodeId) {
// TODO mfortun-2011-04-05
@@ -863,7 +853,7 @@
log.debug("restore wikitty id:" + id + " file: " + fileId);
Wikitty result = new WikittyImpl(id);
-
+
result.addExtension(WikittyLabelImpl.extensionWikittyLabel);
// preparation for mime research and file research
@@ -873,6 +863,10 @@
// search for the file
File fileToTransform = new File(path + File.separator + completeName);
+ if (!fileToTransform.exists()) {
+ return null;
+ }
+
String extension = FileUtil.extension(fileToTransform);
String name = FileUtil.basename(completeName, "." + extension);
@@ -882,7 +876,8 @@
// load properties
File wikittyParentDir = new File(path);
PropertiesExtended props = getWikittyPublicationProperties(
- wikittyParentDir, WikittyFileUtil.WIKITTY_FILE_META_PROPERTIES_FILE);
+ wikittyParentDir,
+ WikittyFileUtil.WIKITTY_FILE_META_PROPERTIES_FILE);
// set the current label
WikittyLabelHelper.addLabels(result, props
@@ -1038,7 +1033,8 @@
String localMd5 = StringUtil.asHex(byt);
PropertiesExtended meta = getWikittyPublicationProperties(
- child.getParentFile(),WikittyFileUtil.WIKITTY_FILE_META_PROPERTIES_FILE);
+ child.getParentFile(),
+ WikittyFileUtil.WIKITTY_FILE_META_PROPERTIES_FILE);
String registeredMD5 = meta.getProperty(META_PREFIX_KEY_CHECKSUM
+ child.getName());
@@ -1115,10 +1111,6 @@
}
-
-
-
-
/**
* Use to search and return the home property that containt informations
* about wikitty service use to synchronise a wikitty publication file
Modified: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java 2011-08-02 09:13:37 UTC (rev 1104)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java 2011-08-02 15:50:31 UTC (rev 1105)
@@ -17,16 +17,23 @@
public class PropertiesExtendedTest {
- public File tempHome;
- public Properties props;
- public File propsFile;
+ protected File tempHome;
+ protected Properties props;
+ protected File propsFile;
@Before
public void init() throws IOException{
+
+ if (! FileUtils.getTempDirectory().exists()){
+ FileUtils.getTempDirectory().mkdir();
+ }
+
tempHome = new File(FileUtils.getTempDirectory().getCanonicalFile()
+ File.separator + "wikittyFileUtilTest");
+ System.out.println(tempHome);
+
if (tempHome.exists()){
FileUtil.deleteRecursively(tempHome);
Modified: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyPublicationFallbackServiceTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyPublicationFallbackServiceTest.java 2011-08-02 09:13:37 UTC (rev 1104)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyPublicationFallbackServiceTest.java 2011-08-02 15:50:31 UTC (rev 1105)
@@ -3,6 +3,9 @@
public class WikittyPublicationFallbackServiceTest {
+
+
+
/*
* Instancier un wikitty service sur FS et un sur cajo
* mettre des wikitty dans les deux différent 10-10, et 5 de plus en commun
Modified: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystemTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystemTest.java 2011-08-02 09:13:37 UTC (rev 1104)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystemTest.java 2011-08-02 15:50:31 UTC (rev 1105)
@@ -1,26 +1,327 @@
package org.nuiton.wikitty.publication.synchro;
+import java.io.File;
+import java.io.FileReader;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import junit.framework.Assert;
+
+import org.apache.commons.io.FileUtils;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.nuiton.util.ApplicationConfig;
+import org.nuiton.util.FileUtil;
+import org.nuiton.util.StringUtil;
+import org.nuiton.wikitty.WikittyConfigOption;
+import org.nuiton.wikitty.WikittyProxy;
+import org.nuiton.wikitty.WikittyServiceFactory;
+import org.nuiton.wikitty.entities.Wikitty;
+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.WikittyFileUtil;
+import org.nuiton.wikitty.publication.entities.WikittyPubData;
+import org.nuiton.wikitty.publication.entities.WikittyPubDataHelper;
+import org.nuiton.wikitty.publication.entities.WikittyPubDataImpl;
+import org.nuiton.wikitty.publication.entities.WikittyPubText;
+import org.nuiton.wikitty.publication.entities.WikittyPubTextHelper;
+import org.nuiton.wikitty.publication.entities.WikittyPubTextImpl;
+import org.nuiton.wikitty.search.Criteria;
+import org.nuiton.wikitty.search.Search;
+
public class WikittyPublicationFileSystemTest {
+ protected File tempHome;
+ protected List<Wikitty> listWikittyPubData;
+ protected List<Wikitty> listWikittyPubText;
+ protected List<String> labels;
+ protected ApplicationConfig config;
+ protected WikittyProxy proxy;
+ protected Criteria allCrit;
+ protected File starts;
+
+ @Before
+ public void init() throws IOException {
+
+ if (!FileUtils.getTempDirectory().exists()) {
+ FileUtils.getTempDirectory().mkdir();
+ }
+
+ tempHome = new File(FileUtils.getTempDirectory().getCanonicalFile()
+ + File.separator + "WikittyPublicationFileSystemTest");
+
+ if (tempHome.exists()) {
+ FileUtil.deleteRecursively(tempHome);
+
+ }
+ tempHome.mkdir();
+
+ // prepare the wikitties list
+ listWikittyPubData = new LinkedList<Wikitty>();
+ listWikittyPubText = new LinkedList<Wikitty>();
+
+ labels = new ArrayList<String>(6);
+ labels.add(0, "sub");
+ labels.add(1, labels.get(0) + WikittyFileUtil.WIKITTY_LABEL_SEPARATOR
+ + "sub11");
+ labels.add(2, labels.get(1) + WikittyFileUtil.WIKITTY_LABEL_SEPARATOR
+ + "sub12");
+ labels.add(3, labels.get(0) + WikittyFileUtil.WIKITTY_LABEL_SEPARATOR
+ + "sub3");
+ labels.add(4, labels.get(0) + WikittyFileUtil.WIKITTY_LABEL_SEPARATOR
+ + "sub21");
+ labels.add(5, labels.get(4) + WikittyFileUtil.WIKITTY_LABEL_SEPARATOR
+ + "sub21");
+
+ for (int i = 0; i < 6; i++) {
+
+ Wikitty pubText = new WikittyImpl();
+ Wikitty pubData = new WikittyImpl();
+
+ pubData.addExtension(WikittyPubDataImpl.extensionWikittyPubData);
+ pubText.addExtension(WikittyPubTextImpl.extensionWikittyPubText);
+
+ WikittyPubTextHelper.setContent(pubText, "content_" + i);
+ WikittyPubTextHelper.setFileExtension(pubText, "js");
+ WikittyPubTextHelper.setMimeType(pubText, "application/javascript");
+ WikittyPubTextHelper.setName(pubText, "pubtextnum_" + i);
+
+ WikittyPubDataHelper.setContent(pubData,
+ ("content data" + i).getBytes());
+ WikittyPubDataHelper.setFileExtension(pubData, "jpg");
+ WikittyPubDataHelper.setMimeType(pubData, "image/jpg");
+ WikittyPubDataHelper.setName(pubData, "pubdatanum_" + i);
+
+ pubData.addExtension(WikittyLabelImpl.extensions);
+ pubText.addExtension(WikittyLabelImpl.extensions);
+
+ WikittyLabelHelper.addLabels(pubData, labels.get(i));
+ WikittyLabelHelper.addLabels(pubText, labels.get(i));
+
+ listWikittyPubData.add(pubData);
+ listWikittyPubText.add(pubText);
+ }
+
+ // then initialise application config for wikitty proxy on service FS
+ config = new ApplicationConfig();
+ config.setOption(WikittyPublicationSynchronize.IS_RECURSION_OPTION,
+ "true");
+ config.setOption(
+ WikittyConfigOption.WIKITTY_WIKITTYSERVICE_COMPONENTS.getKey(),
+ WikittyPublicationFileSystem.class.getName());
+
+ starts = new File(tempHome.getAbsolutePath() + File.separator + "sub");
+ if (starts.exists()) {
+ FileUtil.deleteRecursively(starts);
+ }
+ starts.mkdir();
+
+ String url = "file:///" + tempHome.getAbsolutePath() + "#sub";
+
+ config.setOption(WikittyConfigOption.WIKITTY_SERVER_URL.getKey(), url);
+
+ proxy = new WikittyProxy(
+ WikittyServiceFactory.buildWikittyService(config));
+
+ allCrit = Search.query().keyword("*").criteria();
+
+ }
+
+ @After
+ public void delete() {
+ FileUtil.deleteRecursively(tempHome);
+ }
+
+ /**
+ * check save wikitty
+ */
+ @Test
+ public void saveWikittyOnFS() {
+
+ Assert.assertEquals(0, proxy.findAllIdByCriteria(allCrit).getNumFound());
+
+ proxy.storeWikitty(listWikittyPubData);
+ proxy.storeWikitty(listWikittyPubText);
+
+ int result = listWikittyPubData.size() + listWikittyPubText.size();
+
+ Assert.assertEquals(result, proxy.findAllIdByCriteria(allCrit)
+ .getNumFound());
+
+ }
+
+ /**
+ * check that the wikitty save are restorable
+ */
+ @Test
+ public void testRestoreFromFS() {
+ saveWikittyOnFS();
+
+ Map<String, Wikitty> mapwikitty = new HashMap<String, Wikitty>();
+
+ for (Wikitty w : listWikittyPubData) {
+ mapwikitty.put(w.getId(), w);
+ }
+
+ for (Wikitty w : listWikittyPubText) {
+ mapwikitty.put(w.getId(), w);
+ }
+
+ // Assert that wikitty are the same after save
+ // wikitty service FS doesn't not alterate version
+ for (Wikitty w : proxy.findAllByCriteria(allCrit)) {
+ Assert.assertEquals(mapwikitty.get(w.getId()), w);
+ }
+ }
+
+ /**
+ * Test that service know if wikitty change
+ * @throws IOException
+ */
+ @Test
+ public void testUpdateFileDirectly() throws IOException {
+ saveWikittyOnFS();
+
+ String label = WikittyFileUtil.labelToPath(labels.get(1));
+
+ File wikittyOnFS = new File(tempHome.getCanonicalPath()
+ + File.separator + label + File.separator + "pubtextnum_1.js");
+ // check file exist
+ Assert.assertTrue(wikittyOnFS.exists());
+
+ WikittyPubTextImpl wik = new WikittyPubTextImpl();
+ wik.setName("pubtextnum_1");
+
+ String newContent = "unNouveauContenu";
+
+ WikittyPubTextImpl result = proxy.findByExample(wik);
+ // check content on actual wikitty
+ Assert.assertNotSame(newContent, result.getContent());
+
+ // update the file
+ FileWriter fw = new FileWriter(wikittyOnFS);
+
+ fw.write(newContent);
+ fw.flush();
+ fw.close();
+
+ // Wikitty
+
+ result = proxy.findByExample(wik);
+ // check that the wikitty is now updated with the new content
+ Assert.assertEquals(newContent, result.getContent());
+
+ }
-/*
- * Liste des tests à faire:
- *
- * 1) Crééer une collection de wikitty et les sauvegarder s'assurer on a les mêmes
- *
- * 2) s'assurer que les labels sont bien mit
- *
- * 3) test avec des wikittys pub data et pub text
- *
- * 4) faire des modifications en dehors du service et voir que le service le voit bien
- * 4-1 suppression
- * 4-2 modification
- *
- * 5) delete par le service
- *
- * 6) update par le service
- *
- *
- */
+ /**
+ * Test that the service know if file are deleted
+ * @throws IOException
+ */
+ @Test
+ public void testDeleteFileDirectly() throws IOException {
+ saveWikittyOnFS();
+
+ String label = WikittyFileUtil.labelToPath(labels.get(1));
+
+ File wikittyOnFS = new File(tempHome.getCanonicalPath()
+ + File.separator + label + File.separator + "pubtextnum_1.js");
+ // check file exist
+ Assert.assertTrue(wikittyOnFS.exists());
+
+ WikittyPubTextImpl wik = new WikittyPubTextImpl();
+ wik.setName("pubtextnum_1");
+
+ WikittyPubTextImpl result = proxy.findByExample(wik);
+ String id = result.getWikittyId();
+ // check that the wikitty exist
+ Assert.assertNotNull(result);
+
+ //delete the file
+ wikittyOnFS.delete();
+
+ // check that the wikitty is now deleted
+ Assert.assertNull(proxy.restore(id));
+
+ }
+
+ /**
+ * Test delete with the service
+ * @throws IOException
+ */
+ @Test
+ public void deleteWithService() throws IOException{
+ saveWikittyOnFS();
+
+ String label = WikittyFileUtil.labelToPath(labels.get(1));
+
+ File wikittyOnFS = new File(tempHome.getCanonicalPath()
+ + File.separator + label + File.separator + "pubtextnum_1.js");
+ // check file exist
+ Assert.assertTrue(wikittyOnFS.exists());
+
+ WikittyPubTextImpl wik = new WikittyPubTextImpl();
+ wik.setName("pubtextnum_1");
+
+ WikittyPubTextImpl result = proxy.findByExample(wik);
+ String id = result.getWikittyId();
+ // delete the wikitt
+ proxy.delete(id);
+ // check that the wikitty and the file are now deleted
+ Assert.assertNull(proxy.restore(id));
+ Assert.assertFalse(wikittyOnFS.exists());
+
+ }
+
+ /**
+ * Test delete a directory, chech if that delete correctly wikitty
+ * under corresponding labels
+ * @throws IOException
+ */
+ @Test
+ public void testDeleteDirectoryDirectly() throws IOException {
+ saveWikittyOnFS();
+
+ String label = WikittyFileUtil.labelToPath(labels.get(1));
+
+ File wikittyOnFS = new File(tempHome.getCanonicalPath()
+ + File.separator + label );
+ // check file exist
+ Assert.assertTrue(wikittyOnFS.exists());
+
+ // Criteria to find wikittypubtext/data with label starts with
+ Search mainRequest = Search.query();
+ Search subRoqu = mainRequest.or();
+
+ // must have the type of wikittypubtext/wikittypubdata
+ subRoqu.exteq(WikittyPubText.EXT_WIKITTYPUBTEXT).exteq(
+ WikittyPubData.EXT_WIKITTYPUBDATA);
+ Criteria criteriaOnLabels = mainRequest.exteq(WikittyLabel.EXT_WIKITTYLABEL)
+ .sw(WikittyLabel.FQ_FIELD_WIKITTYLABEL_LABELS, labels.get(1))
+ .criteria();
+
+ int totalBeforeDelete = proxy.findAllIdByCriteria(allCrit).getNumFound();
+
+ int numConcerned = proxy.findAllIdByCriteria(criteriaOnLabels).getNumFound();
+
+
+ FileUtil.deleteRecursively( wikittyOnFS);
+
+
+ int numAfterDelete=proxy.findAllIdByCriteria(allCrit).getNumFound();
+ // assert all wikitty concerned are deleted
+ Assert.assertNotSame(numAfterDelete, totalBeforeDelete);
+ Assert.assertEquals(numAfterDelete, totalBeforeDelete-numConcerned);
+
+ }
+
+
}
1
0
r1104 - trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication
by mfortun@users.nuiton.org 02 Aug '11
by mfortun@users.nuiton.org 02 Aug '11
02 Aug '11
Author: mfortun
Date: 2011-08-02 11:13:37 +0200 (Tue, 02 Aug 2011)
New Revision: 1104
Url: http://nuiton.org/repositories/revision/wikitty/1104
Log:
* add some tests
Modified:
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyFileUtilTest.java
Modified: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java 2011-08-01 16:10:14 UTC (rev 1103)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java 2011-08-02 09:13:37 UTC (rev 1104)
@@ -1,21 +1,104 @@
package org.nuiton.wikitty.publication;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileReader;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.Properties;
+
+import junit.framework.Assert;
+
+import org.apache.commons.io.FileUtils;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.nuiton.util.FileUtil;
+
public class PropertiesExtendedTest {
-
- /*
- * 1) création d'un properties extended écriture de chose dedans
- * vérification ya tout
- *
- * 2) création fichier de propriété classiquement et vérifier bien loadé
- *
- * 3) test sauvegarde
- *
- * 4) changement de file en passant
- *
- *
- *
- *
+
+ public File tempHome;
+ public Properties props;
+ public File propsFile;
+
+
+ @Before
+ public void init() throws IOException{
+ tempHome = new File(FileUtils.getTempDirectory().getCanonicalFile()
+ + File.separator + "wikittyFileUtilTest");
+
+ if (tempHome.exists()){
+ FileUtil.deleteRecursively(tempHome);
+
+ }
+ tempHome.mkdir();
+
+ propsFile = new File(tempHome.getCanonicalPath()+File.separator+"props.properties");
+
+ if(propsFile.exists()){
+ propsFile.delete();
+ }
+ propsFile.createNewFile();
+
+
+ props = new Properties();
+ props.put("propertie1", "value1");
+ props.put("propertie2", "value2");
+ props.put("propertie3", "value3");
+ props.put("propertie4", "value4");
+ props.put("propertie5", "value5");
+ props.put("propertie6", "value6");
+
+ }
+
+ @After
+ public void delete(){
+ FileUtil.deleteRecursively(tempHome);
+ propsFile.delete();
+ }
+
+ /**
+ * test how to write and store with properties extended
+ * @throws FileNotFoundException
+ * @throws IOException
*/
+ @Test
+ public void testWrite() throws FileNotFoundException, IOException{
+
+ PropertiesExtended propsExtended = new PropertiesExtended(propsFile);
+ // assert empty
+ Assert.assertEquals(0, propsExtended.keySet().size());
+
+ // put in
+ propsExtended.put("propertie1", "value1");
+
+ Properties proper = new Properties();
+
+ proper.load(new FileReader(propsFile));
+
+ Assert.assertNull(proper.get("propertie1"));
+
+ propsExtended.store();
+
+ proper.load(new FileReader(propsFile));
+ // assert after save that propertie have been set
+ Assert.assertEquals("value1", proper.get("propertie1"));
+ }
-
+ @Test
+ public void testLoad() throws FileNotFoundException, IOException {
+ PropertiesExtended propsExtended = new PropertiesExtended(propsFile);
+ // assert empty
+ Assert.assertEquals(0, propsExtended.keySet().size());
+
+ FileWriter fw = new FileWriter(propsFile);
+
+ props.store(fw, "");
+
+ // load properties from file
+ propsExtended.load(propsFile);
+
+ // assert properties are write
+ Assert.assertEquals(props.size(), propsExtended.keySet().size());
+ }
}
Modified: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyFileUtilTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyFileUtilTest.java 2011-08-01 16:10:14 UTC (rev 1103)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyFileUtilTest.java 2011-08-02 09:13:37 UTC (rev 1104)
@@ -1,12 +1,86 @@
package org.nuiton.wikitty.publication;
+import java.io.File;
+import java.io.IOException;
+import java.util.LinkedList;
+import java.util.List;
+
+import junit.framework.Assert;
+
+import org.apache.commons.io.FileUtils;
+import org.junit.Test;
+import org.nuiton.util.FileUtil;
+import org.nuiton.util.StringUtil;
+
public class WikittyFileUtilTest {
-
-
/*
* 1) test création du path à partir de wikitty
*
* 2) test de la cohérence dans la création des paths à partir de label
*/
+
+ /**
+ * Test the label conversion to path
+ */
+ @Test
+ public void testStringLabelToPath() {
+
+ List<String> listLabel = new LinkedList<String>();
+ listLabel.add("sub1");
+ listLabel.add("sub2");
+ listLabel.add("sub3");
+ // construct label
+ String label = StringUtil.join(listLabel,
+ WikittyFileUtil.WIKITTY_LABEL_SEPARATOR, true);
+ // contruct path
+ String path = StringUtil.join(listLabel, File.separator, true);
+
+ // convert label to path
+ String resultPath = WikittyFileUtil.labelToPath(label);
+
+ Assert.assertEquals(resultPath, path);
+ }
+
+
+ /**
+ * Test the path creation from a label
+ * @throws IOException
+ */
+ @Test
+ public void testDirectoryCreationFromPath() throws IOException {
+
+ List<String> listLabel = new LinkedList<String>();
+ listLabel.add("sub1");
+ listLabel.add("sub2");
+ listLabel.add("sub3");
+ // construct label
+ String label = StringUtil.join(listLabel,
+ WikittyFileUtil.WIKITTY_LABEL_SEPARATOR, true);
+
+ // contruct path
+ String path = StringUtil.join(listLabel, File.separator, true);
+
+ File home = new File(FileUtils.getTempDirectory().getCanonicalFile()
+ + File.separator + "wikittyFileUtilTest");
+
+ // assert the temporary file does not exist
+ if (home.exists()){
+ FileUtil.deleteRecursively(home);
+
+ }
+ home.mkdir();
+
+
+ File resultCreated = new File(home.getCanonicalPath()+File.separator+path);
+ // assert the complete path not exist
+ Assert.assertFalse(resultCreated.exists());
+ // construct the directory
+ WikittyFileUtil.createFilesFromLabelPath(home, label);
+ // assert the diretories exists
+ Assert.assertTrue(resultCreated.exists());
+
+ FileUtil.deleteRecursively(home);
+ }
+
}
1
0
r1103 - in trunk/wikitty-publication/src: main/java/org/nuiton/wikitty/publication test/java/org/nuiton/wikitty/publication test/java/org/nuiton/wikitty/publication/externalize test/java/org/nuiton/wikitty/publication/synchro
by mfortun@users.nuiton.org 01 Aug '11
by mfortun@users.nuiton.org 01 Aug '11
01 Aug '11
Author: mfortun
Date: 2011-08-01 18:10:14 +0200 (Mon, 01 Aug 2011)
New Revision: 1103
Url: http://nuiton.org/repositories/revision/wikitty/1103
Log:
* add class text with algorithm
* correct local value to static
Added:
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/UiCodeDecoratorTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyFileUtilTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyPublicationFallbackServiceTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/CodeDecoratorCompilerClassTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/WikittyPublicationExternalizeTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/WikittyServiceJarLoaderTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystemTest.java
trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationSynchronizeTest.java
Modified:
trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyFileUtil.java
Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyFileUtil.java
===================================================================
--- trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyFileUtil.java 2011-08-01 13:25:39 UTC (rev 1102)
+++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/WikittyFileUtil.java 2011-08-01 16:10:14 UTC (rev 1103)
@@ -7,6 +7,9 @@
import org.apache.commons.logging.LogFactory;
import org.nuiton.util.FileUtil;
import org.nuiton.util.StringUtil;
+import org.nuiton.wikitty.WikittyUtil;
+import org.nuiton.wikitty.entities.WikittyLabel;
+import org.nuiton.wikitty.entities.WikittyLabelAbstract;
/**
*
@@ -22,6 +25,7 @@
*/
static public String WIKITTY_FILE_META_PROPERTIES_FILE = "meta.properties";
+ static public String WIKITTY_LABEL_SEPARATOR=".";
/*
* Need a different file for id and meta information about wikittiesFiles
* because with this solution we can simply read the ids with props.keySet()
@@ -44,7 +48,7 @@
String result = label;
- result = result.replace(".", File.separator);
+ result = result.replace(WIKITTY_LABEL_SEPARATOR, File.separator);
// correct the pb with directory name begin by .
result = result.replace(File.separator + File.separator, File.separator
Added: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java (rev 0)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/PropertiesExtendedTest.java 2011-08-01 16:10:14 UTC (rev 1103)
@@ -0,0 +1,21 @@
+package org.nuiton.wikitty.publication;
+
+public class PropertiesExtendedTest {
+
+ /*
+ * 1) création d'un properties extended écriture de chose dedans
+ * vérification ya tout
+ *
+ * 2) création fichier de propriété classiquement et vérifier bien loadé
+ *
+ * 3) test sauvegarde
+ *
+ * 4) changement de file en passant
+ *
+ *
+ *
+ *
+ */
+
+
+}
Added: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/UiCodeDecoratorTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/UiCodeDecoratorTest.java (rev 0)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/UiCodeDecoratorTest.java 2011-08-01 16:10:14 UTC (rev 1103)
@@ -0,0 +1,25 @@
+package org.nuiton.wikitty.publication;
+
+public class UiCodeDecoratorTest {
+
+
+ /*
+ *Test pour différent code.
+ *voir si ça gère quand ya des <%=%>
+ *ou pas
+ *
+ */
+
+ /*
+ * créer du code html avec rien comme code et voir que le code est bien
+ * décoré quand même
+ *
+ * 2) mettre uniquement des <%= %> dedans
+ * 3) mettre uniquement <% %> dedans
+ *
+ * 4) mixer <% et <%=
+ *
+ * 5) balises + html
+ */
+
+}
Added: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyFileUtilTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyFileUtilTest.java (rev 0)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyFileUtilTest.java 2011-08-01 16:10:14 UTC (rev 1103)
@@ -0,0 +1,12 @@
+package org.nuiton.wikitty.publication;
+
+public class WikittyFileUtilTest {
+
+
+
+ /*
+ * 1) test création du path à partir de wikitty
+ *
+ * 2) test de la cohérence dans la création des paths à partir de label
+ */
+}
Added: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyPublicationFallbackServiceTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyPublicationFallbackServiceTest.java (rev 0)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/WikittyPublicationFallbackServiceTest.java 2011-08-01 16:10:14 UTC (rev 1103)
@@ -0,0 +1,26 @@
+package org.nuiton.wikitty.publication;
+
+public class WikittyPublicationFallbackServiceTest {
+
+
+ /*
+ * Instancier un wikitty service sur FS et un sur cajo
+ * mettre des wikitty dans les deux différent 10-10, et 5 de plus en commun
+ *
+ * 1) test de l'affichage des 15 wikitty
+ *
+ * 2) test prévalence de ceux sur le premier
+ *
+ * 3) test de sauvegarde qui se mettent sur le premier
+ *
+ * 4) test des recherches limités qui se complétent
+ *
+ * 5) suppression
+ *
+ * 6) édition/sauvegarde d'un wikitty qui n'est pas sur le "main" au départ
+ *
+ *
+ *
+ */
+
+}
Added: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/CodeDecoratorCompilerClassTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/CodeDecoratorCompilerClassTest.java (rev 0)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/CodeDecoratorCompilerClassTest.java 2011-08-01 16:10:14 UTC (rev 1103)
@@ -0,0 +1,24 @@
+package org.nuiton.wikitty.publication.externalize;
+
+
+public class CodeDecoratorCompilerClassTest {
+
+
+ /*
+ * Ce test sera pour tester la compilation d'un wikitty pub text
+ * en pub text compiled et son éxécution.
+ *
+ * 1) créer un wikittyPubText avec du javascript, vérifier le code décorer
+ * (externalize partie décoration)
+ *
+ * 2) la même chose avec du code java
+ * (externalize partie décoration)
+ *
+ * 3) faire la compilation du javascript et l'éxécution
+ * (externalize partie décoration+compileHelper+classLoaderHelper)
+ *
+ * 4) faire la compilation du java et l'éxécution
+ * (externalize partie décorations+compileHelper+classLoaderHelper)
+ */
+
+}
Added: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/WikittyPublicationExternalizeTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/WikittyPublicationExternalizeTest.java (rev 0)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/WikittyPublicationExternalizeTest.java 2011-08-01 16:10:14 UTC (rev 1103)
@@ -0,0 +1,20 @@
+package org.nuiton.wikitty.publication.externalize;
+
+public class WikittyPublicationExternalizeTest {
+
+
+ /*
+ * 1) créer un repos de wikitty local
+ *
+ * 2) externalizer, véfifier le jar, que le fichier temporaire
+ * n'existe plus.
+ *
+ * 3) vérifier la présence de .java, .class et le fichier correspondant
+ * pour les wikittypubtext
+ *
+ *
+ *
+ */
+
+
+}
Added: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/WikittyServiceJarLoaderTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/WikittyServiceJarLoaderTest.java (rev 0)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/externalize/WikittyServiceJarLoaderTest.java 2011-08-01 16:10:14 UTC (rev 1103)
@@ -0,0 +1,21 @@
+package org.nuiton.wikitty.publication.externalize;
+
+public class WikittyServiceJarLoaderTest {
+
+
+ /*
+ * Liste des tests à faire:
+ *
+ * 1) S'assurer du nombre de wikitty sauvegardé
+ *
+ * 2) s'assurer que les wikittys sont toujours les mêmes
+ *
+ * 3) s'assurer que les stores ne fonctionnent pas
+ *
+ * 4) la liste des extension disponible
+ *
+ * 5) faire des recherches celon critéria différents
+ *
+ */
+
+}
Added: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystemTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystemTest.java (rev 0)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationFileSystemTest.java 2011-08-01 16:10:14 UTC (rev 1103)
@@ -0,0 +1,26 @@
+package org.nuiton.wikitty.publication.synchro;
+
+public class WikittyPublicationFileSystemTest {
+
+
+/*
+ * Liste des tests à faire:
+ *
+ * 1) Crééer une collection de wikitty et les sauvegarder s'assurer on a les mêmes
+ *
+ * 2) s'assurer que les labels sont bien mit
+ *
+ * 3) test avec des wikittys pub data et pub text
+ *
+ * 4) faire des modifications en dehors du service et voir que le service le voit bien
+ * 4-1 suppression
+ * 4-2 modification
+ *
+ * 5) delete par le service
+ *
+ * 6) update par le service
+ *
+ *
+ */
+
+}
Added: trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationSynchronizeTest.java
===================================================================
--- trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationSynchronizeTest.java (rev 0)
+++ trunk/wikitty-publication/src/test/java/org/nuiton/wikitty/publication/synchro/WikittyPublicationSynchronizeTest.java 2011-08-01 16:10:14 UTC (rev 1103)
@@ -0,0 +1,34 @@
+package org.nuiton.wikitty.publication.synchro;
+
+public class WikittyPublicationSynchronizeTest {
+
+
+ /*
+ * Liste des tests à faire:
+ *
+ * 1) créer un wikitty service file system et un autre sur cajo
+ * créer des wikittys et les mettres dans un puis synchroniser avec l'autre
+ * et voir que tout est envoyé
+ *
+ * 2) créer des nouveau sur l'un wikitty service, modifier des anciens
+ * et voir que seulement les anciens sont mis à jour
+ *
+ * 3) supprimer et modifier, plus nouveau et voir que seulement ceux supprimer
+ * passent
+ *
+ * 4) la même chose avec la gestion de la récursion pour update
+ *
+ * 5) la même chose avec la gestion de la récursion pour existing
+ *
+ * 6) la même chose avec la gestion de la récursion pour delete
+ *
+ * 7) raccourci update
+ *
+ * 8) raccourci existing
+ *
+ * 9) raccourci delete
+ *
+ *
+ */
+
+}
1
0
r1102 - trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication
by mfortun@users.nuiton.org 01 Aug '11
by mfortun@users.nuiton.org 01 Aug '11
01 Aug '11
Author: mfortun
Date: 2011-08-01 15:25:39 +0200 (Mon, 01 Aug 2011)
New Revision: 1102
Url: http://nuiton.org/repositories/revision/wikitty/1102
Log:
* improve mimeType handling
Modified:
trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/MimeTypePubHelper.java
trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/UiCodeDecorator.java
Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/MimeTypePubHelper.java
===================================================================
--- trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/MimeTypePubHelper.java 2011-08-01 09:17:38 UTC (rev 1101)
+++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/MimeTypePubHelper.java 2011-08-01 13:25:39 UTC (rev 1102)
@@ -24,9 +24,7 @@
*/
package org.nuiton.wikitty.publication;
-import java.util.ArrayList;
import java.util.HashMap;
-import java.util.List;
import java.util.Map;
import javax.script.ScriptEngineManager;
@@ -48,6 +46,7 @@
*/
protected Map<String, String> mapExtensionMime;
protected ScriptEngineManager manager;
+ protected UiCodeDecorator decorator;
/**
* The default mime type
@@ -56,7 +55,7 @@
public MimeTypePubHelper() {
this.mapExtensionMime = new HashMap<String, String>();
-
+ decorator = new UiCodeDecorator();
manager = ScriptEvaluator.getScriptEnginManager(null);
@@ -104,7 +103,10 @@
*/
public boolean isPubTextMime(String mimeType) {
// will check if there is an engine for the mimetype
- return manager.getEngineByMimeType(mimeType)!=null;
+
+ boolean result = manager.getEngineByMimeType(mimeType)!=null;
+ result = result || decorator.isMimeTypeUi(mimeType);
+ return result;
}
/**
Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/UiCodeDecorator.java
===================================================================
--- trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/UiCodeDecorator.java 2011-08-01 09:17:38 UTC (rev 1101)
+++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/UiCodeDecorator.java 2011-08-01 13:25:39 UTC (rev 1102)
@@ -137,22 +137,20 @@
return false;
}
String mime = WikittyPubTextHelper.getMimeType(wikitty);
- String[] mimeParsed = StringUtil.split(mime, MIME_SEP);
- boolean result = firstPartMimeHandled.contains(mimeParsed[0]);
-
- return result;
+ return isMimeTypeUi(mime);
}
public boolean isTransformationNeeded(WikittyPubData wikitty) {
String mime = wikitty.getMimeType();
+ return isMimeTypeUi(mime);
+ }
+
+
+ public boolean isMimeTypeUi(String mime){
String[] mimeParsed = StringUtil.split(mime, MIME_SEP);
boolean result = firstPartMimeHandled.contains(mimeParsed[0]);
-
return result;
}
-
-
-
}
1
0
r1101 - trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/externalize
by mfortun@users.nuiton.org 01 Aug '11
by mfortun@users.nuiton.org 01 Aug '11
01 Aug '11
Author: mfortun
Date: 2011-08-01 11:17:38 +0200 (Mon, 01 Aug 2011)
New Revision: 1101
Url: http://nuiton.org/repositories/revision/wikitty/1101
Log:
* change com.sun import to javax.tools to obtain java compiler
Modified:
trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/externalize/CompileHelper.java
Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/externalize/CompileHelper.java
===================================================================
--- trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/externalize/CompileHelper.java 2011-07-28 16:08:38 UTC (rev 1100)
+++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/externalize/CompileHelper.java 2011-08-01 09:17:38 UTC (rev 1101)
@@ -1,10 +1,7 @@
package org.nuiton.wikitty.publication.externalize;
-
-
import static org.nuiton.i18n.I18n._;
-
import java.io.File;
import java.io.PrintWriter;
@@ -25,34 +22,30 @@
import org.apache.commons.logging.LogFactory;
import org.nuiton.util.FileUtil;
-import com.sun.tools.javac.api.JavacTool;
-
-
/**
* Class reuse from the isis fish project.
*
*
* Compile helper used to compile Java code.
*
- * JDK must be installed to use compilation.
- * (JRE won't work).
+ * JDK must be installed to use compilation. (JRE won't work).
*
* Created: 12 janv. 2006 15:29:53
- *
+ *
* @author poussin
* @version $Revision: 3124 $
- *
- * Last update: $Date: 2010-11-29 19:14:09 +0100 (lun. 29 nov. 2010) $
- * by : $Author: chatellier $
+ *
+ * Last update: $Date: 2010-11-29 19:14:09 +0100 (lun. 29 nov. 2010) $
+ * by : $Author: chatellier $
*/
public class CompileHelper {
/** Logger for this class. */
private static final Log log = LogFactory.getLog(CompileHelper.class);
-
/**
- * Recherche tous les fichiers qui un source plus recent que la version compilé.
+ * Recherche tous les fichiers qui un source plus recent que la version
+ * compilé.
*
* @param srcDir
* @param destDir
@@ -69,25 +62,23 @@
return result;
}
-
-
-
-
-
/**
* Methode permettant de compiler un fichier Java.
*
- * @param rootSrc le répertoire ou se trouve les sources
- * @param src Le fichier source a compiler, il doit etre dans un sous
- * répertoire de rootSrc en fonction du package
- * @param dest le repertoire destination de la compilation
- * @param out l'objet sur lequel on ecrit la sortie (erreur) de la
- * compilation
- * @return un nombre different de 0 s'il y a une erreur
- * <li> -1000 si l'exception vient de la recherche du compilateur par
- * introspection
- * <li> -10000 si une autre exception
- * <li> sinon les valeurs retourné par le compilateur java
+ * @param rootSrc
+ * le répertoire ou se trouve les sources
+ * @param src
+ * Le fichier source a compiler, il doit etre dans un sous
+ * répertoire de rootSrc en fonction du package
+ * @param dest
+ * le repertoire destination de la compilation
+ * @param out
+ * l'objet sur lequel on ecrit la sortie (erreur) de la
+ * compilation
+ * @return un nombre different de 0 s'il y a une erreur <li>-1000 si
+ * l'exception vient de la recherche du compilateur par
+ * introspection <li>-10000 si une autre exception <li>sinon les
+ * valeurs retourné par le compilateur java
*/
public static int compile(File rootSrc, File src, File dest, PrintWriter out) {
int result = compile(rootSrc, Collections.singletonList(src), dest, out);
@@ -97,17 +88,20 @@
/**
* Methode permettant de compiler un ensemble de fichiers Java.
*
- * @param rootSrc le répertoire ou se trouve les sources
- * @param src Le fichier source a compiler, il doit etre dans un sous
- * répertoire de rootSrc en fonction du package
- * @param dest le repertoire destination de la compilation
- * @param out l'objet sur lequel on ecrit la sortie (erreur) de la
- * compilation
- * @return un nombre different de 0 s'il y a une erreur
- * <li> -1000 si l'exception vient de la recherche du compilateur par
- * introspection
- * <li> -10000 si une autre exception
- * <li> sinon les valeurs retourné par le compilateur java
+ * @param rootSrc
+ * le répertoire ou se trouve les sources
+ * @param src
+ * Le fichier source a compiler, il doit etre dans un sous
+ * répertoire de rootSrc en fonction du package
+ * @param dest
+ * le repertoire destination de la compilation
+ * @param out
+ * l'objet sur lequel on ecrit la sortie (erreur) de la
+ * compilation
+ * @return un nombre different de 0 s'il y a une erreur <li>-1000 si
+ * l'exception vient de la recherche du compilateur par
+ * introspection <li>-10000 si une autre exception <li>sinon les
+ * valeurs retourné par le compilateur java
*/
public static int compile(File rootSrc, Collection<File> src, File dest,
PrintWriter out) {
@@ -128,16 +122,19 @@
/**
* Compile un fichier java.
*
- * @param src les fichiers java source
- * @param dest le repertoire destination
+ * @param src
+ * les fichiers java source
+ * @param dest
+ * le repertoire destination
*/
protected static int compile(List<File> classpath, Collection<File> src,
File dest, PrintWriter out) {
dest.mkdirs();
-
+
int result = -1000;
try {
- JavaCompiler compiler = JavacTool.create();
+ JavaCompiler compiler = javax.tools.ToolProvider
+ .getSystemJavaCompiler();
// Use system compiler
// JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
StandardJavaFileManager fileManager = compiler
@@ -149,7 +146,8 @@
String classpathAsString = getClassPathAsString(classpath);
List<String> args = new ArrayList<String>();
args.add("-g");
- // Show a description of each use or override of a deprecated member or class.
+ // Show a description of each use or override of a deprecated member
+ // or class.
args.add("-deprecation");
args.add("-classpath");
args.add(classpathAsString);
@@ -172,15 +170,17 @@
}
/**
- * Return full classpath (for compilation or javadoc) as string.
- * Separated by {@link File#pathSeparator}.
+ * Return full classpath (for compilation or javadoc) as string. Separated
+ * by {@link File#pathSeparator}.
*
* Add :
* <ul>
- * <li>System.getProperty("java.class.path")
- * <li>All first jar dependency (META-INF/MANIFEST.MF)
+ * <li>System.getProperty("java.class.path")
+ * <li>All first jar dependency (META-INF/MANIFEST.MF)
* </ul>
- * @param classpath initial classpath
+ *
+ * @param classpath
+ * initial classpath
* @return classpath as string
* @throws Exception
*/
@@ -193,8 +193,8 @@
// classpath.
// result in duplicated entry or non normalised entry
// en compilation fail some times
- //+ File.pathSeparator + System.getProperty("java.class.path");
-
+ // + File.pathSeparator + System.getProperty("java.class.path");
+
// Ajout des jars
for (Enumeration<?> e = CompileHelper.class.getClassLoader()
.getResources("META-INF/MANIFEST.MF"); e.hasMoreElements();) {
@@ -230,12 +230,4 @@
return result;
}
-
-
-
-
-
-
-
-
}
1
0