summaryrefslogtreecommitdiff
path: root/wotonomy-test
diff options
context:
space:
mode:
authorBenjamin Culkin <scorpress@gmail.com>2024-05-19 17:56:33 -0400
committerBenjamin Culkin <scorpress@gmail.com>2024-05-19 17:56:33 -0400
commitaedc34d55462a75e329bbf342251ff6504cd117e (patch)
treebcc8f1f2352582717b484df302aeea6696b8f000 /wotonomy-test
Initial import from SVN
Diffstat (limited to 'wotonomy-test')
-rw-r--r--wotonomy-test/WEB-INF/classes/Application.java14
-rw-r--r--wotonomy-test/WEB-INF/classes/DirectAction.java71
-rw-r--r--wotonomy-test/WEB-INF/classes/Main.java54
-rw-r--r--wotonomy-test/WEB-INF/classes/Main.wo/Main.html22
-rw-r--r--wotonomy-test/WEB-INF/classes/Main.wo/Main.wod22
-rw-r--r--wotonomy-test/WEB-INF/classes/OtherAction.java21
-rw-r--r--wotonomy-test/WEB-INF/classes/Session.java10
-rw-r--r--wotonomy-test/WEB-INF/web.xml17
-rw-r--r--wotonomy-test/build.xml66
9 files changed, 297 insertions, 0 deletions
diff --git a/wotonomy-test/WEB-INF/classes/Application.java b/wotonomy-test/WEB-INF/classes/Application.java
new file mode 100644
index 0000000..815e210
--- /dev/null
+++ b/wotonomy-test/WEB-INF/classes/Application.java
@@ -0,0 +1,14 @@
+// Decompiled by Jad v1.5.8c. Copyright 2001 Pavel Kouznetsov.
+// Jad home page: http://www.geocities.com/kpdus/jad.html
+// Decompiler options: packimports(3) fieldsfirst nonlb space
+// Source File Name: Application.java
+
+import java.io.PrintStream;
+import net.wotonomy.web.WOApplication;
+
+public class Application extends WOApplication {
+
+ public Application() {
+ System.out.println("Application()");
+ }
+}
diff --git a/wotonomy-test/WEB-INF/classes/DirectAction.java b/wotonomy-test/WEB-INF/classes/DirectAction.java
new file mode 100644
index 0000000..f5dc851
--- /dev/null
+++ b/wotonomy-test/WEB-INF/classes/DirectAction.java
@@ -0,0 +1,71 @@
+
+import java.io.PrintStream;
+import java.util.Date;
+import net.wotonomy.foundation.NSArray;
+import net.wotonomy.foundation.NSDictionary;
+import net.wotonomy.web.*;
+
+public class DirectAction extends WODirectAction {
+
+ private Date testing;
+
+ public DirectAction(WORequest aRequest) {
+ super(aRequest);
+ testing = new Date();
+ System.out.println("DirectAction()");
+ }
+
+ public WOActionResults defaultAction() {
+ return pageWithName("Main");
+ }
+
+ public Object getTesting() {
+ return testing;
+ }
+
+ public void setTesting(Date anObject) {
+ testing = anObject;
+ }
+
+ public WOActionResults testAction() {
+ System.out.println("DirectAction.testAction()");
+ takeFormValuesForKeyArray(request().formValues().allKeys());
+ WOResponse response = new WOResponse();
+ response.appendContentString("This is really just a test.");
+ response.appendContentString("<p>");
+ response.appendContentString(Application.application().name());
+ response.appendContentString("<p>");
+ response.appendContentHTMLString("<p>");
+ response.appendContentString("<p>");
+ response.appendContentString(getTesting().toString());
+ response.appendContentString("<p>");
+ response.appendContentString(request().formValues().toString());
+ response.appendContentString("<p>");
+ response.appendContentString("browserLanguages: ");
+ response.appendContentString(request().browserLanguages().toString());
+ response.appendContentString("<p>");
+ response.appendContentString("uri: ");
+ response.appendContentString(request().uri().toString());
+ response.appendContentString("<p>");
+ response.appendContentString("adaptorPrefix: ");
+ response.appendContentString(request().adaptorPrefix().toString());
+ response.appendContentString("<p>");
+ response.appendContentString("applicationName: ");
+ response.appendContentString(request().applicationName().toString());
+ response.appendContentString("<p>");
+ response.appendContentString("requestHandlerKey: ");
+ response.appendContentString(request().requestHandlerKey().toString());
+ response.appendContentString("<p>");
+ response.appendContentString("requestHandlerPath: ");
+ response.appendContentString(request().requestHandlerPath().toString());
+ response.appendContentString("<p>");
+ response.appendContentString("requestHandlerPathArray: ");
+ response.appendContentString(request().requestHandlerPathArray().toString());
+ response.appendContentString("<p>");
+ response.appendContentString("method: ");
+ response.appendContentString(request().method().toString());
+ response.appendContentString("<p>");
+ response.appendContentString("content: ");
+ return response;
+ }
+}
diff --git a/wotonomy-test/WEB-INF/classes/Main.java b/wotonomy-test/WEB-INF/classes/Main.java
new file mode 100644
index 0000000..a12ca44
--- /dev/null
+++ b/wotonomy-test/WEB-INF/classes/Main.java
@@ -0,0 +1,54 @@
+import net.wotonomy.foundation.NSDate;
+import net.wotonomy.web.*;
+
+public class Main extends WOComponent {
+
+ private boolean showing;
+ private String textFieldValue;
+
+ public Main() {
+ super();
+ showing = true;
+ }
+
+ public NSDate getCurrentTime() {
+ return new NSDate();
+ }
+
+ public boolean getShowTime() {
+ return showing;
+ }
+ public void setShowTime(boolean value) {
+ showing = value;
+ }
+
+ public WOActionResults submit() {
+ System.out.println("Form Submitted");
+ System.out.println("textfield says '" + getTextValue() + "'");
+ return null;
+ }
+
+ public void takeValuesFromRequest(WORequest r, WOContext c) {
+ System.out.println("taking values from request");
+ if (r.formValueForKey("show") != null)
+ setShowTime(r.formValueForKey("show").equals("true"));
+ }
+
+ public String getTimeLinkString() {
+ return showing ? "Hide the time display" : "Show time display";
+ }
+
+ public void setTextValue(String value) {
+ textFieldValue = value;
+ }
+ public String getTextValue() {
+ return textFieldValue;
+ }
+
+ public WOComponent switchTime() {
+ System.out.println("switching time display");
+ setShowTime(!getShowTime());
+ return this;
+ }
+
+}
diff --git a/wotonomy-test/WEB-INF/classes/Main.wo/Main.html b/wotonomy-test/WEB-INF/classes/Main.wo/Main.html
new file mode 100644
index 0000000..6729a94
--- /dev/null
+++ b/wotonomy-test/WEB-INF/classes/Main.wo/Main.html
@@ -0,0 +1,22 @@
+<HTML>
+<HEAD><TITLE>MyTest</TITLE></HEAD>
+<BODY>
+
+<WEBOBJECT NAME=showTime>
+The time is <WEBOBJECT NAME=time></WEBOBJECT>.
+<BR><BR>
+</WEBOBJECT>
+<WEBOBJECT NAME=timeLink></WEBOBJECT>
+
+<WEBOBJECT NAME=FORM>
+Here's a textfield: <WEBOBJECT NAME=textfield></WEBOBJECT>
+<WEBOBJECT NAME=submit></WEBOBJECT>
+</WEBOBJECT>
+
+<BR><BR>
+Here's a link to an <WEBOBJECT NAME=EXTLINK>external site</WEBOBJECT>.
+<BR>
+And here's a link to a <WEBOBJECT NAME=DIRLINK>direct action</WEBOBJECT>.
+
+</BODY>
+</HTML>
diff --git a/wotonomy-test/WEB-INF/classes/Main.wo/Main.wod b/wotonomy-test/WEB-INF/classes/Main.wo/Main.wod
new file mode 100644
index 0000000..16bd25e
--- /dev/null
+++ b/wotonomy-test/WEB-INF/classes/Main.wo/Main.wod
@@ -0,0 +1,22 @@
+<HTML>
+<HEAD><TITLE>MyTest</TITLE></HEAD>
+<BODY>
+
+<WEBOBJECT NAME=showTime>
+The time is <WEBOBJECT NAME=time></WEBOBJECT>.
+<BR><BR>
+</WEBOBJECT>
+<WEBOBJECT NAME=timeLink></WEBOBJECT>
+
+<WEBOBJECT NAME=FORM>
+Here's a textfield: <WEBOBJECT NAME=textfield></WEBOBJECT>
+<WEBOBJECT NAME=submit></WEBOBJECT>
+</WEBOBJECT>
+
+<BR><BR>
+Here's a link to an <WEBOBJECT NAME=EXTLINK>external site</WEBOBJECT>.
+<BR>
+And here's a link to a <WEBOBJECT NAME=DIRLINK>direct action</WEBOBJECT> (not implemented yet).
+
+</BODY>
+</HTML>
diff --git a/wotonomy-test/WEB-INF/classes/OtherAction.java b/wotonomy-test/WEB-INF/classes/OtherAction.java
new file mode 100644
index 0000000..00a3155
--- /dev/null
+++ b/wotonomy-test/WEB-INF/classes/OtherAction.java
@@ -0,0 +1,21 @@
+//A direct action subclass, with only one method
+//that gets called from Main.wo
+
+import net.wotonomy.foundation.*;
+import net.wotonomy.web.*;
+
+public class OtherAction extends WODirectAction {
+
+ public OtherAction(WORequest r) {
+ super(r);
+ }
+
+ public WOActionResults linkTestAction() {
+ System.out.println("creating and configuring Main.wo");
+ WOComponent page = pageWithName("Main");
+ page.takeValueForKey(new Boolean(false), "showTime");
+ page.takeValueForKey("direct action called", "textValue");
+ return page;
+ }
+
+}
diff --git a/wotonomy-test/WEB-INF/classes/Session.java b/wotonomy-test/WEB-INF/classes/Session.java
new file mode 100644
index 0000000..e3e9de7
--- /dev/null
+++ b/wotonomy-test/WEB-INF/classes/Session.java
@@ -0,0 +1,10 @@
+//Empty session file
+
+import net.wotonomy.web.WOSession;
+
+public class Session extends WOSession {
+
+ public Session() {
+ }
+
+}
diff --git a/wotonomy-test/WEB-INF/web.xml b/wotonomy-test/WEB-INF/web.xml
new file mode 100644
index 0000000..b505b52
--- /dev/null
+++ b/wotonomy-test/WEB-INF/web.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<!DOCTYPE web-app
+ PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
+ "http://java.sun.com/j2ee/dtds/web-app_2.2.dtd">
+
+<web-app>
+ <servlet>
+ <servlet-name>ApplicatonServlet</servlet-name>
+ <servlet-class>Application</servlet-class>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>ApplicatonServlet</servlet-name>
+ <url-pattern>/</url-pattern>
+ </servlet-mapping>
+</web-app>
diff --git a/wotonomy-test/build.xml b/wotonomy-test/build.xml
new file mode 100644
index 0000000..4104184
--- /dev/null
+++ b/wotonomy-test/build.xml
@@ -0,0 +1,66 @@
+<project name="wotonomy" default="all" basedir=".">
+
+ <!--
+ Sets the compiler property.
+ Options are "classic" or "modern" or "jikes".
+ -->
+ <property name="build.compiler" value="modern"/>
+
+ <!--
+ Builds the application.
+ Requires wotonomy.jar from the parent directory.
+ -->
+ <target name="all">
+ <javac srcdir="WEB-INF/classes" destdir="WEB-INF/classes" includes="**/*.java">
+ <classpath>
+ <pathelement location="../wotonomy.jar" />
+ <pathelement location="../lib/servlet.jar" />
+ </classpath>
+ </javac>
+ </target>
+
+ <target name="war">
+ <delete file="MyTest.woa.war"/>
+ <mkdir dir="WEB-INF/lib"/>
+ <copy file="../wotonomy.jar" todir="WEB-INF/lib"/>
+ <jar jarfile="MyTest.woa.war" basedir="."
+ includes="WEB-INF"/>
+ </target>
+
+ <!--
+ Builds an executable jar file containing
+ the license file, anything in the images
+ directory, and everything in net/wotonomy,
+ but excludes all .java source files.
+ -->
+ <target name="library">
+ <delete file="wotonomy.jar"/>
+ <jar jarfile="wotonomy.jar" basedir="."
+ manifest="manifest.txt"
+ includes="license.txt,net/**,images/**,com/**,gui/**,org/**"
+ excludes="**/*.java"/>
+ </target>
+
+ <!--
+ Deletes all class files in the wotonomy
+ directories, and any recognized temp files.
+ -->
+ <target name="clean">
+ <delete dir="." includes="**/*.class,**/*.~*"/>
+ </target>
+
+ <!--
+ Runs the test suite.
+ -->
+ <target name="run" depends="all">
+ <java classname="net.wotonomy.test.Test" fork="yes"
+ jvmargs="" args="-monitor" >
+ <classpath>
+ <pathelement location="." />
+ <pathelement location="lib/xp.jar" />
+ <pathelement location="lib/servlet.jar" />
+ </classpath>
+ </java>
+ </target>
+
+</project>