cziegeler 2003/06/06 04:33:40
Modified: src/blocks/portal/java/org/apache/cocoon/portal/layout/impl DefaultLayoutFactory.java src/blocks/portal/java/org/apache/cocoon/portal/coplet/impl DefaultCopletFactory.java src/blocks/portal/java/org/apache/cocoon/portal/factory/impl AbstractProducibleDescription.java src/blocks/portal/java/org/apache/cocoon/portal/factory ProducibleDescription.java src/blocks/portal/java/org/apache/cocoon/portal/profile/impl AuthenticationProfileManager.java src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl FullScreenCopletAspect.java Log: Not every layout needs an own id anymore Revision Changes Path 1.10 +7 -3 cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/impl/DefaultLayoutFactory.java Index: DefaultLayoutFactory.java =================================================================== RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/impl/DefaultLayoutFactory.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- DefaultLayoutFactory.java 27 May 2003 09:15:07 -0000 1.9 +++ DefaultLayoutFactory.java 6 Jun 2003 11:33:37 -0000 1.10 @@ -131,6 +131,7 @@ } desc.setName(name); desc.setClassName(layoutsConf[i].getAttribute("class")); + desc.setCreateId(layoutsConf[i].getAttributeAsBoolean("create-id", false)); desc.setRendererName(layoutsConf[i].getAttribute("renderer")); // and now the aspects @@ -200,8 +201,11 @@ throw new ProcessingException("Unable to create new instance", e ); } - // TODO - set unique id - String id = layoutName + '-' + System.currentTimeMillis(); + String id = null; + if ( layoutDescription.createId() ) { + // TODO - set unique id + id = layoutName + '-' + System.currentTimeMillis(); + } layout.initialize( layoutName, id ); layout.setDescription( layoutDescription ); layout.setAspectDataHandler((AspectDataHandler)o[1]); 1.5 +8 -3 cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/coplet/impl/DefaultCopletFactory.java Index: DefaultCopletFactory.java =================================================================== RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/coplet/impl/DefaultCopletFactory.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- DefaultCopletFactory.java 27 May 2003 09:15:07 -0000 1.4 +++ DefaultCopletFactory.java 6 Jun 2003 11:33:38 -0000 1.5 @@ -151,9 +151,13 @@ CopletInstanceData instance = new CopletInstanceData(); - // TODO - create unique id - String id = name + '-' + System.currentTimeMillis(); + String id = null; + if ( copletDescription.createId() ) { + // TODO - create unique id + id = name + '-' + System.currentTimeMillis(); + } instance.initialize( name, id ); + instance.setDescription( copletDescription ); instance.setAspectDataHandler((AspectDataHandler)o[2]); instance.setCopletData(copletData); @@ -226,6 +230,7 @@ } desc.setName(copletsConf[i].getAttribute("name")); instanceDesc.setName(copletsConf[i].getAttribute("name")); + instanceDesc.setCreateId(copletsConf[i].getAttributeAsBoolean("create-id", true)); // and now the aspects Configuration[] aspectsConf = copletsConf[i].getChild("coplet-data-aspects").getChildren("aspect"); 1.2 +13 -1 cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/factory/impl/AbstractProducibleDescription.java Index: AbstractProducibleDescription.java =================================================================== RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/factory/impl/AbstractProducibleDescription.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- AbstractProducibleDescription.java 20 May 2003 14:06:42 -0000 1.1 +++ AbstractProducibleDescription.java 6 Jun 2003 11:33:39 -0000 1.2 @@ -68,6 +68,8 @@ protected String name; + protected boolean createId = true; + /** * @return */ @@ -96,4 +98,14 @@ name = string; } + /** + * Create a unique id for objects of this type + */ + public boolean createId() { + return this.createId; + } + + public void setCreateId(boolean value) { + this.createId = value; + } } 1.2 +6 -2 cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/factory/ProducibleDescription.java Index: ProducibleDescription.java =================================================================== RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/factory/ProducibleDescription.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- ProducibleDescription.java 20 May 2003 14:06:43 -0000 1.1 +++ ProducibleDescription.java 6 Jun 2003 11:33:39 -0000 1.2 @@ -71,5 +71,9 @@ * @return */ String getName(); - + + /** + * Create a unique id for objects of this type + */ + boolean createId(); } 1.6 +4 -2 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.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- AuthenticationProfileManager.java 28 May 2003 07:23:55 -0000 1.5 +++ AuthenticationProfileManager.java 6 Jun 2003 11:33:39 -0000 1.6 @@ -281,7 +281,9 @@ */ private void cacheLayouts(Map layoutMap, Layout layout) { if ( layout != null ) { - layoutMap.put( layout.getId(), layout ); + if ( layout.getId() != null ) { + layoutMap.put( layout.getId(), layout ); + } if ( layout instanceof CompositeLayout ) { CompositeLayout cl = (CompositeLayout)layout; Iterator i = cl.getItems().iterator(); 1.2 +2 -2 cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/FullScreenCopletAspect.java Index: FullScreenCopletAspect.java =================================================================== RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/FullScreenCopletAspect.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- FullScreenCopletAspect.java 7 May 2003 06:22:22 -0000 1.1 +++ FullScreenCopletAspect.java 6 Jun 2003 11:33:39 -0000 1.2 @@ -81,7 +81,7 @@ CopletInstanceData cid = ((CopletLayout)layout).getCopletInstanceData(); Layout fullScreenLayout = (Layout)service.getTemporaryAttribute("DEFAULT_LAYOUT"); - if ( fullScreenLayout != null && fullScreenLayout.getId().equals( layout.getId() )) { + if ( fullScreenLayout != null && fullScreenLayout.equals( layout )) { FullScreenCopletEvent event = new FullScreenCopletEvent( cid, null ); XMLUtils.createElement(handler, "fullscreen-uri", service.getLinkService().getRefreshLinkURI()); } else {