Only build one jar which runs stand alone and as a plugin.
diff --git a/build.xml b/build.xml
--- a/build.xml
+++ b/build.xml
@@ -11,7 +11,7 @@
<delete dir="${classes}"/>
</target>
- <!--Build external dependencies from source, but keep them separate. -->
+ <!-- Build external dependencies from source, but keep them separate. -->
<target name="compile.alien.src">
<mkdir dir="${classes}"/>
<javac srcdir="${alien.src}" destdir="${classes}" debug="true">
@@ -19,7 +19,8 @@
</javac>
</target>
- <target name="check.for.freenet.jar">
+ <target name="compile" depends="compile.alien.src">
+ <mkdir dir="${classes}"/>
<mkdir dir="${alien.libs}"/>
<fail message="No freenet.jar! Copy freenet.jar into: ${alien.libs}">
<condition>
@@ -30,10 +31,6 @@
</not>
</condition>
</fail>
- </target>
-
- <target name="compile" depends="check.for.freenet.jar, compile.alien.src">
- <mkdir dir="${classes}"/>
<javac srcdir="${src}" destdir="${classes}" debug="true">
<compilerarg line="-encoding utf8"/>
<classpath>
@@ -42,32 +39,13 @@
</javac>
</target>
- <target name="compile.plugin.src" depends="check.for.freenet.jar, compile">
- <mkdir dir="${classes}"/>
- <javac srcdir="${plugin.src}" destdir="${classes}" debug="true">
- <compilerarg line="-encoding utf8"/>
- <classpath>
- <pathelement location="${alien.libs}/freenet.jar"/>
- </classpath>
- </javac>
- </target>
-
+ <!-- jfniki.jar contains both standalone and plugin code too. -->
<target name="jar" depends="compile">
<mkdir dir="${jars}"/>
<jar destfile="${jars}/jfniki.jar" basedir="${classes}">
<manifest>
<attribute name="Main-Class" value="fniki.standalone.ServeHttp"/>
- </manifest>
- </jar>
- </target>
-
- <!-- jfniki-plugin.jar contains all the standalone code too. -->
- <target name="plugin" depends="compile.plugin.src">
- <mkdir dir="${jars}"/>
- <jar destfile="${jars}/jfniki-plugin.jar" basedir="${classes}">
- <manifest>
- <attribute name="Main-Class" value="fniki.standalone.ServeHttp"/>
- <attribute name="Plugin-Main-Class" value="fniki.plugin.Fniki"/>
+ <attribute name="Plugin-Main-Class" value="fniki.freenet.plugin.Fniki"/>
</manifest>
</jar>
</target>
diff --git a/readme.txt b/readme.txt
--- a/readme.txt
+++ b/readme.txt
@@ -1,4 +1,4 @@
-20110122
+20110126
djk@isFiaD04zgAgnrEC5XJt1i4IE7AkNPqhBG5bONi6Yks
WARNING:
@@ -30,9 +30,14 @@ Edit the script/jfniki.sh to set PRIVATE
Look at http://127.0.0.1:8083 with your web browser.
BUILD FREENET PLUGIN:
+The plugin code is included in the jfniki.jar but there is no UI for configuration yet,
+so you have to edit the source code and recompile.
+
Manually edit plugin/src/fniki/plugin/Fniki.java to include your FMS_ID and PRIVATE_FMS_SSK.
-ant plugin
-load the jar file from ./build/jar/jfniki-plugin.jar
+ant jar
+load the jar file from ./build/jar/jfniki.jar
-
+KNOWN ISSUES:
+o Pages don't auto-refresh. You need to manually reload to see status changes.
+ [Freenet ContentFilter is eating meta-refresh???]
diff --git a/script/jfniki.sh b/script/jfniki.sh
--- a/script/jfniki.sh
+++ b/script/jfniki.sh
@@ -1,8 +1,8 @@
#!/usr/bin/env sh
# TIP:
-# You should be able to copy this script anywhere you want and make a symlink
-# to the jfniki.jar file in your build directory, in the directory you copy it to.
+# You should be able to copy this script anywhere you want. Just make symlinks
+# to the jfniki.jar and freenet.jar files in the same directory.
# TIP:
# Look in the XML file generate by FMS when you export and identity on
diff --git a/src/fniki/freenet/filter/ContentFilterFactory.java b/src/fniki/freenet/filter/ContentFilterFactory.java
--- a/src/fniki/freenet/filter/ContentFilterFactory.java
+++ b/src/fniki/freenet/filter/ContentFilterFactory.java
@@ -26,7 +26,7 @@ package fniki.freenet.filter;
import fniki.wiki.ContentFilter;
-// Keep Freenet gook out of my code.
+// Keep explicit Freenet dependencies out of my code.
public class ContentFilterFactory {
public static ContentFilter create(String containerPrefix, String fproxyPrefix) {
return new WikiContentFilter(containerPrefix, fproxyPrefix);
diff --git a/plugin/src/fniki/plugin/Fniki.java b/src/fniki/freenet/plugin/Fniki.java
rename from plugin/src/fniki/plugin/Fniki.java
rename to src/fniki/freenet/plugin/Fniki.java
--- a/plugin/src/fniki/plugin/Fniki.java
+++ b/src/fniki/freenet/plugin/Fniki.java
@@ -22,7 +22,7 @@
* "fniki" (a wiki implementation running over Freenet).
*/
-package fniki.plugin;
+package fniki.freenet.plugin;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
diff --git a/src/fniki/wiki/WikiApp.java b/src/fniki/wiki/WikiApp.java
--- a/src/fniki/wiki/WikiApp.java
+++ b/src/fniki/wiki/WikiApp.java
@@ -380,7 +380,7 @@ public class WikiApp implements ChildCon
}
// NO trailing slash.
- private static String containerPrefix() { return "/plugins/fniki.plugin.Fniki"; }
+ private static String containerPrefix() { return "/plugins/fniki.freenet.plugin.Fniki"; }
////////////////////////////////////////////////////////////
// Wiki context implementations.
diff --git a/src/fniki/wiki/child/WikiContainer.java b/src/fniki/wiki/child/WikiContainer.java
--- a/src/fniki/wiki/child/WikiContainer.java
+++ b/src/fniki/wiki/child/WikiContainer.java
@@ -197,7 +197,7 @@ public class WikiContainer implements Ch
buffer.append(makeLocalLink(context, "fniki/getversions", "confirm", "Discover"));
buffer.append(" other recent version.<br>");
-
+ buffer.append("<a href=\"http://google.com\">Google</a>");
buffer.append("</body></html>");
}