Author: mfortun Date: 2011-07-28 18:08:38 +0200 (Thu, 28 Jul 2011) New Revision: 1100 Url: http://nuiton.org/repositories/revision/wikitty/1100 Log: * change how work the mimeType helper * unused import 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 trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/externalize/WikittyPublicationExternalize.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-07-28 13:33:54 UTC (rev 1099) +++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/MimeTypePubHelper.java 2011-07-28 16:08:38 UTC (rev 1100) @@ -29,6 +29,10 @@ import java.util.List; import java.util.Map; +import javax.script.ScriptEngineManager; + +import org.nuiton.wikitty.ScriptEvaluator; + /** * Class used to determine mimetype for an extension, used to determine type of * wikittypub (data or text) with the extension and the mime type @@ -43,25 +47,19 @@ * Mapping between extention and mime type, key: extension, value: mimeType */ protected Map<String, String> mapExtensionMime; + protected ScriptEngineManager manager; /** - * White list of mime type that have to be transform as a wikittyPubText - */ - protected List<String> mimePubText; - - /** * The default mime type */ public static String DEFAULT_MIME_TYPE = "application/octet-stream"; public MimeTypePubHelper() { this.mapExtensionMime = new HashMap<String, String>(); - this.mimePubText = new ArrayList<String>(); + - // TODO create a property file to store and handle mimetype for pub - // text - mimePubText.add("application/javascript"); - + manager = ScriptEvaluator.getScriptEnginManager(null); + mapExtensionMime.put("wp", "application/javascript"); mapExtensionMime.put("js", "application/javascript"); mapExtensionMime.put("jpg", "image/jpeg"); @@ -76,13 +74,7 @@ this.mapExtensionMime = mapExtensionMime; } - public List<String> getMimePubText() { - return mimePubText; - } - public void setMimePubText(List<String> mimePubText) { - this.mimePubText = mimePubText; - } /** * Return the corresponding mime Type for an extension, default if not @@ -111,7 +103,8 @@ * @return if the mimetype of a file correspond to a wikittyPubText */ public boolean isPubTextMime(String mimeType) { - return mimePubText.contains(mimeType); + // will check if there is an engine for the mimetype + return manager.getEngineByMimeType(mimeType)!=null; } /** @@ -126,15 +119,6 @@ } /** - * Add a mimeType corresponding to a WikittyPubText - * - * @param mime - */ - public void addMimeForPubText(String mime) { - mimePubText.add(mime); - } - - /** * Add an entry in the map that store mapping between extension and * mimeType. * @@ -144,4 +128,14 @@ public void addExtensionMime(String extension, String mime) { mapExtensionMime.put(extension, mime); } + + public ScriptEngineManager getManager() { + return manager; + } + + public void setManager(ScriptEngineManager manager) { + this.manager = manager; + } + + } 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-07-28 13:33:54 UTC (rev 1099) +++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/UiCodeDecorator.java 2011-07-28 16:08:38 UTC (rev 1100) @@ -14,6 +14,7 @@ import org.nuiton.processor.filters.GeneratorTemplatesFilterIn; import org.nuiton.util.StringUtil; import org.nuiton.wikitty.entities.Wikitty; +import org.nuiton.wikitty.publication.entities.WikittyPubData; import org.nuiton.wikitty.publication.entities.WikittyPubText; import org.nuiton.wikitty.publication.entities.WikittyPubTextHelper; @@ -24,6 +25,9 @@ * * décorer à l'inverse en fait transformer du html en js qui contient du * html par exemple + * + * regex for html end token need to add /n at the end + * "</[\\w\\d]*>" */ protected String DEFAULT_MIME_TYPE_RETURN = "text/html"; @@ -48,6 +52,7 @@ + } public UiCodeDecorator() { @@ -138,4 +143,16 @@ return result; } + + public boolean isTransformationNeeded(WikittyPubData wikitty) { + String mime = wikitty.getMimeType(); + String[] mimeParsed = StringUtil.split(mime, MIME_SEP); + boolean result = firstPartMimeHandled.contains(mimeParsed[0]); + + return result; + } + + + + } Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/externalize/WikittyPublicationExternalize.java =================================================================== --- trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/externalize/WikittyPublicationExternalize.java 2011-07-28 13:33:54 UTC (rev 1099) +++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/externalize/WikittyPublicationExternalize.java 2011-07-28 16:08:38 UTC (rev 1100) @@ -25,7 +25,6 @@ import org.nuiton.wikitty.publication.entities.WikittyPubDataHelper; 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.publication.synchro.WikittyPublicationSynchronize; import org.nuiton.wikitty.publication.synchro.WikittyPublicationFileSystem; import org.nuiton.wikitty.search.Criteria;
participants (1)
-
mfortun@users.nuiton.org