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/09/11 19:31:28 UTC

svn commit: r280156 - in /cocoon: blocks/portal-sample/trunk/WEB-INF/xconf/ blocks/portal-sample/trunk/samples/profiles/copletdata/ blocks/portal-sample/trunk/samples/skins/common/js/ blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/ blocks/por...

Author: cziegeler
Date: Sun Sep 11 10:29:57 2005
New Revision: 280156

URL: http://svn.apache.org/viewcvs?rev=280156&view=rev
Log:
Remove aspect datas from coplet datas. Attributes are now used instead.

Added:
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletDataFeatures.java   (with props)
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/impl/SimpleAbstractProducible.java   (with props)
Removed:
    cocoon/blocks/portal-sample/trunk/samples/skins/common/js/forms-lib.js
    cocoon/blocks/portal-sample/trunk/samples/skins/common/js/mattkruse-lib.js
Modified:
    cocoon/blocks/portal-sample/trunk/WEB-INF/xconf/cocoon-portal-sample.xconf
    cocoon/blocks/portal-sample/trunk/samples/profiles/copletdata/portal.xml
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletData.java
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletdata.xml
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/impl/DefaultCopletFactory.java
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/Producible.java
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/Layout.java
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/FullScreenCopletAspect.java
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/RemovableAspect.java
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/SizingAspect.java
    cocoon/trunk/status.xml

Modified: cocoon/blocks/portal-sample/trunk/WEB-INF/xconf/cocoon-portal-sample.xconf
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/WEB-INF/xconf/cocoon-portal-sample.xconf?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/blocks/portal-sample/trunk/WEB-INF/xconf/cocoon-portal-sample.xconf (original)
+++ cocoon/blocks/portal-sample/trunk/WEB-INF/xconf/cocoon-portal-sample.xconf Sun Sep 11 10:29:57 2005
@@ -21,8 +21,6 @@
 <components>
   <!-- Include dependencies -->
   <include src="context://WEB-INF/xconf/cocoon-portal.xconf"/>
-  <!-- If you're not using cowarp, you can remove this include: -->
-  <include src="context://WEB-INF/xconf/cocoon-portal-cowarp.xconf"/>
 
  <!-- THIS IS A SAMPLE PORTAL
       It demonstrates several features of the portal engine,
@@ -384,31 +382,18 @@
     <coplets>
       <coplet name="standard"
               class="org.apache.cocoon.portal.coplet.CopletData">
-        <coplet-data-aspects>
-          <!-- Use only the 'memory' aspect store with aspect datas! -->
-          <aspect auto-create="true" class="java.lang.Boolean" name="sizable" store="memory" value="true"/>
-          <aspect auto-create="true" class="java.lang.Boolean" name="mandatory" store="memory" value="false"/>
-          <!--         
-                <aspect name="maxpageable"
-                        class="java.lang.Boolean"
-                        store="memory"
-                        auto-create="true"
-                        value="true"/>
-          -->
-          </coplet-data-aspects>
-            
-          <coplet-instance-data-aspects>
-            <!-- Choose from tempory, request and session aspect store: -->
-            <aspect name="size"
-                    class="java.lang.Integer"
-                    store="session"
-                    auto-create="true"
-                    value="1"/>
-            <aspect name="fullScreen"
-                    class="java.lang.Boolean"
-                    store="temporary"
-                    auto-create="true"
-                    value="false"/>
+        <coplet-instance-data-aspects>
+           <!-- Choose from tempory, request and session aspect store: -->
+           <aspect name="size"
+                   class="java.lang.Integer"
+                   store="session"
+                   auto-create="true"
+                   value="1"/>
+           <aspect name="fullScreen"
+                   class="java.lang.Boolean"
+                   store="temporary"
+                   auto-create="true"
+                   value="false"/>
         </coplet-instance-data-aspects>
       </coplet>
     </coplets>

Modified: cocoon/blocks/portal-sample/trunk/samples/profiles/copletdata/portal.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/profiles/copletdata/portal.xml?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/profiles/copletdata/portal.xml (original)
+++ cocoon/blocks/portal-sample/trunk/samples/profiles/copletdata/portal.xml Sun Sep 11 10:29:57 2005
@@ -133,10 +133,10 @@
          <name>uri</name>
          <value xsi:type="java:java.lang.String">cocoon:/coplets/docs/portal-intro.html</value>
       </attribute>
-      <aspect>
-        <name>mandatory</name>
-        <value xsi:type="java:java.lang.Boolean">true</value>
-      </aspect>
+      <attribute>
+         <name>mandatory</name>
+         <value xsi:type="java:java.lang.Boolean">true</value>
+      </attribute>
    </coplet-data>
    <coplet-data id="Portal-Demo" name="standard">
       <title>Introduction</title>
@@ -149,10 +149,10 @@
         <name>cache-global</name>
         <value xsi:type="java:java.lang.Boolean">true</value>
       </attribute>
-      <aspect>
-        <name>mandatory</name>
-        <value xsi:type="java:java.lang.Boolean">true</value>
-      </aspect>
+      <attribute>
+         <name>mandatory</name>
+         <value xsi:type="java:java.lang.Boolean">true</value>
+      </attribute>
    </coplet-data>
    <coplet-data id="Portal-Right" name="standard">
       <title>Right</title>
@@ -161,10 +161,10 @@
          <name>uri</name>
          <value xsi:type="java:java.lang.String">cocoon:/coplets/docs/portal-right.html</value>
       </attribute>
-      <aspect>
-        <name>mandatory</name>
-        <value xsi:type="java:java.lang.Boolean">true</value>
-      </aspect>
+      <attribute>
+         <name>mandatory</name>
+         <value xsi:type="java:java.lang.Boolean">true</value>
+      </attribute>
    </coplet-data>
    <coplet-data id="Portal-Left" name="standard">
       <title>Left</title>
@@ -173,10 +173,10 @@
          <name>uri</name>
          <value xsi:type="java:java.lang.String">cocoon:/coplets/docs/portal-left.html</value>
       </attribute>
-      <aspect>
-        <name>mandatory</name>
-        <value xsi:type="java:java.lang.Boolean">true</value>
-      </aspect>
+      <attribute>
+         <name>mandatory</name>
+         <value xsi:type="java:java.lang.Boolean">true</value>
+      </attribute>
    </coplet-data>
    <coplet-data id="Portal-Bottom" name="standard">
       <title>Bottom</title>
@@ -185,10 +185,10 @@
          <name>uri</name>
          <value xsi:type="java:java.lang.String">cocoon:/coplets/docs/portal-bottom.html</value>
       </attribute>
-      <aspect>
-        <name>mandatory</name>
-        <value xsi:type="java:java.lang.Boolean">true</value>
-      </aspect>
+      <attribute>
+         <name>mandatory</name>
+         <value xsi:type="java:java.lang.Boolean">true</value>
+      </attribute>
    </coplet-data>
 
    <!--
@@ -233,10 +233,10 @@
          <name>uri</name>
          <value xsi:type="java:java.lang.String">cocoon:/coplets/login/coplet</value>
       </attribute>
-      <aspect>
-        <name>mandatory</name>
-        <value xsi:type="java:java.lang.Boolean">true</value>
-      </aspect>
+      <attribute>
+         <name>mandatory</name>
+         <value xsi:type="java:java.lang.Boolean">true</value>
+      </attribute>
    </coplet-data>
 
    <!--

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletData.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletData.java?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletData.java (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletData.java Sun Sep 11 10:29:57 2005
@@ -22,7 +22,7 @@
 import java.util.Map;
 import java.util.StringTokenizer;
 
-import org.apache.cocoon.portal.factory.impl.AbstractProducible;
+import org.apache.cocoon.portal.factory.impl.SimpleAbstractProducible;
 import org.apache.cocoon.portal.util.DeltaApplicable;
 import org.apache.commons.lang.StringUtils;
 
@@ -35,7 +35,7 @@
  * @version CVS $Id$
  */
 public class CopletData 
-extends AbstractProducible
+extends SimpleAbstractProducible
 implements DeltaApplicable {
 
     protected String title;

Added: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletDataFeatures.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletDataFeatures.java?rev=280156&view=auto
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletDataFeatures.java (added)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletDataFeatures.java Sun Sep 11 10:29:57 2005
@@ -0,0 +1,80 @@
+/*
+ * Copyright 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.
+ * 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.coplet;
+
+import org.apache.commons.lang.BooleanUtils;
+
+/**
+ * This class contains constants and utility methods for the standard features
+ * of a coplet.
+ *
+ * @version $Id$
+ */
+public final class CopletDataFeatures {
+
+    /** This is the name of the coplet data attribute containing a boolean value
+     * indicating if the user is allowed to resize the coplet. (default is true) */
+    public static final String ATTRIBUTE_SIZABLE = "sizable";
+
+    /** This is the name of the coplet data attribute containing a boolean value
+     * indicating if a user is allowed to remove the coplet (default is false meaning
+     * it's not mandatory and the user is allowed to remove it. */
+    public static final String ATTRIBUTE_MANDATORY = "mandatory";
+
+    /** This is the name of the coplet data attribute containing a boolean value
+     * indicating if the coplet supports the full-screen mode. (default is true) */
+    public static final String ATTRIBUTE_FULLSCREEN = "full-screen";
+
+    public static Object getAttributeValue(CopletData data, String key, Object defaultValue) {
+        Object value = data.getAttribute(key);
+        if ( value == null ) {
+            value = defaultValue;
+        }
+        return value;
+    }
+
+    /**
+     * Is this coplet sizable?
+     */
+    public static boolean isSizable(CopletData data) {
+        Boolean sizable = (Boolean)getAttributeValue(data, ATTRIBUTE_SIZABLE, Boolean.TRUE);
+        return sizable.booleanValue();
+    }
+
+    /**
+     * Is this coplet mandatory?
+     */
+    public static boolean isMandatory(CopletData data) {
+        Boolean mandatory = (Boolean)getAttributeValue(data, ATTRIBUTE_MANDATORY, Boolean.FALSE);
+        return mandatory.booleanValue();
+    }
+
+    /**
+     * Does this coplet support the full screen mode?
+     */
+    public static boolean supportsFullScreenMode(CopletData data) {
+        Boolean supportsMode = (Boolean)getAttributeValue(data, ATTRIBUTE_FULLSCREEN, Boolean.TRUE);
+        return supportsMode.booleanValue();
+    }
+
+    public static void setSizable(CopletData data, boolean value) {
+        data.setAttribute(ATTRIBUTE_SIZABLE, BooleanUtils.toBooleanObject(value));
+    }
+
+    public static void setMandatory(CopletData data, boolean value) {
+        data.setAttribute(ATTRIBUTE_MANDATORY, BooleanUtils.toBooleanObject(value));
+    }
+}

Propchange: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletDataFeatures.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/CopletDataFeatures.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletdata.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletdata.xml?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletdata.xml (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletdata.xml Sun Sep 11 10:29:57 2005
@@ -14,7 +14,7 @@
   See the License for the specific language governing permissions and
   limitations under the License.
 -->
-<!-- SVN $Id:$ -->
+<!-- SVN $Id$ -->
 <mapping>
 	<description>Coplet data mapping file</description>
 
@@ -34,6 +34,15 @@
         </field>
     </class>
 
+	<class name="org.apache.cocoon.portal.factory.impl.SimpleAbstractProducible">
+        <field name="name" type="java.lang.String">
+            <bind-xml name="name" node="attribute" />
+        </field>
+        <field name="id" type="java.lang.String" >
+            <bind-xml name="id" node="attribute" />
+        </field>
+    </class>
+
 	<class name="org.apache.cocoon.portal.profile.impl.CopletDataManager">
 		<map-to xml="coplets" />
 
@@ -43,7 +52,7 @@
 	</class>
 
 	<class name="org.apache.cocoon.portal.coplet.CopletData"
-	       extends="org.apache.cocoon.portal.factory.impl.AbstractProducible">
+	       extends="org.apache.cocoon.portal.factory.impl.SimpleAbstractProducible">
 		<map-to xml="coplet-data" />
 
 		<field name="title" type="java.lang.String">

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/impl/DefaultCopletFactory.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/impl/DefaultCopletFactory.java?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/impl/DefaultCopletFactory.java (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/impl/DefaultCopletFactory.java Sun Sep 11 10:29:57 2005
@@ -81,9 +81,7 @@
             }
             DefaultCopletDescription copletDescription = (DefaultCopletDescription)o[0];
 
-            copletData.setDescription( copletDescription );
-            copletData.setAspectDataHandler((AspectDataHandler)o[1]);
-            
+            copletData.setDescription( copletDescription );            
         }
     }
     
@@ -106,7 +104,7 @@
             DefaultCopletDescription copletDescription = (DefaultCopletDescription)o[0];
 
             copletInstanceData.setDescription( copletDescription );
-            copletInstanceData.setAspectDataHandler((AspectDataHandler)o[2]);
+            copletInstanceData.setAspectDataHandler((AspectDataHandler)o[1]);
             
         }
     }
@@ -137,7 +135,7 @@
         instance.initialize( name, id );
         
         instance.setDescription( copletDescription );
-        instance.setAspectDataHandler((AspectDataHandler)o[2]);
+        instance.setAspectDataHandler((AspectDataHandler)o[1]);
         instance.setCopletData(copletData);
         
         // now lookup the adapter
@@ -208,27 +206,15 @@
             instanceDesc.setName(name);
             instanceDesc.setCreateId(copletsConf[i].getAttributeAsBoolean("create-id", true));
             
-            // and now the aspects
-            Configuration[] aspectsConf = copletsConf[i].getChild("coplet-data-aspects").getChildren("aspect");
-            if (aspectsConf != null) {
-                for(int m=0; m < aspectsConf.length; m++) {
-                    AspectDescription adesc = DefaultAspectDescription.newInstance(aspectsConf[m]);
-                    desc.addAspectDescription( adesc );
-                }
-            }
-
             // and now the aspects of the instances
-            aspectsConf = copletsConf[i].getChild("coplet-instance-data-aspects").getChildren("aspect");
-            if (aspectsConf != null) {
-                for(int m=0; m < aspectsConf.length; m++) {
-                    AspectDescription adesc = DefaultAspectDescription.newInstance(aspectsConf[m]);
-                    instanceDesc.addAspectDescription( adesc );
-                }
+            Configuration[] aspectsConf = copletsConf[i].getChild("coplet-instance-data-aspects").getChildren("aspect");
+            for(int m=0; m < aspectsConf.length; m++) {
+                AspectDescription adesc = DefaultAspectDescription.newInstance(aspectsConf[m]);
+                instanceDesc.addAspectDescription( adesc );
             }
 
-            DefaultAspectDataHandler handler = new DefaultAspectDataHandler(desc, this.storeSelector);
             DefaultAspectDataHandler instanceHandler = new DefaultAspectDataHandler(instanceDesc, this.storeSelector);
-            this.coplets.put(name, new Object[] {desc, handler, instanceHandler});
+            this.coplets.put(name, new Object[] {desc, instanceHandler});
             this.descriptions.add(desc);
         }
     }

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/Producible.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/Producible.java?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/Producible.java (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/Producible.java Sun Sep 11 10:29:57 2005
@@ -15,19 +15,14 @@
  */
 package org.apache.cocoon.portal.factory;
 
-import org.apache.cocoon.portal.aspect.Aspectalizable;
-
-
-
 /**
  * This interface marks an object that can be created by a factory.
  * 
  * @author <a href="mailto:cziegeler@s-und-n.de">Carsten Ziegeler</a>
  * 
- * @version CVS $Id: Producible.java,v 1.3 2004/03/05 13:02:12 bdelacretaz Exp $
+ * @version CVS $Id$
  */
-public interface Producible 
-    extends Aspectalizable {
+public interface Producible {
     
     /**
      * The name given from the factory

Added: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/impl/SimpleAbstractProducible.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/impl/SimpleAbstractProducible.java?rev=280156&view=auto
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/impl/SimpleAbstractProducible.java (added)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/impl/SimpleAbstractProducible.java Sun Sep 11 10:29:57 2005
@@ -0,0 +1,96 @@
+/*
+ * Copyright 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.
+ * 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.factory.impl;
+
+import org.apache.cocoon.portal.factory.Producible;
+import org.apache.cocoon.portal.factory.ProducibleDescription;
+
+
+
+/**
+ * This is a simple implementation of {@link org.apache.cocoon.portal.factory.Producible}
+ * which does not support aspects.
+ *
+ * @version $Id$
+ */
+public abstract class SimpleAbstractProducible  
+    implements Producible {
+    
+    protected String name;
+
+    protected String id;
+    
+    transient protected ProducibleDescription description;
+    
+    /**
+     * @return The configured name
+     */
+    public String getName() {
+        return name;
+    }
+
+    /**
+     * @param string
+     */
+    public void setName(String string) {
+        name = string;
+    }
+
+    /**
+     * Set the layout description
+     */
+    public void setDescription(ProducibleDescription description) {
+        this.description = description;
+    }
+
+    /**
+     * Get the unique id of this object
+     * @return String Unique id
+     */
+    public String getId() {
+        return this.id;
+    }
+
+    /**
+     * Set the unique id of this object
+     */
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    /**
+     * Initialize the object. This should only be called once directly
+     * after the creation
+     */
+    public void initialize(String name, String id) {
+        this.name = name;
+        this.id = id;
+    }
+
+    /* (non-Javadoc)
+     * @see java.lang.Object#clone()
+     */
+    protected Object clone() throws CloneNotSupportedException {
+        SimpleAbstractProducible clone = (SimpleAbstractProducible)super.clone();
+        
+        clone.name = this.name;
+        clone.id = this.id;
+        clone.description = this.description;
+        
+        return clone;
+    }
+    
+}

Propchange: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/impl/SimpleAbstractProducible.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/factory/impl/SimpleAbstractProducible.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/Layout.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/Layout.java?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/Layout.java (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/Layout.java Sun Sep 11 10:29:57 2005
@@ -15,6 +15,7 @@
  */
 package org.apache.cocoon.portal.layout;
 
+import org.apache.cocoon.portal.aspect.Aspectalizable;
 import org.apache.cocoon.portal.factory.Producible;
 
 
@@ -26,7 +27,7 @@
  * @version CVS $Id$
  */
 public interface Layout 
-    extends Parameters, Producible {
+    extends Parameters, Producible, Aspectalizable {
 
     /**
      * Get the name of the {@link org.apache.cocoon.portal.layout.renderer.Renderer} to draw this layout.

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/FullScreenCopletAspect.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/FullScreenCopletAspect.java?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/FullScreenCopletAspect.java (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/FullScreenCopletAspect.java Sun Sep 11 10:29:57 2005
@@ -16,6 +16,7 @@
 package org.apache.cocoon.portal.layout.renderer.aspect.impl;
 
 import org.apache.cocoon.portal.PortalService;
+import org.apache.cocoon.portal.coplet.CopletDataFeatures;
 import org.apache.cocoon.portal.coplet.CopletInstanceData;
 import org.apache.cocoon.portal.event.impl.FullScreenCopletEvent;
 import org.apache.cocoon.portal.layout.Layout;
@@ -62,8 +63,8 @@
         
         CopletInstanceData cid = ((CopletLayout)layout).getCopletInstanceData();
 
-        Boolean supportsFullScreen = (Boolean)cid.getCopletData().getAspectData("full-screen");
-        if ( supportsFullScreen == null || supportsFullScreen.equals(Boolean.TRUE) ) {
+        boolean supportsFullScreen = CopletDataFeatures.supportsFullScreenMode(cid.getCopletData());
+        if ( supportsFullScreen ) {
             final Layout fullScreenLayout = service.getEntryLayout(null);
             if ( fullScreenLayout != null && fullScreenLayout.equals( layout )) {
                 FullScreenCopletEvent event = new FullScreenCopletEvent( cid, null );

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/RemovableAspect.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/RemovableAspect.java?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/RemovableAspect.java (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/RemovableAspect.java Sun Sep 11 10:29:57 2005
@@ -16,6 +16,7 @@
 package org.apache.cocoon.portal.layout.renderer.aspect.impl;
 
 import org.apache.cocoon.portal.PortalService;
+import org.apache.cocoon.portal.coplet.CopletDataFeatures;
 import org.apache.cocoon.portal.coplet.CopletInstanceData;
 import org.apache.cocoon.portal.event.impl.LayoutRemoveEvent;
 import org.apache.cocoon.portal.layout.Layout;
@@ -43,7 +44,7 @@
  * @author <a href="mailto:cziegeler@s-und-n.de">Carsten Ziegeler</a>
  * @author <a href="mailto:volker.schmitt@basf-it-services.com">Volker Schmitt</a>
  * 
- * @version CVS $Id: RemovableAspect.java,v 1.7 2004/04/25 20:09:34 haul Exp $
+ * @version CVS $Id$
  */
 public class RemovableAspect 
     extends AbstractAspect {
@@ -59,8 +60,8 @@
         
         CopletInstanceData cid = ((CopletLayout)layout).getCopletInstanceData();
 
-        Boolean mandatory = (Boolean)cid.getCopletData().getAspectData("mandatory");
-        if ( !mandatory.booleanValue() ) {
+        boolean mandatory = CopletDataFeatures.isMandatory(cid.getCopletData());
+        if ( !mandatory ) {
             LayoutRemoveEvent lre = new LayoutRemoveEvent(layout);
             XMLUtils.createElement(handler, "remove-uri", service.getComponentManager().getLinkService().getLinkURI(lre));
         }

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/SizingAspect.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/SizingAspect.java?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/SizingAspect.java (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/SizingAspect.java Sun Sep 11 10:29:57 2005
@@ -16,6 +16,7 @@
 package org.apache.cocoon.portal.layout.renderer.aspect.impl;
 
 import org.apache.cocoon.portal.PortalService;
+import org.apache.cocoon.portal.coplet.CopletDataFeatures;
 import org.apache.cocoon.portal.coplet.CopletInstanceData;
 import org.apache.cocoon.portal.coplet.status.SizingStatus;
 import org.apache.cocoon.portal.event.impl.ChangeCopletInstanceAspectDataEvent;
@@ -53,24 +54,24 @@
  * @author <a href="mailto:cziegeler@s-und-n.de">Carsten Ziegeler</a>
  * @author <a href="mailto:volker.schmitt@basf-it-services.com">Volker Schmitt</a>
  * 
- * @version CVS $Id: SizingAspect.java,v 1.9 2004/04/25 20:09:34 haul Exp $
+ * @version CVS $Id$
  */
 public class SizingAspect extends AbstractAspect {
 
-	/* (non-Javadoc)
+	/**
 	 * @see org.apache.cocoon.portal.layout.renderer.RendererAspect#toSAX(org.apache.cocoon.portal.layout.renderer.RendererAspectContext, org.apache.cocoon.portal.layout.Layout, org.apache.cocoon.portal.PortalService, org.xml.sax.ContentHandler)
 	 */
 	public void toSAX(RendererAspectContext context,
-                		Layout layout,
-                		PortalService service,
-                		ContentHandler handler)
+              	      Layout layout,
+                      PortalService service,
+                      ContentHandler handler)
 	throws SAXException {
         
         CopletInstanceData cid = ((CopletLayout)layout).getCopletInstanceData();
 
         boolean showContent = true;
         
-        boolean sizable = ((Boolean)cid.getCopletData().getAspectData("sizable")).booleanValue();
+        boolean sizable = CopletDataFeatures.isSizable(cid.getCopletData());
         Integer size = null;
         
         if ( sizable ) {

Modified: cocoon/trunk/status.xml
URL: http://svn.apache.org/viewcvs/cocoon/trunk/status.xml?rev=280156&r1=280155&r2=280156&view=diff
==============================================================================
--- cocoon/trunk/status.xml (original)
+++ cocoon/trunk/status.xml Sun Sep 11 10:29:57 2005
@@ -198,6 +198,9 @@
 
   <changes>
   <release version="@version@" date="@date@">
+    <action dev="CZ" type="add">
+      Portal block: Remove aspect datas from coplet datas. Attributes are now used instead.
+    </action>
     <action dev="JHS" type="fix" fixes-bug="35537" due-to="Mark H. Butler" due-to-email="mark-h.butler@hp.com">
       Deli block updated to use the latest revision of DELI. This uses a more robust method of loading configuration 
       files that should ensure DELI works on different apps servers or deployed as a WAR.