Author: toad
Date: 2006-12-07 22:39:29 +0000 (Thu, 07 Dec 2006)
New Revision: 11299
Modified:
trunk/freenet/src/freenet/node/NodeClientCore.java
trunk/freenet/src/freenet/pluginmanager/PluginRespirator.java
Log:
New support code for plugins: Allow them to create a
[GenericRead]FilterCallback.
Modified: trunk/freenet/src/freenet/node/NodeClientCore.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeClientCore.java 2006-12-07 22:29:13 UTC
(rev 11298)
+++ trunk/freenet/src/freenet/node/NodeClientCore.java 2006-12-07 22:39:29 UTC
(rev 11299)
@@ -2,6 +2,7 @@
import java.io.File;
import java.io.IOException;
+import java.net.URI;
import freenet.client.ArchiveManager;
import freenet.client.HighLevelSimpleClient;
@@ -15,6 +16,9 @@
import freenet.clients.http.BookmarkManager;
import freenet.clients.http.FProxyToadlet;
import freenet.clients.http.SimpleToadletServer;
+import freenet.clients.http.filter.FilterCallback;
+import freenet.clients.http.filter.FoundURICallback;
+import freenet.clients.http.filter.GenericReadFilterCallback;
import freenet.config.BooleanCallback;
import freenet.config.Config;
import freenet.config.InvalidConfigValueException;
@@ -788,4 +792,7 @@
return node.getMyName();
}
+ public FilterCallback createFilterCallback(URI uri, FoundURICallback
cb) {
+ return new GenericReadFilterCallback(uri, cb);
+ }
}
Modified: trunk/freenet/src/freenet/pluginmanager/PluginRespirator.java
===================================================================
--- trunk/freenet/src/freenet/pluginmanager/PluginRespirator.java
2006-12-07 22:29:13 UTC (rev 11298)
+++ trunk/freenet/src/freenet/pluginmanager/PluginRespirator.java
2006-12-07 22:39:29 UTC (rev 11299)
@@ -1,8 +1,13 @@
package freenet.pluginmanager;
+import java.net.URI;
+import java.net.URISyntaxException;
+
import freenet.client.HighLevelSimpleClient;
+import freenet.clients.http.filter.FilterCallback;
import freenet.node.Node;
import freenet.node.RequestStarter;
+import freenet.support.URIPreEncoder;
public class PluginRespirator {
private HighLevelSimpleClient hlsc = null;
@@ -21,4 +26,12 @@
public Node getNode(){
return node;
}
+
+ public FilterCallback makeFilterCallback(String path) {
+ try {
+ return
node.clientCore.createFilterCallback(URIPreEncoder.encodeURI(path), null);
+ } catch (URISyntaxException e) {
+ throw new Error(e);
+ }
+ }
}