[freenet-cvs] r14903 - trunk/plugins/Echo/src/plugins/echo
fred at freenetproject.org
fred at freenetproject.org
Tue Aug 28 16:13:51 UTC 2007
Author: fred
Date: 2007-08-28 16:13:51 +0000 (Tue, 28 Aug 2007)
New Revision: 14903
Added:
trunk/plugins/Echo/src/plugins/echo/SimpleDirectoryInserter.java
trunk/plugins/Echo/src/plugins/echo/TempWikiMarkupRender.java
Log:
Add TempWikiMarkupRender
Add SimpleDirectoryInserter
Added: trunk/plugins/Echo/src/plugins/echo/SimpleDirectoryInserter.java
===================================================================
--- trunk/plugins/Echo/src/plugins/echo/SimpleDirectoryInserter.java (rev 0)
+++ trunk/plugins/Echo/src/plugins/echo/SimpleDirectoryInserter.java 2007-08-28 16:13:51 UTC (rev 14903)
@@ -0,0 +1,53 @@
+package plugins.echo;
+
+import freenet.node.fcp.FCPServer;
+import freenet.node.fcp.FCPClient;
+import freenet.node.fcp.ClientRequest;
+import freenet.node.fcp.ClientPutDir;
+import freenet.node.fcp.IdentifierCollisionException;
+import freenet.node.RequestStarter;
+import freenet.keys.FreenetURI;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.net.MalformedURLException;
+
+
+public class SimpleDirectoryInserter {
+
+ private FCPServer fcpServer;
+ public ClientPutDir clientPutDir;
+
+ public SimpleDirectoryInserter(FCPServer fcpServer) {
+
+ this.fcpServer = fcpServer;
+
+ }
+
+ public ClientPutDir insert(File dir, String defaultName, FreenetURI insertURI) throws FileNotFoundException, IdentifierCollisionException, MalformedURLException{
+
+ FCPClient client = fcpServer.getGlobalClient();
+
+ clientPutDir = new ClientPutDir( client,
+ insertURI,
+ "echo-" + System.currentTimeMillis(),
+ Integer.MAX_VALUE,
+ RequestStarter.BULK_SPLITFILE_PRIORITY_CLASS,
+ ClientRequest.PERSIST_FOREVER,
+ null,
+ false,
+ false,
+ -1,
+ dir,
+ defaultName,
+ false,
+ true,
+ false);
+
+ clientPutDir.start();
+ fcpServer.forceStorePersistentRequests();
+
+ return clientPutDir;
+ }
+
+}
\ No newline at end of file
Added: trunk/plugins/Echo/src/plugins/echo/TempWikiMarkupRender.java
===================================================================
--- trunk/plugins/Echo/src/plugins/echo/TempWikiMarkupRender.java (rev 0)
+++ trunk/plugins/Echo/src/plugins/echo/TempWikiMarkupRender.java 2007-08-28 16:13:51 UTC (rev 14903)
@@ -0,0 +1,44 @@
+package plugins.echo;
+
+import net.sf.textile4j.Textile;
+import nu.xom.Builder;
+import nu.xom.Node;
+import nu.xom.Element;
+import nu.xom.Text;
+
+/**
+* This is an horrible temporary class for rendering wiki markup util WikiMarkupRender is finished.
+*/
+public class TempWikiMarkupRender extends WikiMarkupRender {
+
+ private Textile textile;
+
+ public TempWikiMarkupRender() {
+
+ this.textile = new Textile();
+
+ }
+
+ public void render(Element xml) {
+
+ try {
+ Builder parser = new Builder();
+
+ Text originalContent = (Text) xml.getChild(0);
+
+ Element renderedContent = parser.build("<rendered>" + textile.process(originalContent.getValue()) + "</rendered>", null).getRootElement();
+
+ while (renderedContent.getChildCount() != 0) {
+ nu.xom.Node node = renderedContent.getChild(0);
+ node.detach();
+ xml.appendChild(node);
+ }
+
+ originalContent.detach();
+
+ } catch (Exception e) { //Ugly
+ e.printStackTrace();
+ }
+ }
+
+}
\ No newline at end of file
More information about the cvs
mailing list