cziegeler 2003/05/28 00:23:55
Modified: src/blocks/portal/java/org/apache/cocoon/portal/profile/impl
AuthenticationProfileManager.java
Log:
Cleaning up on logout
Revision Changes Path
1.5 +11 -7
cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AuthenticationProfileManager.java
Index: AuthenticationProfileManager.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AuthenticationProfileManager.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- AuthenticationProfileManager.java 28 May 2003 07:14:41 -0000 1.4
+++ AuthenticationProfileManager.java 28 May 2003 07:23:55 -0000 1.5
@@ -136,28 +136,32 @@
ComponentSelector adapterSelector = null;
try {
adapterSelector =
(ComponentSelector)this.manager.lookup(CopletAdapter.ROLE+"Selector");
- service = (PortalService) this.manager.lookup(PortalService.ROLE);
+ service = (PortalService)this.manager.lookup(PortalService.ROLE);
- attribute =
AuthenticationProfileManager.class.getName()+"/"+service.getPortalName()+"/CopletInstanceData";
- CopletInstanceDataManager copletInstanceDataManager =
(CopletInstanceDataManager)service.getAttribute(attribute);
-
+ String portalPrefix =
AuthenticationProfileManager.class.getName()+"/"+service.getPortalName();
+
+ CopletInstanceDataManager copletInstanceDataManager =
(CopletInstanceDataManager)service.getAttribute(portalPrefix+"/CopletInstanceData");
Iterator iter =
copletInstanceDataManager.getCopletInstanceData().values().iterator();
while ( iter.hasNext() ) {
CopletInstanceData cid = (CopletInstanceData) iter.next();
CopletAdapter adapter = null;
try {
- adapter = (CopletAdapter)
adapterSelector.select(cid.getCopletData().getCopletBaseData().getCopletAdapterName());
+ adapter =
(CopletAdapter)adapterSelector.select(cid.getCopletData().getCopletBaseData().getCopletAdapterName());
adapter.logout( cid );
} finally {
adapterSelector.release( adapter );
}
}
+
+ service.removeAttribute(portalPrefix+"/CopletData");
+ service.removeAttribute(portalPrefix+"/CopletInstanceData");
+ service.removeAttribute(portalPrefix+"/Layout");
} catch (ComponentException e) {
throw new CascadingRuntimeException("Unable to lookup portal service.",
e);
} finally {
this.manager.release(service);
this.manager.release(adapterSelector);
- }
+ }
}
/**