You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by cz...@apache.org on 2003/12/08 15:24:14 UTC
cvs commit: cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/event/impl DefaultEventConverter.java
cziegeler 2003/12/08 06:24:14
Modified: src/blocks/portal/java/org/apache/cocoon/portal/event/impl
DefaultEventConverter.java
Log:
Convert the same event only once
Revision Changes Path
1.3 +19 -3 cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/event/impl/DefaultEventConverter.java
Index: DefaultEventConverter.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/event/impl/DefaultEventConverter.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- DefaultEventConverter.java 20 Oct 2003 13:36:42 -0000 1.2
+++ DefaultEventConverter.java 8 Dec 2003 14:24:14 -0000 1.3
@@ -86,6 +86,9 @@
this.manager = manager;
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.event.EventConverter#encode(org.apache.cocoon.portal.event.Event)
+ */
public String encode(Event event) {
PortalService service = null;
try {
@@ -95,8 +98,12 @@
list = new ArrayList();
service.setAttribute(ENCODE_LIST, list);
}
- list.add(event);
- return String.valueOf(list.size()-1);
+ int index = list.indexOf(event);
+ if ( index == -1 ) {
+ list.add(event);
+ index = list.size() - 1;
+ }
+ return String.valueOf(index);
} catch (ServiceException ce) {
throw new CascadingRuntimeException("Unable to lookup component.", ce);
} finally {
@@ -105,6 +112,9 @@
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.event.EventConverter#decode(java.lang.String)
+ */
public Event decode(String value) {
if (value != null) {
PortalService service = null;
@@ -126,6 +136,9 @@
return null;
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.event.EventConverter#start()
+ */
public void start() {
PortalService service = null;
try {
@@ -142,6 +155,9 @@
}
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.event.EventConverter#finish()
+ */
public void finish() {
PortalService service = null;
try {