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 2006/08/22 08:20:43 UTC
svn commit: r433542 [2/2] - in /cocoon/trunk/blocks/cocoon-portal:
cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/
cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/event/
cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/eve...
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/impl/DefaultLinkService.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/impl/DefaultLinkService.java?rev=433542&r1=433541&r2=433542&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/impl/DefaultLinkService.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/services/impl/DefaultLinkService.java Mon Aug 21 23:20:41 2006
@@ -21,23 +21,14 @@
import java.util.List;
import java.util.StringTokenizer;
-import org.apache.avalon.framework.activity.Disposable;
-import org.apache.avalon.framework.context.Context;
-import org.apache.avalon.framework.context.ContextException;
-import org.apache.avalon.framework.context.Contextualizable;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
import org.apache.avalon.framework.parameters.ParameterException;
import org.apache.avalon.framework.parameters.Parameterizable;
import org.apache.avalon.framework.parameters.Parameters;
-import org.apache.avalon.framework.service.ServiceException;
-import org.apache.avalon.framework.service.ServiceManager;
-import org.apache.avalon.framework.service.Serviceable;
-import org.apache.avalon.framework.thread.ThreadSafe;
import org.apache.cocoon.components.ContextHelper;
import org.apache.cocoon.environment.Request;
import org.apache.cocoon.portal.event.ComparableEvent;
import org.apache.cocoon.portal.event.Event;
-import org.apache.cocoon.portal.event.EventConverter;
+import org.apache.cocoon.portal.impl.AbstractComponent;
import org.apache.cocoon.portal.services.LinkService;
import org.apache.cocoon.util.NetUtils;
@@ -46,23 +37,10 @@
* @version $Id$
*/
public class DefaultLinkService
- extends AbstractLogEnabled
+ extends AbstractComponent
implements LinkService,
- ThreadSafe,
- Serviceable,
- Disposable,
- Contextualizable,
Parameterizable {
- /** The converter used to convert an event into a request parameter. */
- protected EventConverter converter;
-
- /** The service manager. */
- protected ServiceManager manager;
-
- /** The cocoon context- */
- protected Context context;
-
/** Default port used for http. */
protected int defaultPort = 80;
@@ -76,14 +54,6 @@
protected List internalParametersMatchers = new ArrayList();
/**
- * @see org.apache.avalon.framework.service.Serviceable#service(org.apache.avalon.framework.service.ServiceManager)
- */
- public void service(ServiceManager aManager) throws ServiceException {
- this.manager = aManager;
- this.converter = (EventConverter)this.manager.lookup(EventConverter.ROLE);
- }
-
- /**
* @see org.apache.avalon.framework.parameters.Parameterizable#parameterize(org.apache.avalon.framework.parameters.Parameters)
*/
public void parameterize(Parameters params) throws ParameterException {
@@ -190,7 +160,7 @@
} else {
buffer.append('?');
}
- final String value = this.converter.encode(event);
+ final String value = this.portalService.getEventConverter().encode(event);
try {
buffer.append(DEFAULT_REQUEST_EVENT_PARAMETER_NAME).append('=').append(NetUtils.encode(value, "utf-8"));
} catch (UnsupportedEncodingException uee) {
@@ -273,7 +243,7 @@
if (event == null) {
return;
}
- final String value = this.converter.encode(event);
+ final String value = this.portalService.getEventConverter().encode(event);
final LinkInfo info = this.getInfo();
if (event instanceof ComparableEvent) {
// search if we already have an event for this!
@@ -344,24 +314,6 @@
return buffer.toString();
}
- /**
- * @see org.apache.avalon.framework.activity.Disposable#dispose()
- */
- public void dispose() {
- if (this.manager != null) {
- this.manager.release( this.converter );
- this.converter = null;
- this.manager = null;
- }
- }
-
- /**
- * @see org.apache.avalon.framework.context.Contextualizable#contextualize(org.apache.avalon.framework.context.Context)
- */
- public void contextualize(Context aContext) throws ContextException {
- this.context = aContext;
- }
-
/**
* @see org.apache.cocoon.portal.services.LinkService#getInternalParameterNames()
*/
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?rev=433542&r1=433541&r2=433542&view=diff
==============================================================================
--- 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 Mon Aug 21 23:20:41 2006
@@ -16,7 +16,9 @@
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.layout.renderer.Renderer;
+import org.apache.cocoon.portal.services.aspects.PortalManagerAspect;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.BeanFactoryAware;
@@ -52,6 +54,9 @@
name = name.substring(RENDERER_ROLE_PREFIX.length());
}
((PortalService)this.beanFactory.getBean(PortalService.ROLE)).register(name, (Renderer)bean);
+ }
+ if ( bean instanceof CopletAdapter && bean instanceof PortalManagerAspect ) {
+ ((PortalService)this.beanFactory.getBean(PortalService.ROLE)).getPortalManager().register((PortalManagerAspect)bean);
}
return bean;
}
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/resources/org/apache/cocoon/portal/portal.roles
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/resources/org/apache/cocoon/portal/portal.roles?rev=433542&r1=433541&r2=433542&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/resources/org/apache/cocoon/portal/portal.roles (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/resources/org/apache/cocoon/portal/portal.roles Mon Aug 21 23:20:41 2006
@@ -62,8 +62,8 @@
<role name="org.apache.cocoon.portal.PortalManagerAspectSelector"
default-class="org.apache.cocoon.core.container.DefaultServiceSelector"/>
- <role name="org.apache.cocoon.portal.PortalManagerAspect/preload"
- default-class="org.apache.cocoon.portal.impl.PreloadPortalManagerAspect"/>
+ <role name="org.apache.cocoon.portal.services.aspects.PortalManagerAspect/preload"
+ default-class="org.apache.cocoon.portal.services.aspects.impl.PreloadPortalManagerAspect"/>
<!--+
| Renderer
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?rev=433542&r1=433541&r2=433542&view=diff
==============================================================================
--- 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 Mon Aug 21 23:20:41 2006
@@ -34,9 +34,6 @@
import org.apache.cocoon.components.ContextHelper;
import org.apache.cocoon.environment.http.HttpEnvironment;
import org.apache.cocoon.portal.Constants;
-import org.apache.cocoon.portal.PortalManagerAspect;
-import org.apache.cocoon.portal.PortalManagerAspectPrepareContext;
-import org.apache.cocoon.portal.PortalManagerAspectRenderContext;
import org.apache.cocoon.portal.PortalService;
import org.apache.cocoon.portal.coplet.adapter.CopletDecorationProvider;
import org.apache.cocoon.portal.coplet.adapter.DecorationAction;
@@ -55,6 +52,9 @@
import org.apache.cocoon.portal.pluto.servlet.ServletRequestImpl;
import org.apache.cocoon.portal.pluto.servlet.ServletResponseImpl;
import org.apache.cocoon.portal.serialization.IncludingHTMLSerializer;
+import org.apache.cocoon.portal.services.aspects.PortalManagerAspect;
+import org.apache.cocoon.portal.services.aspects.PortalManagerAspectPrepareContext;
+import org.apache.cocoon.portal.services.aspects.PortalManagerAspectRenderContext;
import org.apache.cocoon.portal.util.HtmlSaxParser;
import org.apache.cocoon.xml.AttributesImpl;
import org.apache.pluto.PortletContainer;
@@ -364,17 +364,16 @@
}
/**
- * @see org.apache.cocoon.portal.PortalManagerAspect#prepare(org.apache.cocoon.portal.PortalManagerAspectPrepareContext, org.apache.cocoon.portal.PortalService)
+ * @see org.apache.cocoon.portal.services.aspects.PortalManagerAspect#prepare(org.apache.cocoon.portal.services.aspects.PortalManagerAspectPrepareContext)
*/
- public void prepare(PortalManagerAspectPrepareContext aspectContext,
- PortalService service)
+ public void prepare(PortalManagerAspectPrepareContext aspectContext)
throws ProcessingException {
// process the events
aspectContext.invokeNext();
// do we already have an environment?
// if not, create one
- final Map objectModel = service.getProcessInfoProvider().getObjectModel();
+ final Map objectModel = aspectContext.getPortalService().getProcessInfoProvider().getObjectModel();
PortletURLProviderImpl event = (PortletURLProviderImpl) objectModel.get("portlet-event");
if ( event != null ) {
@@ -391,22 +390,21 @@
objectModel.put("portlet-response", new ServletResponseImpl(res));
final ServletRequestImpl req = new ServletRequestImpl((HttpServletRequest) objectModel.get(HttpEnvironment.HTTP_REQUEST_OBJECT), null);
objectModel.put("portlet-request", req);
- if ( !service.getUserService().getUser().isAnonymous() ) {
+ if ( !aspectContext.getPortalService().getUserService().getUser().isAnonymous() ) {
req.setAttribute(PortletRequest.USER_INFO,
- service.getUserService().getUser().getUserInfos());
+ aspectContext.getPortalService().getUserService().getUser().getUserInfos());
}
}
}
/**
- * @see org.apache.cocoon.portal.PortalManagerAspect#render(org.apache.cocoon.portal.PortalManagerAspectRenderContext, org.apache.cocoon.portal.PortalService, org.xml.sax.ContentHandler, java.util.Properties)
+ * @see org.apache.cocoon.portal.services.aspects.PortalManagerAspect#render(org.apache.cocoon.portal.services.aspects.PortalManagerAspectRenderContext, org.xml.sax.ContentHandler, java.util.Properties)
*/
public void render(PortalManagerAspectRenderContext aspectContext,
- PortalService service,
ContentHandler ch,
Properties properties)
throws SAXException {
- final Map objectModel = service.getProcessInfoProvider().getObjectModel();
+ final Map objectModel = aspectContext.getPortalService().getProcessInfoProvider().getObjectModel();
// don't generate a response, if we issued a redirect
if (objectModel.remove("portlet-event") == null) {
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-sample/src/main/resources/COB-INF/config/xconf/cocoon-portal-sample.xconf
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-sample/src/main/resources/COB-INF/config/xconf/cocoon-portal-sample.xconf?rev=433542&r1=433541&r2=433542&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-sample/src/main/resources/COB-INF/config/xconf/cocoon-portal-sample.xconf (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-sample/src/main/resources/COB-INF/config/xconf/cocoon-portal-sample.xconf Mon Aug 21 23:20:41 2006
@@ -81,18 +81,14 @@
<!-- This is the portal manager.
The portal manager can be extended with different aspects.
- Currently the JSR-168 aspect is configured/activated.
- If you don't need the JSR-168 support uncomment the aspect.
-->
<portal-manager>
<aspects>
- <!-- JSR-168 support: -->
- <aspect adapter="portlet"/>
</aspects>
</portal-manager>
<portal-event-manager>
- <event-aspects>
+ <aspects>
<!-- The client should not cache the page. -->
<aspect type="no-client-caching"/>
<!-- Use the action counter with great care. We recommend turning it off. -->
@@ -106,7 +102,7 @@
<!-- Comment the following out if you don't need WSRP: -->
<aspect type="wsrp"/>
<aspect type="request-parameter"/>
- </event-aspects>
+ </aspects>
</portal-event-manager>
<!--+
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-sample/src/main/resources/COB-INF/sitemap.xmap
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-sample/src/main/resources/COB-INF/sitemap.xmap?rev=433542&r1=433541&r2=433542&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-sample/src/main/resources/COB-INF/sitemap.xmap (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-sample/src/main/resources/COB-INF/sitemap.xmap Mon Aug 21 23:20:41 2006
@@ -75,6 +75,21 @@
<!-- =========================== Pipelines ================================= -->
<map:pipelines>
+ <map:pipeline>
+ <!-- Do an auto login as anonymous -->
+ <map:act type="cauth-is-logged-in">
+ <map:parameter name="application" value="portal"/>
+ <map:parameter name="negate-result" value="true"/>
+
+ <map:act type="cauth-login">
+ <map:parameter name="application" value="portal"/>
+
+ <map:parameter name="name" value="anonymous"/>
+ <map:parameter name="password" value="anonymous"/>
+ </map:act>
+ </map:act>
+ </map:pipeline>
+
<!-- The internal pipelines for loading and saving -->
<map:pipeline internal-only="true">
<map:match pattern="sunrise-authuser">
@@ -175,19 +190,6 @@
<map:match pattern="portlets/**">
<map:mount src="portlets/" uri-prefix="portlets"/>
</map:match>
-
- <!-- Do an auto login as anonymous -->
- <map:act type="cauth-is-logged-in">
- <map:parameter name="application" value="portal"/>
- <map:parameter name="negate-result" value="true"/>
-
- <map:act type="cauth-login">
- <map:parameter name="application" value="portal"/>
-
- <map:parameter name="name" value="anonymous"/>
- <map:parameter name="password" value="anonymous"/>
- </map:act>
- </map:act>
<!-- Test pipeline for portal engine -->
<map:match pattern="portal">
Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-wsrp-impl/src/main/java/org/apache/cocoon/portal/wsrp/adapter/WSRPEventAspect.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-wsrp-impl/src/main/java/org/apache/cocoon/portal/wsrp/adapter/WSRPEventAspect.java?rev=433542&r1=433541&r2=433542&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-wsrp-impl/src/main/java/org/apache/cocoon/portal/wsrp/adapter/WSRPEventAspect.java (original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-wsrp-impl/src/main/java/org/apache/cocoon/portal/wsrp/adapter/WSRPEventAspect.java Mon Aug 21 23:20:41 2006
@@ -22,7 +22,6 @@
import org.apache.avalon.framework.thread.ThreadSafe;
import org.apache.cocoon.environment.ObjectModelHelper;
import org.apache.cocoon.environment.Request;
-import org.apache.cocoon.portal.PortalService;
import org.apache.cocoon.portal.event.Event;
import org.apache.cocoon.portal.event.aspect.EventAspect;
import org.apache.cocoon.portal.event.aspect.EventAspectContext;
@@ -38,10 +37,10 @@
public static final String REQUEST_PARAMETER_NAME = "cocoon-wsrpevent";
/**
- * @see org.apache.cocoon.portal.event.aspect.EventAspect#process(org.apache.cocoon.portal.event.aspect.EventAspectContext, org.apache.cocoon.portal.PortalService)
+ * @see org.apache.cocoon.portal.event.aspect.EventAspect#process(org.apache.cocoon.portal.event.aspect.EventAspectContext)
*/
- public void process(EventAspectContext context, PortalService service) {
- final Request request = ObjectModelHelper.getRequest(service.getProcessInfoProvider().getObjectModel());
+ public void process(EventAspectContext context) {
+ final Request request = ObjectModelHelper.getRequest(context.getPortalService().getProcessInfoProvider().getObjectModel());
final String[] values = request.getParameterValues("cocoon-wsrpevent");
if ( values != null && values.length == 1 ) {
// create a wsrp event, first build map of parameters
@@ -55,11 +54,11 @@
}
}
final String copletid = values[0];
- final CopletInstance cid = service.getProfileManager().getCopletInstance(copletid);
+ final CopletInstance cid = context.getPortalService().getProfileManager().getCopletInstance(copletid);
final Event e = new WSRPEvent(cid, parameters);
- service.getEventManager().send(e);
+ context.getPortalService().getEventManager().send(e);
}
- context.invokeNext(service);
+ context.invokeNext();
}
}