summaryrefslogtreecommitdiff
path: root/Sources/com/ashardalon
diff options
context:
space:
mode:
Diffstat (limited to 'Sources/com/ashardalon')
-rw-r--r--Sources/com/ashardalon/pagic/Application.java24
-rw-r--r--Sources/com/ashardalon/pagic/DirectAction.java19
-rw-r--r--Sources/com/ashardalon/pagic/Session.java10
-rw-r--r--Sources/com/ashardalon/pagic/components/Main.java11
-rw-r--r--Sources/com/ashardalon/pagic/rest/controllers/BaseRestController.java43
-rw-r--r--Sources/com/ashardalon/pagic/rest/controllers/PagesController.java28
6 files changed, 135 insertions, 0 deletions
diff --git a/Sources/com/ashardalon/pagic/Application.java b/Sources/com/ashardalon/pagic/Application.java
new file mode 100644
index 0000000..374d2dd
--- /dev/null
+++ b/Sources/com/ashardalon/pagic/Application.java
@@ -0,0 +1,24 @@
+package com.ashardalon.pagic;
+
+import er.extensions.appserver.ERXApplication;
+import er.rest.routes.ERXRoute;
+import er.rest.routes.ERXRouteRequestHandler;
+import com.ashardalon.pagic.components.Main;
+import com.ashardalon.pagic.rest.controllers.PagesController;
+
+public class Application extends ERXApplication {
+ public static void main(String[] argv) {
+ ERXApplication.main(argv, Application.class);
+ }
+
+ public Application() {
+ ERXApplication.log.info("Welcome to " + name() + " !");
+ /* ** put your initialization code in here ** */
+ setAllowsConcurrentRequestHandling(true);
+
+ ERXRouteRequestHandler restRequestHandler = new ERXRouteRequestHandler();
+ restRequestHandler.insertRoute(new ERXRoute("Pages", "", ERXRoute.Method.Get, PagesController.class, "mainPage"));
+ ERXRouteRequestHandler.register(restRequestHandler);
+ setDefaultRequestHandler(restRequestHandler);
+ }
+} \ No newline at end of file
diff --git a/Sources/com/ashardalon/pagic/DirectAction.java b/Sources/com/ashardalon/pagic/DirectAction.java
new file mode 100644
index 0000000..616afcb
--- /dev/null
+++ b/Sources/com/ashardalon/pagic/DirectAction.java
@@ -0,0 +1,19 @@
+package com.ashardalon.pagic;
+
+import com.webobjects.appserver.WOActionResults;
+import com.webobjects.appserver.WORequest;
+
+import er.extensions.appserver.ERXDirectAction;
+
+import com.ashardalon.pagic.components.Main;
+
+public class DirectAction extends ERXDirectAction {
+ public DirectAction(WORequest request) {
+ super(request);
+ }
+
+ @Override
+ public WOActionResults defaultAction() {
+ return pageWithName(Main.class.getName());
+ }
+}
diff --git a/Sources/com/ashardalon/pagic/Session.java b/Sources/com/ashardalon/pagic/Session.java
new file mode 100644
index 0000000..c4ebc04
--- /dev/null
+++ b/Sources/com/ashardalon/pagic/Session.java
@@ -0,0 +1,10 @@
+package com.ashardalon.pagic;
+
+import er.extensions.appserver.ERXSession;
+
+public class Session extends ERXSession {
+ private static final long serialVersionUID = 1L;
+
+ public Session() {
+ }
+}
diff --git a/Sources/com/ashardalon/pagic/components/Main.java b/Sources/com/ashardalon/pagic/components/Main.java
new file mode 100644
index 0000000..f64be1d
--- /dev/null
+++ b/Sources/com/ashardalon/pagic/components/Main.java
@@ -0,0 +1,11 @@
+package com.ashardalon.pagic.components;
+
+import com.webobjects.appserver.WOContext;
+
+import er.extensions.components.ERXComponent;
+
+public class Main extends ERXComponent {
+ public Main(WOContext context) {
+ super(context);
+ }
+}
diff --git a/Sources/com/ashardalon/pagic/rest/controllers/BaseRestController.java b/Sources/com/ashardalon/pagic/rest/controllers/BaseRestController.java
new file mode 100644
index 0000000..a69d784
--- /dev/null
+++ b/Sources/com/ashardalon/pagic/rest/controllers/BaseRestController.java
@@ -0,0 +1,43 @@
+package com.ashardalon.pagic.rest.controllers;
+
+import com.webobjects.appserver.WOActionResults;
+import com.webobjects.appserver.WORequest;
+
+import er.extensions.appserver.ERXHttpStatusCodes;
+import er.rest.routes.ERXDefaultRouteController;
+
+public class BaseRestController extends ERXDefaultRouteController {
+
+ public BaseRestController(WORequest request) {
+ super(request);
+ }
+
+ public WOActionResults updateAction() throws Throwable {
+ return errorResponse(ERXHttpStatusCodes.METHOD_NOT_ALLOWED);
+ }
+
+ public WOActionResults createAction() throws Throwable {
+ return errorResponse(ERXHttpStatusCodes.METHOD_NOT_ALLOWED);
+ }
+
+ @Override
+ public WOActionResults newAction() throws Throwable {
+ return errorResponse(ERXHttpStatusCodes.METHOD_NOT_ALLOWED);
+ }
+
+ @Override
+ public WOActionResults destroyAction() throws Throwable {
+ return errorResponse(ERXHttpStatusCodes.METHOD_NOT_ALLOWED);
+ }
+
+ @Override
+ public WOActionResults showAction() throws Throwable {
+ return errorResponse(ERXHttpStatusCodes.METHOD_NOT_ALLOWED);
+ }
+
+ @Override
+ public WOActionResults indexAction() throws Throwable {
+ return errorResponse(ERXHttpStatusCodes.METHOD_NOT_ALLOWED);
+ }
+
+}
diff --git a/Sources/com/ashardalon/pagic/rest/controllers/PagesController.java b/Sources/com/ashardalon/pagic/rest/controllers/PagesController.java
new file mode 100644
index 0000000..29ccc5f
--- /dev/null
+++ b/Sources/com/ashardalon/pagic/rest/controllers/PagesController.java
@@ -0,0 +1,28 @@
+package com.ashardalon.pagic.rest.controllers;
+
+import com.ashardalon.pagic.components.Main;
+
+import com.webobjects.appserver.WOActionResults;
+import com.webobjects.appserver.WORequest;
+
+import er.rest.format.ERXRestFormat;
+
+/**
+ * This controller is for content that is not EO entities driven, e.g. "static pages"
+*/
+public class PagesController extends BaseRestController {
+
+ public PagesController(WORequest request) {
+ super(request);
+ }
+
+ public WOActionResults mainPageAction() {
+ return pageWithName(Main.class);
+ }
+
+ @Override
+ protected ERXRestFormat defaultFormat() {
+ return ERXRestFormat.html();
+ }
+
+}