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 2005/03/23 17:02:49 UTC
svn commit: r158790 - in
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal:
PortalComponentManager.java acting/BookmarkAction.java
generation/PortalGenerator.java impl/DefaultPortalComponentManager.java
impl/PortalManagerImpl.java
Author: cziegeler
Date: Wed Mar 23 08:02:48 2005
New Revision: 158790
URL: http://svn.apache.org/viewcvs?view=rev&rev=158790
Log:
Make portal manager available through portal component manager
Modified:
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/PortalComponentManager.java
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/acting/BookmarkAction.java
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/generation/PortalGenerator.java
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultPortalComponentManager.java
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/impl/PortalManagerImpl.java
Modified: cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/PortalComponentManager.java
URL: http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/PortalComponentManager.java?view=diff&r1=158789&r2=158790
==============================================================================
--- cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/PortalComponentManager.java (original)
+++ cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/PortalComponentManager.java Wed Mar 23 08:02:48 2005
@@ -1,5 +1,5 @@
/*
- * Copyright 1999-2002,2004 The Apache Software Foundation.
+ * Copyright 1999-2002,2004-2005 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -66,4 +66,10 @@
* Get the event manager
*/
EventManager getEventManager();
+
+ /**
+ * Get the portal manager
+ * @since 2.1.8
+ */
+ PortalManager getPortalManager();
}
Modified: cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/acting/BookmarkAction.java
URL: http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/acting/BookmarkAction.java?view=diff&r1=158789&r2=158790
==============================================================================
--- cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/acting/BookmarkAction.java (original)
+++ cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/acting/BookmarkAction.java Wed Mar 23 08:02:48 2005
@@ -39,7 +39,6 @@
import org.apache.cocoon.environment.Request;
import org.apache.cocoon.environment.Session;
import org.apache.cocoon.environment.SourceResolver;
-import org.apache.cocoon.portal.PortalManager;
import org.apache.cocoon.portal.PortalService;
import org.apache.cocoon.portal.acting.helpers.CopletMapping;
import org.apache.cocoon.portal.acting.helpers.FullScreenMapping;
@@ -193,13 +192,7 @@
try {
service = (PortalService)this.manager.lookup(PortalService.ROLE);
- PortalManager portalManager = null;
- try {
- portalManager = (PortalManager) this.manager.lookup(PortalManager.ROLE);
- portalManager.process();
- } finally {
- this.manager.release(portalManager);
- }
+ service.getComponentManager().getPortalManager().process();
final Request request = ObjectModelHelper.getRequest(objectModel);
final Session session = request.getSession(false);
Modified: cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/generation/PortalGenerator.java
URL: http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/generation/PortalGenerator.java?view=diff&r1=158789&r2=158790
==============================================================================
--- cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/generation/PortalGenerator.java (original)
+++ cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/generation/PortalGenerator.java Wed Mar 23 08:02:48 2005
@@ -51,15 +51,16 @@
// start the portal rendering
// 1. event processing
// 2. rendering
- PortalManager pm = null;
+ PortalService service = null;
try {
- pm = (PortalManager)this.manager.lookup(PortalManager.ROLE);
+ service = (PortalService)this.manager.lookup(PortalService.ROLE);
+ PortalManager pm = service.getComponentManager().getPortalManager();
pm.process();
pm.showPortal(this.xmlConsumer, this.parameters);
} catch (ServiceException ce) {
- throw new ProcessingException("Unable to lookup portal manager.", ce);
+ throw new ProcessingException("Unable to lookup portal service.", ce);
} finally {
- this.manager.release(pm);
+ this.manager.release(service);
}
}
Modified: cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultPortalComponentManager.java
URL: http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultPortalComponentManager.java?view=diff&r1=158789&r2=158790
==============================================================================
--- cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultPortalComponentManager.java (original)
+++ cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultPortalComponentManager.java Wed Mar 23 08:02:48 2005
@@ -1,5 +1,5 @@
/*
- * Copyright 1999-2002,2004 The Apache Software Foundation.
+ * Copyright 1999-2002,2004-2005 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,6 +32,7 @@
import org.apache.avalon.framework.thread.ThreadSafe;
import org.apache.cocoon.portal.LinkService;
import org.apache.cocoon.portal.PortalComponentManager;
+import org.apache.cocoon.portal.PortalManager;
import org.apache.cocoon.portal.coplet.CopletFactory;
import org.apache.cocoon.portal.event.EventManager;
import org.apache.cocoon.portal.layout.LayoutFactory;
@@ -55,30 +56,29 @@
protected ServiceManager manager;
- protected LinkService linkService;
-
- protected ProfileManager profileManager;
-
protected String profileManagerRole;
+ protected ProfileManager profileManager;
protected String linkServiceRole;
+ protected LinkService linkService;
protected String rendererSelectorRole;
-
protected ServiceSelector rendererSelector;
protected Map renderers;
protected String copletFactoryRole;
-
- protected String layoutFactoryRole;
-
protected CopletFactory copletFactory;
+ protected String layoutFactoryRole;
protected LayoutFactory layoutFactory;
+ protected String eventManagerRole;
protected EventManager eventManager;
+ protected String portalManagerRole;
+ protected PortalManager portalManager;
+
/* (non-Javadoc)
* @see org.apache.avalon.framework.service.Serviceable#service(org.apache.avalon.framework.service.ServiceManager)
*/
@@ -120,7 +120,7 @@
public EventManager getEventManager() {
if ( null == this.eventManager ) {
try {
- this.eventManager = (EventManager)this.manager.lookup( EventManager.ROLE );
+ this.eventManager = (EventManager)this.manager.lookup( this.eventManagerRole );
} catch (ServiceException e) {
throw new CascadingRuntimeException("Unable to lookup event manager with role " + EventManager.ROLE, e);
}
@@ -152,6 +152,8 @@
this.layoutFactory = null;
this.manager.release(this.eventManager);
this.eventManager = null;
+ this.manager.release(this.portalManager);
+ this.portalManager = null;
this.manager = null;
}
}
@@ -165,6 +167,8 @@
this.rendererSelectorRole = config.getChild("renderer-selector").getValue(Renderer.ROLE+"Selector");
this.copletFactoryRole = config.getChild("coplet-factory").getValue(CopletFactory.ROLE);
this.layoutFactoryRole = config.getChild("layout-factory").getValue(LayoutFactory.ROLE);
+ this.eventManagerRole = config.getChild("event-manager").getValue(EventManager.ROLE);
+ this.portalManagerRole = config.getChild("portal-manager").getValue(PortalManager.ROLE);
}
/* (non-Javadoc)
@@ -219,4 +223,18 @@
return this.layoutFactory;
}
+
+ /**
+ * @see org.apache.cocoon.portal.PortalComponentManager#getPortalManager()
+ */
+ public PortalManager getPortalManager() {
+ if ( null == this.portalManager ) {
+ try {
+ this.portalManager = (PortalManager)this.manager.lookup( this.portalManagerRole);
+ } catch (ServiceException e) {
+ throw new CascadingRuntimeException("Unable to lookup portal manager with role " + this.copletFactoryRole, e);
+ }
+ }
+ return this.portalManager;
+ }
}
Modified: cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/impl/PortalManagerImpl.java
URL: http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/impl/PortalManagerImpl.java?view=diff&r1=158789&r2=158790
==============================================================================
--- cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/impl/PortalManagerImpl.java (original)
+++ cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/impl/PortalManagerImpl.java Wed Mar 23 08:02:48 2005
@@ -48,14 +48,15 @@
*/
public void process()
throws ProcessingException {
- EventManager eventManager = null;
+ PortalService service = null;
try {
- eventManager = (EventManager)this.manager.lookup(EventManager.ROLE);
+ service = (PortalService)this.manager.lookup(PortalService.ROLE);
+ EventManager eventManager = service.getComponentManager().getEventManager();
eventManager.processEvents();
} catch (ServiceException ce) {
throw new ProcessingException("Unable to lookup portal service.", ce);
} finally {
- this.manager.release(eventManager);
+ this.manager.release(service);
}
}
@@ -80,13 +81,6 @@
contentHandler.endDocument();
} catch (ServiceException ce) {
throw new SAXException("Unable to lookup portal service.", ce);
- } catch (Exception e) {
- getLogger().error("Caught exception", e);
- throw new SAXException(e);
- } catch (Error e) {
- getLogger().error("Caught error", e);
- e.printStackTrace();
- throw e;
} finally {
this.manager.release(service);
}