cziegeler 2003/08/19 07:09:34
Modified: src/blocks/portal/java/org/apache/cocoon/portal/util
CopletDataReferenceFieldHandler.java
ParameterFieldHandler.java
CopletInstanceDataFieldHandler.java
AspectDataFieldHandler.java
AttributesFieldHandler.java
CopletBaseDataReferenceFieldHandler.java
CopletDataFieldHandler.java
CopletInstanceDataReferenceFieldHandler.java
ConfigurationFieldHandler.java
CopletBaseDataFieldHandler.java
ReferenceFieldHandler.java
src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl
CompositeContentAspect.java WindowAspect.java
DefaultCopletAspect.java TabContentAspect.java
Added: src/blocks/portal/java/org/apache/cocoon/portal/util
AbstractFieldHandler.java
Log:
Removing use of deprecated code; removing duplicate code
Revision Changes Path
1.4 +1 -4
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletDataReferenceFieldHandler.java
Index: CopletDataReferenceFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletDataReferenceFieldHandler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- CopletDataReferenceFieldHandler.java 10 Jul 2003 13:16:56 -0000 1.3
+++ CopletDataReferenceFieldHandler.java 19 Aug 2003 14:09:34 -0000 1.4
@@ -62,9 +62,6 @@
*/
public class CopletDataReferenceFieldHandler extends ReferenceFieldHandler {
- public void checkValidity(Object object) {
- }
-
public Object getValue(Object object) {
CopletData copletData = ((CopletInstanceData) object).getCopletData();
if (copletData != null) {
1.4 +2 -6
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/ParameterFieldHandler.java
Index: ParameterFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/ParameterFieldHandler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ParameterFieldHandler.java 10 Jul 2003 13:16:55 -0000 1.3
+++ ParameterFieldHandler.java 19 Aug 2003 14:09:34 -0000 1.4
@@ -55,7 +55,6 @@
import java.util.Map;
import org.apache.cocoon.portal.layout.Parameters;
-import org.exolab.castor.mapping.FieldHandler;
import org.exolab.castor.mapping.MapItem;
/**
@@ -65,11 +64,8 @@
*
* @version CVS $Id$
*/
-public class ParameterFieldHandler implements FieldHandler {
+public class ParameterFieldHandler extends AbstractFieldHandler {
- public void checkValidity(Object object) {
- }
-
public Object getValue(Object object) {
HashMap map = new HashMap();
Iterator iterator =
1.4 +2 -6
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletInstanceDataFieldHandler.java
Index: CopletInstanceDataFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletInstanceDataFieldHandler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- CopletInstanceDataFieldHandler.java 10 Jul 2003 13:16:56 -0000 1.3
+++ CopletInstanceDataFieldHandler.java 19 Aug 2003 14:09:34 -0000 1.4
@@ -56,7 +56,6 @@
import org.apache.cocoon.portal.coplet.CopletInstanceData;
import org.apache.cocoon.portal.profile.impl.CopletInstanceDataManager;
-import org.exolab.castor.mapping.FieldHandler;
/**
* Field handler for CopletInstanceData instances.
@@ -65,10 +64,7 @@
*
* @version CVS $Id$
*/
-public class CopletInstanceDataFieldHandler implements FieldHandler {
-
- public void checkValidity(Object object) {
- }
+public class CopletInstanceDataFieldHandler extends AbstractFieldHandler {
public Object getValue(Object object) {
Map map = ((CopletInstanceDataManager) object).getCopletInstanceData();
1.4 +4 -6
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/AspectDataFieldHandler.java
Index: AspectDataFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/AspectDataFieldHandler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- AspectDataFieldHandler.java 10 Jul 2003 13:16:55 -0000 1.3
+++ AspectDataFieldHandler.java 19 Aug 2003 14:09:34 -0000 1.4
@@ -55,7 +55,6 @@
import java.util.Map;
import org.apache.cocoon.portal.aspect.Aspectalizable;
-import org.exolab.castor.mapping.FieldHandler;
/**
* Field handler for aspects of an Aspectizable object.
@@ -64,11 +63,8 @@
*
* @version CVS $Id$
*/
-public class AspectDataFieldHandler implements FieldHandler {
+public class AspectDataFieldHandler extends AbstractFieldHandler {
- public void checkValidity(Object object) {
- }
-
public Object getValue(Object object) {
HashMap map = new HashMap();
Iterator iterator;
@@ -102,4 +98,6 @@
(String) item.getKey(),
item.getValue());
}
+
+
}
1.5 +2 -6
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/AttributesFieldHandler.java
Index: AttributesFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/AttributesFieldHandler.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- AttributesFieldHandler.java 10 Jul 2003 13:16:55 -0000 1.4
+++ AttributesFieldHandler.java 19 Aug 2003 14:09:34 -0000 1.5
@@ -56,7 +56,6 @@
import org.apache.cocoon.portal.coplet.CopletData;
import org.apache.cocoon.portal.coplet.CopletInstanceData;
-import org.exolab.castor.mapping.FieldHandler;
import org.exolab.castor.mapping.MapItem;
/**
@@ -69,10 +68,7 @@
*
* @version CVS $Id$
*/
-public class AttributesFieldHandler implements FieldHandler {
-
- public void checkValidity(Object object) {
- }
+public class AttributesFieldHandler extends AbstractFieldHandler {
protected Map getAttributes(Object object) {
if (object instanceof CopletData) {
1.4 +1 -4
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletBaseDataReferenceFieldHandler.java
Index: CopletBaseDataReferenceFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletBaseDataReferenceFieldHandler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- CopletBaseDataReferenceFieldHandler.java 10 Jul 2003 13:16:56 -0000 1.3
+++ CopletBaseDataReferenceFieldHandler.java 19 Aug 2003 14:09:34 -0000 1.4
@@ -63,9 +63,6 @@
public class CopletBaseDataReferenceFieldHandler
extends ReferenceFieldHandler {
- public void checkValidity(Object object) {
- }
-
public Object getValue(Object object) {
CopletBaseData copletBaseData =
((CopletData) object).getCopletBaseData();
1.4 +2 -6
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletDataFieldHandler.java
Index: CopletDataFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletDataFieldHandler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- CopletDataFieldHandler.java 10 Jul 2003 13:16:55 -0000 1.3
+++ CopletDataFieldHandler.java 19 Aug 2003 14:09:34 -0000 1.4
@@ -56,7 +56,6 @@
import org.apache.cocoon.portal.coplet.CopletData;
import org.apache.cocoon.portal.profile.impl.CopletDataManager;
-import org.exolab.castor.mapping.FieldHandler;
/**
* Field handler for CopletData instances.
@@ -65,10 +64,7 @@
*
* @version CVS $Id$
*/
-public class CopletDataFieldHandler implements FieldHandler {
-
- public void checkValidity(Object object) {
- }
+public class CopletDataFieldHandler extends AbstractFieldHandler {
public Object getValue(Object object) {
Map map = ((CopletDataManager) object).getCopletData();
1.3 +1 -4
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletInstanceDataReferenceFieldHandler.java
Index: CopletInstanceDataReferenceFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletInstanceDataReferenceFieldHandler.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- CopletInstanceDataReferenceFieldHandler.java 10 Jul 2003 13:16:56 -0000
1.2
+++ CopletInstanceDataReferenceFieldHandler.java 19 Aug 2003 14:09:34 -0000
1.3
@@ -63,9 +63,6 @@
public class CopletInstanceDataReferenceFieldHandler
extends ReferenceFieldHandler {
- public void checkValidity(Object object) {
- }
-
public Object getValue(Object object) {
CopletInstanceData copletInstanceData =
((CopletLayout)object).getCopletInstanceData();
if (copletInstanceData != null) {
1.4 +2 -6
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/ConfigurationFieldHandler.java
Index: ConfigurationFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/ConfigurationFieldHandler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ConfigurationFieldHandler.java 10 Jul 2003 13:16:56 -0000 1.3
+++ ConfigurationFieldHandler.java 19 Aug 2003 14:09:34 -0000 1.4
@@ -55,7 +55,6 @@
import java.util.Map;
import org.apache.cocoon.portal.coplet.CopletBaseData;
-import org.exolab.castor.mapping.FieldHandler;
import org.exolab.castor.mapping.MapItem;
/**
@@ -65,11 +64,8 @@
*
* @version CVS $Id$
*/
-public class ConfigurationFieldHandler implements FieldHandler {
+public class ConfigurationFieldHandler extends AbstractFieldHandler {
- public void checkValidity(Object object) {
- }
-
public Object getValue(Object object) {
HashMap map = new HashMap();
Iterator iterator =
1.4 +2 -6
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletBaseDataFieldHandler.java
Index: CopletBaseDataFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/CopletBaseDataFieldHandler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- CopletBaseDataFieldHandler.java 10 Jul 2003 13:16:56 -0000 1.3
+++ CopletBaseDataFieldHandler.java 19 Aug 2003 14:09:34 -0000 1.4
@@ -56,7 +56,6 @@
import org.apache.cocoon.portal.coplet.CopletBaseData;
import org.apache.cocoon.portal.profile.impl.CopletBaseDataManager;
-import org.exolab.castor.mapping.FieldHandler;
/**
* Field handler for CopletBaseData instances.
@@ -65,10 +64,7 @@
*
* @version CVS $Id$
*/
-public class CopletBaseDataFieldHandler implements FieldHandler {
-
- public void checkValidity(Object object) {
- }
+public class CopletBaseDataFieldHandler extends AbstractFieldHandler {
public Object getValue(Object object) {
Map map = ((CopletBaseDataManager) object).getCopletBaseData();
1.4 +2 -4
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/ReferenceFieldHandler.java
Index: ReferenceFieldHandler.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/ReferenceFieldHandler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ReferenceFieldHandler.java 10 Jul 2003 13:16:56 -0000 1.3
+++ ReferenceFieldHandler.java 19 Aug 2003 14:09:34 -0000 1.4
@@ -53,8 +53,6 @@
import java.util.HashMap;
import java.util.Map;
-import org.exolab.castor.mapping.FieldHandler;
-
/**
* Field handler superclass for external references.
*
@@ -62,7 +60,7 @@
*
* @version CVS $Id$
*/
-public abstract class ReferenceFieldHandler implements FieldHandler {
+public abstract class ReferenceFieldHandler extends AbstractFieldHandler {
/**
* Used to pass resolvable objects to the field handler.
*/
1.1
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/util/AbstractFieldHandler.java
Index: AbstractFieldHandler.java
===================================================================
/*
============================================================================
The Apache Software License, Version 1.1
============================================================================
Copyright (C) 1999-2002 The Apache Software Foundation. All rights reserved.
Redistribution and use in source and binary forms, with or without modifica-
tion, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. The end-user documentation included with the redistribution, if any, must
include the following acknowledgment: "This product includes software
developed by the Apache Software Foundation (http://www.apache.org/)."
Alternately, this acknowledgment may appear in the software itself, if
and wherever such third-party acknowledgments normally appear.
4. The names "Apache Cocoon" and "Apache Software Foundation" must not be
used to endorse or promote products derived from this software without
prior written permission. For written permission, please contact
[EMAIL PROTECTED]
5. Products derived from this software may not be called "Apache", nor may
"Apache" appear in their name, without prior written permission of the
Apache Software Foundation.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This software consists of voluntary contributions made by many individuals
on behalf of the Apache Software Foundation and was originally created by
Stefano Mazzocchi <[EMAIL PROTECTED]>. For more information on the Apache
Software Foundation, please see <http://www.apache.org/>.
*/
package org.apache.cocoon.portal.util;
/**
* Base field handler implementation
*
* @author <a href="mailto:[EMAIL PROTECTED]">Carsten Ziegeler</a>
* @version CVS $Id: AbstractFieldHandler.java,v 1.1 2003/08/19 14:09:34 cziegeler
Exp $
*/
public abstract class AbstractFieldHandler
extends org.exolab.castor.mapping.AbstractFieldHandler {
/* (non-Javadoc)
* @see
org.exolab.castor.mapping.ExtendedFieldHandler#newInstance(java.lang.Object,
java.lang.Object[])
*/
public Object newInstance(Object arg0, Object[] arg1)
throws IllegalStateException {
if ( arg1 == null ) {
return this.newInstance(arg0);
}
throw new IllegalStateException("Construction is not supported.");
}
}
1.4 +2 -9
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/CompositeContentAspect.java
Index: CompositeContentAspect.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/CompositeContentAspect.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- CompositeContentAspect.java 15 Jun 2003 16:56:09 -0000 1.3
+++ CompositeContentAspect.java 19 Aug 2003 14:09:34 -0000 1.4
@@ -85,14 +85,7 @@
throws SAXException {
PreparedConfiguration config =
(PreparedConfiguration)context.getAspectConfiguration();
- AttributesImpl attributes = new AttributesImpl();
- Map parameter = layout.getParameters();
- Map.Entry entry;
- for (Iterator iter = parameter.entrySet().iterator(); iter.hasNext();) {
- entry = (Map.Entry) iter.next();
- attributes.addCDATAAttribute((String)entry.getKey(),
(String)entry.getValue());
- }
- XMLUtils.startElement(handler, config.tagName, attributes);
+ XMLUtils.startElement(handler, config.tagName);
super.toSAX(context, layout, service, handler);
XMLUtils.endElement(handler, config.tagName);
1.5 +2 -13
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/WindowAspect.java
Index: WindowAspect.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/WindowAspect.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- WindowAspect.java 17 Jun 2003 20:10:39 -0000 1.4
+++ WindowAspect.java 19 Aug 2003 14:09:34 -0000 1.5
@@ -50,9 +50,6 @@
*/
package org.apache.cocoon.portal.layout.renderer.aspect.impl;
-import java.util.Iterator;
-import java.util.Map;
-
import org.apache.avalon.framework.parameters.ParameterException;
import org.apache.avalon.framework.parameters.Parameters;
import org.apache.cocoon.portal.PortalService;
@@ -60,7 +57,6 @@
import org.apache.cocoon.portal.layout.Layout;
import org.apache.cocoon.portal.layout.impl.CopletLayout;
import org.apache.cocoon.portal.layout.renderer.aspect.RendererAspectContext;
-import org.apache.cocoon.xml.AttributesImpl;
import org.apache.cocoon.xml.XMLUtils;
import org.xml.sax.ContentHandler;
import org.xml.sax.SAXException;
@@ -85,14 +81,7 @@
final PreparedConfiguration config =
(PreparedConfiguration)context.getAspectConfiguration();
final CopletInstanceData copletInstanceData =
((CopletLayout)layout).getCopletInstanceData();
- AttributesImpl attributes = new AttributesImpl();
- Map parameter = layout.getParameters();
- Map.Entry entry;
- for (Iterator iter = parameter.entrySet().iterator(); iter.hasNext();)
{
- entry = (Map.Entry) iter.next();
- attributes.addCDATAAttribute((String)entry.getKey(),
(String)entry.getValue());
- }
- XMLUtils.startElement(contenthandler, config.tagName, attributes);
+ XMLUtils.startElement(contenthandler, config.tagName);
XMLUtils.createElement(contenthandler, "title",
copletInstanceData.getCopletData().getTitle());
context.invokeNext( layout, service, contenthandler );
1.2 +2 -2
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/DefaultCopletAspect.java
Index: DefaultCopletAspect.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/DefaultCopletAspect.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- DefaultCopletAspect.java 7 May 2003 06:22:22 -0000 1.1
+++ DefaultCopletAspect.java 19 Aug 2003 14:09:34 -0000 1.2
@@ -93,7 +93,7 @@
copletAdapter = (CopletAdapter) adapterSelector.select(adapterName);
copletAdapter.toSAX(cid, new IncludeXMLConsumer(handler));
} catch (ComponentException ce) {
- throw new SAXException("Exception", ce);
+ throw new SAXException("Unable to lookup component.", ce);
} finally {
if (null != copletAdapter) {
adapterSelector.release(copletAdapter);
1.10 +28 -44
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/TabContentAspect.java
Index: TabContentAspect.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/TabContentAspect.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- TabContentAspect.java 18 Jul 2003 14:41:44 -0000 1.9
+++ TabContentAspect.java 19 Aug 2003 14:09:34 -0000 1.10
@@ -52,9 +52,7 @@
import java.util.Collections;
import java.util.Iterator;
-import java.util.Map;
-import org.apache.avalon.framework.component.ComponentException;
import org.apache.avalon.framework.parameters.ParameterException;
import org.apache.avalon.framework.parameters.Parameters;
import org.apache.cocoon.portal.PortalService;
@@ -90,50 +88,36 @@
if (layout instanceof CompositeLayout) {
TabPreparedConfiguration config =
(TabPreparedConfiguration)context.getAspectConfiguration();
+ XMLUtils.startElement(handler, config.tagName);
+
AttributesImpl attributes = new AttributesImpl();
- Map parameter = layout.getParameters();
- Map.Entry entry;
- for (Iterator iter = parameter.entrySet().iterator();
iter.hasNext();) {
- entry = (Map.Entry) iter.next();
- attributes.addCDATAAttribute((String)entry.getKey(),
(String)entry.getValue());
- }
- XMLUtils.startElement(handler, config.tagName, attributes);
-
- PortalService portalService = null;
- try {
- portalService = (PortalService)
this.manager.lookup(PortalService.ROLE);
- attributes = new AttributesImpl();
- CompositeLayout tabLayout = (CompositeLayout) layout;
-
- // selected tab
- Integer data = (Integer) layout.getAspectData(config.aspectName);
- int selected = data.intValue();
-
- // loop over all tabs
- for (int j = 0; j < tabLayout.getSize(); j++) {
- NamedItem tab = (NamedItem) tabLayout.getItem(j);
-
- // open named-item tag
- attributes.clear();
- attributes.addCDATAAttribute("name",
String.valueOf(tab.getName()));
- if (j == selected) {
- attributes.addCDATAAttribute("selected", "true");
- } else {
- ChangeAspectDataEvent event = new
ChangeAspectDataEvent(tabLayout, "tab", new Integer(j));
- attributes.addCDATAAttribute("parameter",
portalService.getComponentManager().getLinkService().getLinkURI(event));
- }
- XMLUtils.startElement(handler, "named-item", attributes);
- if (j == selected) {
- this.processLayout(tab.getLayout(), service, handler);
- }
- // close named-item tag
- XMLUtils.endElement(handler, "named-item");
+ CompositeLayout tabLayout = (CompositeLayout) layout;
+
+ // selected tab
+ Integer data = (Integer) layout.getAspectData(config.aspectName);
+ int selected = data.intValue();
+
+ // loop over all tabs
+ for (int j = 0; j < tabLayout.getSize(); j++) {
+ NamedItem tab = (NamedItem) tabLayout.getItem(j);
+
+ // open named-item tag
+ attributes.clear();
+ attributes.addCDATAAttribute("name", String.valueOf(tab.getName()));
+ if (j == selected) {
+ attributes.addCDATAAttribute("selected", "true");
+ } else {
+ ChangeAspectDataEvent event = new
ChangeAspectDataEvent(tabLayout, "tab", new Integer(j));
+ attributes.addCDATAAttribute("parameter",
service.getComponentManager().getLinkService().getLinkURI(event));
}
- } catch (ComponentException ce) {
- throw new SAXException("Unable to lookup event manager.", ce);
- } finally {
- this.manager.release(portalService);
+ XMLUtils.startElement(handler, "named-item", attributes);
+ if (j == selected) {
+ this.processLayout(tab.getLayout(), service, handler);
+ }
+ // close named-item tag
+ XMLUtils.endElement(handler, "named-item");
}
+
XMLUtils.endElement(handler, config.tagName);
} else {
throw new SAXException("Wrong layout type, TabLayout expected: " +
layout.getClass().getName());