Skip to content
This repository was archived by the owner on Feb 18, 2025. It is now read-only.

Commit fd5d209

Browse files
committed
second drop of clojure-portlet (straight translation to clojure)
1 parent 8a2a32b commit fd5d209

File tree

3 files changed

+60
-35
lines changed

3 files changed

+60
-35
lines changed

Diff for: pom.xml

+39
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,40 @@
1111

1212
<build>
1313
<finalName>clojure-portlet</finalName>
14+
<plugins>
15+
<plugin>
16+
<groupId>org.codehaus.mojo</groupId>
17+
<artifactId>build-helper-maven-plugin</artifactId>
18+
<version>1.7</version>
19+
<executions>
20+
<execution>
21+
<id>add-source</id>
22+
<goals>
23+
<goal>add-source</goal>
24+
</goals>
25+
<configuration>
26+
<sources>
27+
<source>src/main/clojure</source>
28+
</sources>
29+
</configuration>
30+
</execution>
31+
</executions>
32+
</plugin>
33+
<plugin>
34+
<groupId>com.theoryinpractise</groupId>
35+
<artifactId>clojure-maven-plugin</artifactId>
36+
<version>1.3.10</version>
37+
<extensions>true</extensions>
38+
<executions>
39+
<execution>
40+
<id>compile</id>
41+
<goals>
42+
<goal>compile</goal>
43+
</goals>
44+
</execution>
45+
</executions>
46+
</plugin>
47+
</plugins>
1448
</build>
1549

1650
<dependencies>
@@ -20,6 +54,11 @@
2054
<version>2.0</version>
2155
<scope>provided</scope>
2256
</dependency>
57+
<dependency>
58+
<groupId>org.clojure</groupId>
59+
<artifactId>clojure</artifactId>
60+
<version>1.4.0</version>
61+
</dependency>
2362
</dependencies>
2463

2564
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
(ns au.com.permeance.clojure.clojure-portlet)
2+
3+
(gen-class
4+
:name au.com.permeance.clojure.ClojurePortlet
5+
:extends javax.portlet.GenericPortlet
6+
:main false
7+
:methods [[^{javax.portlet.ProcessAction {:name "clojure-action"}}
8+
processClojureAction [javax.portlet.ActionRequest javax.portlet.ActionResponse] void]
9+
10+
[^{javax.portlet.RenderMode {:name "view"}}
11+
processClojureRender [javax.portlet.RenderRequest javax.portlet.RenderResponse] void]])
12+
13+
(defn -processClojureAction [portlet request response]
14+
(. response setRenderParameter "message" "An action occurred"))
15+
16+
(defn -processClojureRender [portlet request response]
17+
(let [message (or (. request getParameter "message") "Nothing happened")]
18+
(. request setAttribute "message" message))
19+
(let [context (. portlet getPortletContext)
20+
dispatcher (. context getRequestDispatcher "/view.jsp")]
21+
(. dispatcher include request response)))

Diff for: src/main/java/au/com/permeance/clojure/ClojurePortlet.java

-35
This file was deleted.

0 commit comments

Comments
 (0)