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 2007/03/07 12:01:30 UTC
svn commit: r515531 - in /cocoon/trunk/blocks/cocoon-portal:
cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/support/
cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/
cocoon-portal-impl/src/m...
Author: cziegeler
Date: Wed Mar 7 03:01:28 2007
New Revision: 515531
URL: http://svn.apache.org/viewvc?view=rev&rev=515531
Log:
Add new interfaces for easier aspect handling
Added:
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/AspectChain.java (with props)
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/DynamicAspect.java (with props)
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/AspectChainImpl.java
- copied, changed from r515051, cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/AspectChain.java
Removed:
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/AspectChain.java
Modified:
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/support/RendererAspectChain.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/PortalManager.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/BasicAspectContext.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/ProfileManagerAspectContext.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/ResponseProcessorAspectContext.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/ProfileManagerAspectContextImpl.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/RequestProcessorAspectContextImpl.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/ResponseProcessorAspectContextImpl.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/BasicAspectContextImpl.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/impl/DefaultPortalManager.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/spring/AspectsBeanDefinitionParser.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/spring/RegistrationBeanPostProcessor.java
cocoon/trunk/blocks/cocoon-portal/cocoon-portal-portlet-impl/src/main/java/org/apache/cocoon/portal/pluto/adapter/PortletAdapter.java
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/support/RendererAspectChain.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/support/RendererAspectChain.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/support/RendererAspectChain.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/support/RendererAspectChain.java Wed Mar 7 03:01:28 2007
@@ -23,7 +23,7 @@
import org.apache.cocoon.portal.PortalException;
import org.apache.cocoon.portal.layout.renderer.aspect.RendererAspect;
-import org.apache.cocoon.portal.services.aspects.support.AspectChain;
+import org.apache.cocoon.portal.services.aspects.support.AspectChainImpl;
/**
* This chain holds all configured renderer aspects for one renderer.
@@ -41,7 +41,7 @@
*
* @version $Id$
*/
-public final class RendererAspectChain extends AspectChain {
+public final class RendererAspectChain extends AspectChainImpl {
/** The list of the configuration objects for each renderer aspects. */
protected List configs;
@@ -65,7 +65,7 @@
}
/**
- * @see org.apache.cocoon.portal.services.aspects.support.AspectChain#addAspect(java.lang.Object, java.util.Properties, int)
+ * @see org.apache.cocoon.portal.services.aspects.support.AspectChainImpl#addAspect(java.lang.Object, java.util.Properties, int)
*/
public void addAspect(Object aspect, Properties config, int index) throws PortalException {
if ( configs == null ) {
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java Wed Mar 7 03:01:28 2007
@@ -34,7 +34,7 @@
import org.apache.cocoon.portal.om.PortalUser;
import org.apache.cocoon.portal.profile.ProfileManager;
import org.apache.cocoon.portal.services.aspects.impl.support.ProfileManagerAspectContextImpl;
-import org.apache.cocoon.portal.services.aspects.support.AspectChain;
+import org.apache.cocoon.portal.services.aspects.support.AspectChainImpl;
import org.apache.cocoon.portal.util.AbstractBean;
import org.springframework.core.Ordered;
@@ -48,13 +48,13 @@
implements ProfileManager, Receiver, Ordered {
/** The chain for the configured profile manager aspects. */
- protected AspectChain chain;
+ protected AspectChainImpl chain;
/**
* Set the event chain.
* @param a A chain.
*/
- public void setAspectChain(AspectChain a) {
+ public void setAspectChain(AspectChainImpl a) {
this.chain = a;
}
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/PortalManager.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/PortalManager.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/PortalManager.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/PortalManager.java Wed Mar 7 03:01:28 2007
@@ -59,7 +59,7 @@
/**
* Render the portal.
* @param ch The content handler receiving the sax events.
- * @param Properties A properties object (can be null)
+ * @param properties A properties object (can be null)
* @throws SAXException
*/
void render(ContentHandler ch,
Added: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/AspectChain.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/AspectChain.java?view=auto&rev=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/AspectChain.java (added)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/AspectChain.java Wed Mar 7 03:01:28 2007
@@ -0,0 +1,47 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.cocoon.portal.services.aspects;
+
+import java.util.Iterator;
+import java.util.Properties;
+
+import org.apache.cocoon.portal.PortalException;
+
+/**
+ * Reusable implementation of an aspect chain.
+ *
+ * @since 2.2
+ * @version $Id$
+ */
+public interface AspectChain {
+
+ Properties EMPTY_PROPERTIES = new Properties();
+
+ Class getAspectClass();
+
+ void addAspect(Object aspect, Properties config)
+ throws PortalException;
+
+ void addAspect(Object aspect, Properties config, int index)
+ throws PortalException;
+
+ boolean hasAspects();
+
+ Iterator getAspectsIterator();
+
+ Iterator getPropertiesIterator();
+}
Propchange: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/AspectChain.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/AspectChain.java
------------------------------------------------------------------------------
svn:keywords = Id
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/BasicAspectContext.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/BasicAspectContext.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/BasicAspectContext.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/BasicAspectContext.java Wed Mar 7 03:01:28 2007
@@ -30,13 +30,15 @@
*/
public interface BasicAspectContext {
- /**
+ /**
* Get the {@link Properties} of the aspect.
+ * @return The aspect properties.
*/
Properties getAspectProperties();
/**
* Get the portal service.
+ * @return The portal service.
*/
PortalService getPortalService();
}
Added: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/DynamicAspect.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/DynamicAspect.java?view=auto&rev=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/DynamicAspect.java (added)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/DynamicAspect.java Wed Mar 7 03:01:28 2007
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.cocoon.portal.services.aspects;
+
+
+/**
+ * This is a marker interface for marking a bean as a dynamic aspect.
+ * A dynamic aspect does not need to be configured in the configuration.
+ * If the corresponding bean is configured, it is added to the aspect
+ * configuration automatically.
+ *
+ * @see ProfileManagerAspect
+ * @see RequestProcessorAspect
+ * @see ResponseProcessorAspect
+ * @see org.apache.cocoon.portal.layout.renderer.aspect.RendererAspect
+ *
+ * @since 2.2
+ * @version $Id$
+ */
+public interface DynamicAspect {
+
+ // just a marker interface
+}
Propchange: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/DynamicAspect.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/DynamicAspect.java
------------------------------------------------------------------------------
svn:keywords = Id
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/ProfileManagerAspectContext.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/ProfileManagerAspectContext.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/ProfileManagerAspectContext.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/ProfileManagerAspectContext.java Wed Mar 7 03:01:28 2007
@@ -25,7 +25,8 @@
public interface ProfileManagerAspectContext extends BasicAspectContext {
/**
- * Invoke next aspect .
+ * Invoke next aspect.
+ * @param profile The profile information.
*/
- void invokeNext(Object object);
+ void invokeNext(Object profile);
}
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/ResponseProcessorAspectContext.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/ResponseProcessorAspectContext.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/ResponseProcessorAspectContext.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/ResponseProcessorAspectContext.java Wed Mar 7 03:01:28 2007
@@ -29,7 +29,10 @@
extends BasicAspectContext {
/**
- * Invoke next aspect
+ * Invoke next aspect.
+ * @param ch The content handler for rendering.
+ * @param parameters Optional parameters for rendering.
+ * @throws SAXException If anything goes wrong.
*/
void invokeNext(ContentHandler ch,
Properties parameters)
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/ProfileManagerAspectContextImpl.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/ProfileManagerAspectContextImpl.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/ProfileManagerAspectContextImpl.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/ProfileManagerAspectContextImpl.java Wed Mar 7 03:01:28 2007
@@ -23,7 +23,7 @@
import org.apache.cocoon.portal.om.Layout;
import org.apache.cocoon.portal.services.aspects.ProfileManagerAspect;
import org.apache.cocoon.portal.services.aspects.ProfileManagerAspectContext;
-import org.apache.cocoon.portal.services.aspects.support.AspectChain;
+import org.apache.cocoon.portal.services.aspects.support.AspectChainImpl;
import org.apache.cocoon.portal.services.aspects.support.BasicAspectContextImpl;
/**
@@ -45,7 +45,7 @@
protected Object result;
public ProfileManagerAspectContextImpl(PortalService service,
- AspectChain chain,
+ AspectChainImpl chain,
int phase) {
super(service, chain);
this.phase = phase;
@@ -87,7 +87,7 @@
/**
* Return the resulting profile depending on the phase.
- * @return
+ * @return The resulting profile.
*/
public Object getResult() {
return this.result;
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/RequestProcessorAspectContextImpl.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/RequestProcessorAspectContextImpl.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/RequestProcessorAspectContextImpl.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/RequestProcessorAspectContextImpl.java Wed Mar 7 03:01:28 2007
@@ -19,7 +19,7 @@
import org.apache.cocoon.portal.PortalService;
import org.apache.cocoon.portal.services.aspects.RequestProcessorAspect;
import org.apache.cocoon.portal.services.aspects.RequestProcessorAspectContext;
-import org.apache.cocoon.portal.services.aspects.support.AspectChain;
+import org.apache.cocoon.portal.services.aspects.support.AspectChainImpl;
import org.apache.cocoon.portal.services.aspects.support.BasicAspectContextImpl;
/**
@@ -32,7 +32,7 @@
implements RequestProcessorAspectContext {
public RequestProcessorAspectContextImpl(PortalService service,
- AspectChain chain) {
+ AspectChainImpl chain) {
super(service, chain);
}
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/ResponseProcessorAspectContextImpl.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/ResponseProcessorAspectContextImpl.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/ResponseProcessorAspectContextImpl.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/impl/support/ResponseProcessorAspectContextImpl.java Wed Mar 7 03:01:28 2007
@@ -21,7 +21,7 @@
import org.apache.cocoon.portal.PortalService;
import org.apache.cocoon.portal.services.aspects.ResponseProcessorAspect;
import org.apache.cocoon.portal.services.aspects.ResponseProcessorAspectContext;
-import org.apache.cocoon.portal.services.aspects.support.AspectChain;
+import org.apache.cocoon.portal.services.aspects.support.AspectChainImpl;
import org.apache.cocoon.portal.services.aspects.support.BasicAspectContextImpl;
import org.xml.sax.ContentHandler;
import org.xml.sax.SAXException;
@@ -36,7 +36,7 @@
implements ResponseProcessorAspectContext {
public ResponseProcessorAspectContextImpl(PortalService service,
- AspectChain chain) {
+ AspectChainImpl chain) {
super(service, chain);
}
Copied: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/AspectChainImpl.java (from r515051, cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/AspectChain.java)
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/AspectChainImpl.java?view=diff&rev=515531&p1=cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/AspectChain.java&r1=515051&p2=cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/AspectChainImpl.java&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/AspectChain.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/AspectChainImpl.java Wed Mar 7 03:01:28 2007
@@ -21,8 +21,8 @@
import java.util.List;
import java.util.Properties;
-import org.apache.avalon.framework.service.ServiceManager;
import org.apache.cocoon.portal.PortalException;
+import org.apache.cocoon.portal.services.aspects.AspectChain;
/**
* Reusable implementation of an aspect chain.
@@ -30,9 +30,7 @@
* @since 2.2
* @version $Id$
*/
-public class AspectChain {
-
- public static final Properties EMPTY_PROPERTIES = new Properties();
+public class AspectChainImpl implements AspectChain {
/** The aspect class. */
protected final Class aspectClass;
@@ -46,7 +44,7 @@
/** Do we have any aspects? */
protected boolean process = false;
- public AspectChain(Class aClass, List aspects, List properties)
+ public AspectChainImpl(Class aClass, List aspects, List properties)
throws PortalException {
this.aspectClass = aClass;
if ( aspects.size() != properties.size() ) {
@@ -59,17 +57,30 @@
}
}
- public AspectChain(Class aClass) {
+ public AspectChainImpl(Class aClass) {
this.aspectClass = aClass;
this.aspects = new ArrayList(3);
this.configs = new ArrayList(3);
}
+ /**
+ * @see org.apache.cocoon.portal.services.aspects.AspectChain#getAspectClass()
+ */
+ public Class getAspectClass() {
+ return this.aspectClass;
+ }
+
+ /**
+ * @see org.apache.cocoon.portal.services.aspects.AspectChain#addAspect(java.lang.Object, java.util.Properties)
+ */
public void addAspect(Object aspect, Properties config)
throws PortalException {
this.addAspect(aspect, config, -1);
}
+ /**
+ * @see org.apache.cocoon.portal.services.aspects.AspectChain#addAspect(java.lang.Object, java.util.Properties, int)
+ */
public void addAspect(Object aspect, Properties config, int index)
throws PortalException {
if ( !this.aspectClass.isInstance(aspect) ) {
@@ -86,25 +97,24 @@
}
}
+ /**
+ * @see org.apache.cocoon.portal.services.aspects.AspectChain#hasAspects()
+ */
public boolean hasAspects() {
return this.process;
}
+ /**
+ * @see org.apache.cocoon.portal.services.aspects.AspectChain#getAspectsIterator()
+ */
public Iterator getAspectsIterator() {
return this.aspects.iterator();
}
+ /**
+ * @see org.apache.cocoon.portal.services.aspects.AspectChain#getPropertiesIterator()
+ */
public Iterator getPropertiesIterator() {
return this.configs.iterator();
- }
-
- public void dispose(ServiceManager manager) {
- final Iterator i = this.aspects.iterator();
- while (i.hasNext()) {
- final Object component = i.next();
- manager.release(component);
- }
- this.aspects.clear();
- this.configs.clear();
}
}
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/BasicAspectContextImpl.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/BasicAspectContextImpl.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/BasicAspectContextImpl.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/aspects/support/BasicAspectContextImpl.java Wed Mar 7 03:01:28 2007
@@ -43,7 +43,7 @@
protected Properties aspectProperties;
public BasicAspectContextImpl(PortalService service,
- AspectChain chain) {
+ AspectChainImpl chain) {
this.portalService = service;
if ( chain != null ) {
this.aspectsIterator = chain.getAspectsIterator();
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/impl/DefaultPortalManager.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/impl/DefaultPortalManager.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/impl/DefaultPortalManager.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/impl/DefaultPortalManager.java Wed Mar 7 03:01:28 2007
@@ -39,7 +39,7 @@
import org.apache.cocoon.portal.services.aspects.ResponseProcessorAspectContext;
import org.apache.cocoon.portal.services.aspects.impl.support.RequestProcessorAspectContextImpl;
import org.apache.cocoon.portal.services.aspects.impl.support.ResponseProcessorAspectContextImpl;
-import org.apache.cocoon.portal.services.aspects.support.AspectChain;
+import org.apache.cocoon.portal.services.aspects.support.AspectChainImpl;
import org.apache.cocoon.portal.util.AbstractBean;
import org.apache.cocoon.xml.AttributesImpl;
import org.apache.cocoon.xml.XMLUtils;
@@ -56,16 +56,16 @@
implements PortalManager, RequestProcessorAspect, ResponseProcessorAspect {
/** The aspect chain for additional request processing. */
- protected AspectChain requestChain;
+ protected AspectChainImpl requestChain;
/** The aspect chain for additional response processing. */
- protected AspectChain responseChain;
+ protected AspectChainImpl responseChain;
/**
* Set the request aspect chain.
* @param a A chain.
*/
- public void setRequestAspectChain(AspectChain a) {
+ public void setRequestAspectChain(AspectChainImpl a) {
this.requestChain = a;
}
@@ -73,7 +73,7 @@
* Set the response aspect chain.
* @param a A chain.
*/
- public void setResponseAspectChain(AspectChain a) {
+ public void setResponseAspectChain(AspectChainImpl a) {
this.responseChain = a;
}
@@ -104,11 +104,11 @@
public void init()
throws PortalException {
if ( this.requestChain == null ) {
- this.requestChain = new AspectChain(RequestProcessorAspect.class);
+ this.requestChain = new AspectChainImpl(RequestProcessorAspect.class);
}
this.requestChain.addAspect(this, null);
if ( this.responseChain == null ) {
- this.responseChain = new AspectChain(ResponseProcessorAspect.class);
+ this.responseChain = new AspectChainImpl(ResponseProcessorAspect.class);
}
this.responseChain.addAspect(this, null);
}
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/spring/AspectsBeanDefinitionParser.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/spring/AspectsBeanDefinitionParser.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/spring/AspectsBeanDefinitionParser.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/spring/AspectsBeanDefinitionParser.java Wed Mar 7 03:01:28 2007
@@ -21,7 +21,8 @@
import java.util.List;
import java.util.Properties;
-import org.apache.cocoon.portal.services.aspects.support.AspectChain;
+import org.apache.cocoon.portal.services.aspects.AspectChain;
+import org.apache.cocoon.portal.services.aspects.support.AspectChainImpl;
import org.apache.cocoon.spring.configurator.impl.AbstractElementParser;
import org.springframework.beans.factory.BeanDefinitionStoreException;
import org.springframework.beans.factory.config.BeanDefinition;
@@ -48,7 +49,7 @@
public AspectsBeanDefinitionParser(final String className) {
this.baseClass = className;
- this.aspectChainClass = AspectChain.class;
+ this.aspectChainClass = AspectChainImpl.class;
}
public AspectsBeanDefinitionParser(final String className, Class aspectChainClass) {
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/spring/RegistrationBeanPostProcessor.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/spring/RegistrationBeanPostProcessor.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/spring/RegistrationBeanPostProcessor.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/spring/RegistrationBeanPostProcessor.java Wed Mar 7 03:01:28 2007
@@ -17,7 +17,7 @@
package org.apache.cocoon.portal.spring;
import org.apache.cocoon.portal.PortalService;
-import org.apache.cocoon.portal.coplet.adapter.CopletAdapter;
+import org.apache.cocoon.portal.services.aspects.DynamicAspect;
import org.apache.cocoon.portal.services.aspects.RequestProcessorAspect;
import org.apache.cocoon.portal.services.aspects.ResponseProcessorAspect;
import org.springframework.beans.BeansException;
@@ -47,10 +47,10 @@
* @see org.springframework.beans.factory.config.BeanPostProcessor#postProcessAfterInitialization(java.lang.Object, java.lang.String)
*/
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
- if ( bean instanceof CopletAdapter && bean instanceof ResponseProcessorAspect ) {
+ if ( bean instanceof DynamicAspect && bean instanceof ResponseProcessorAspect ) {
((PortalService)this.beanFactory.getBean(PortalService.class.getName())).getPortalManager().register((ResponseProcessorAspect)bean);
}
- if ( bean instanceof CopletAdapter && bean instanceof RequestProcessorAspect ) {
+ if ( bean instanceof DynamicAspect && bean instanceof RequestProcessorAspect ) {
((PortalService)this.beanFactory.getBean(PortalService.class.getName())).getPortalManager().register((RequestProcessorAspect)bean);
}
return bean;
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-portlet-impl/src/main/java/org/apache/cocoon/portal/pluto/adapter/PortletAdapter.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-portlet-impl/src/main/java/org/apache/cocoon/portal/pluto/adapter/PortletAdapter.java?view=diff&rev=515531&r1=515530&r2=515531
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-portlet-impl/src/main/java/org/apache/cocoon/portal/pluto/adapter/PortletAdapter.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-portlet-impl/src/main/java/org/apache/cocoon/portal/pluto/adapter/PortletAdapter.java Wed Mar 7 03:01:28 2007
@@ -52,6 +52,7 @@
import org.apache.cocoon.portal.pluto.om.common.ObjectIDImpl;
import org.apache.cocoon.portal.pluto.servlet.ServletRequestImpl;
import org.apache.cocoon.portal.pluto.servlet.ServletResponseImpl;
+import org.apache.cocoon.portal.services.aspects.DynamicAspect;
import org.apache.cocoon.portal.services.aspects.RequestProcessorAspect;
import org.apache.cocoon.portal.services.aspects.ResponseProcessorAspect;
import org.apache.cocoon.portal.services.aspects.ResponseProcessorAspectContext;
@@ -82,7 +83,7 @@
*/
public class PortletAdapter
extends AbstractCopletAdapter
- implements RequestProcessorAspect, ResponseProcessorAspect, CopletDecorationProvider, Receiver, Parameterizable {
+ implements RequestProcessorAspect, ResponseProcessorAspect, DynamicAspect, CopletDecorationProvider, Receiver, Parameterizable {
/** Name of the temporary coplet instance attribute holding the portlet window. */
public static final String PORTLET_WINDOW_ATTRIBUTE_NAME = PortletAdapter.class.getName() + "/window";