You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by sk...@apache.org on 2008/06/22 20:31:47 UTC
svn commit: r670392 -
/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/
Author: skitching
Date: Sun Jun 22 11:31:46 2008
New Revision: 670392
URL: http://svn.apache.org/viewvc?rev=670392&view=rev
Log:
Create a new base class (ViewEntityMeta) to hold data common to ComponentMeta, ConverterMeta, ValidatorMeta.
Also simplify the xml writing code a bit.
And add comments.
Added:
myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ViewEntityMeta.java (with props)
Modified:
myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ClassMeta.java
myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ComponentMeta.java
myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ConverterMeta.java
myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyHolder.java
myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyMeta.java
myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/RenderKitMeta.java
myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/RendererMeta.java
myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/TagMeta.java
myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ValidatorMeta.java
Modified: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ClassMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ClassMeta.java?rev=670392&r1=670391&r2=670392&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ClassMeta.java (original)
+++ myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ClassMeta.java Sun Jun 22 11:31:46 2008
@@ -56,6 +56,8 @@
*/
public class ClassMeta
{
+ private String _xmlElementName;
+
private String _className;
private String _parentClassName;
@@ -65,20 +67,84 @@
private String _sourceClassParentClassName;
/**
- * Write this model out as xml.
+ * Add digester rules to repopulate an instance of this type from an xml
+ * file.
+ */
+ public static void addXmlRules(Digester digester, String prefix)
+ {
+ digester.addBeanPropertySetter(prefix + "/modelId");
+ digester.addBeanPropertySetter(prefix + "/className");
+ digester.addBeanPropertySetter(prefix + "/parentClassName");
+ digester.addBeanPropertySetter(prefix + "/sourceClassName");
+ digester.addBeanPropertySetter(prefix + "/sourceClassParentClassName");
+ digester.addCallMethod(prefix + "/interfaces/interface",
+ "addInterfaceClassName", 1);
+ digester.addCallParam(prefix + "/interfaces/interface", 0, "name");
+ }
+
+ /**
+ * Constructor.
+ *
+ * Param xmlElementName is the name of the xml element that is created
+ * when method writeXml is invoked.
+ */
+ protected ClassMeta(String xmlElementName)
+ {
+ _xmlElementName = xmlElementName;
+ }
+
+ /**
+ * Write the properties of this instance out as xml.
+ * <p>
+ * The name of the xml element that is created to hold the properties
+ * was specified when the constructor was called.
+ * <p>
+ * Subclasses that want to output their own properties should not
+ * override this method. Instead, they should override writeXmlSimple
+ * (and in rare cases writeXmlComplex).
+ * <p>
+ * Having two write methods (writeXmlSimple/writeXmlComplex) gives some basic
+ * control over the order in which data is written to xml, in order to make
+ * the generated xml look nice. Any properties written in writeXmlSimple will
+ * appear in the output file before properties written by writeXmlComplex.
+ * Therefore, properties which are "easily read" should be written out in
+ * a writeXmlSimple method. Data which has large CDATA blocks, or complicated
+ * nested structure should be written out in a writeXmlComplex method so that
+ * the "simple" stuff can be easily read and is not buried in the middle of
+ * the harder-to-read output.
*/
- public static void writeXml(XmlWriter out, ClassMeta mi)
+ protected void writeXml(XmlWriter out)
{
- out.writeElement("modelId", mi._modelId);
- out.writeElement("className", mi._className);
- out.writeElement("parentClassName", mi._parentClassName);
- out.writeElement("sourceClassName", mi._sourceClassName);
- out.writeElement("sourceClassParentClassName", mi._sourceClassParentClassName);
+ out.beginElement(_xmlElementName);
+ writeXmlSimple(out);
+ writeXmlComplex(out);
+ out.endElement(_xmlElementName);
+ }
- if (!mi._interfaceClassNames.isEmpty())
+ /**
+ * Write this model out as xml.
+ * <p>
+ * Subclasses that wish to write out properties as xml should override
+ * this method, call the super implementation, then call methods on the
+ * XmlWriter object to output their data.
+ */
+ protected void writeXmlSimple(XmlWriter out)
+ {
+ out.writeElement("modelId", _modelId);
+ out.writeElement("className", _className);
+ out.writeElement("parentClassName", _parentClassName);
+ out.writeElement("sourceClassName", _sourceClassName);
+ out.writeElement("sourceClassParentClassName", _sourceClassParentClassName);
+
+ // Interface data is a little complex, and could possibly be placed in the
+ // writeXmlComplex method. But except for very complicated inheritance
+ // hierarchies is is still only going to be a few lines and it logically
+ // belongs with the className/parentClassName/etc data. So it is written here
+ // along with the other "simple" data.
+ if (!_interfaceClassNames.isEmpty())
{
out.beginElement("interfaces");
- for (Iterator i = mi._interfaceClassNames.iterator(); i.hasNext();)
+ for (Iterator i = _interfaceClassNames.iterator(); i.hasNext();)
{
String name = (String) i.next();
out.beginElement("interface");
@@ -90,19 +156,21 @@
}
/**
- * Add digester rules to repopulate an instance of this type from an xml
- * file.
+ * See documentation for writeXml and writeXmlSimple methods.
*/
- public static void addXmlRules(Digester digester, String prefix)
+ protected void writeXmlComplex(XmlWriter out)
{
- digester.addBeanPropertySetter(prefix + "/modelId");
- digester.addBeanPropertySetter(prefix + "/className");
- digester.addBeanPropertySetter(prefix + "/parentClassName");
- digester.addBeanPropertySetter(prefix + "/sourceClassName");
- digester.addBeanPropertySetter(prefix + "/sourceClassParentClassName");
- digester.addCallMethod(prefix + "/interfaces/interface",
- "addInterfaceClassName", 1);
- digester.addCallParam(prefix + "/interfaces/interface", 0, "name");
+ // no complex data to write for this class.
+ }
+
+ /**
+ * Merge any inheritable data from the specified "other" instance into
+ * the metadata held by this instance.
+ */
+ protected void merge(ClassMeta other)
+ {
+ // There is nothing to merge between two ClassMeta objects;
+ // none of the properties on this class are inheritable.
}
/**
Modified: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ComponentMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ComponentMeta.java?rev=670392&r1=670391&r2=670392&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ComponentMeta.java (original)
+++ myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ComponentMeta.java Sun Jun 22 11:31:46 2008
@@ -24,25 +24,18 @@
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
-import java.util.logging.Logger;
import org.apache.commons.digester.Digester;
import org.apache.commons.lang.StringUtils;
import org.apache.myfaces.buildtools.maven2.plugin.builder.io.XmlWriter;
/**
- * Store metadata about a class that is either a JSF UIComponent, or some base
+ * Store metadata about a JSF UIComponent, or some base
* class or interface that a UIComponent can be derived from.
*/
-public class ComponentMeta extends ClassMeta implements
+public class ComponentMeta extends ViewEntityMeta implements
PropertyHolder, FacetHolder
{
- static private final Logger _LOG = Logger.getLogger(ComponentMeta.class
- .getName());
-
- private String _name;
- private String _description;
- private String _longDescription;
private String _bodyContent;
private String _type;
@@ -63,49 +56,35 @@
private Boolean _template;
- protected Map _properties;
protected Map _facets;
/**
* Write an instance of this class out as xml.
*/
- public static void writeXml(XmlWriter out, ComponentMeta cm)
+ protected void writeXmlSimple(XmlWriter out)
{
- out.beginElement("component");
-
- ClassMeta.writeXml(out, cm);
+ super.writeXmlSimple(out);
- out.writeElement("name", cm._name);
- out.writeElement("type", cm._type);
- out.writeElement("bodyContent", cm._bodyContent);
- out.writeElement("family", cm._family);
- out.writeElement("tagClass", cm._tagClass);
- out.writeElement("tagSuperclass", cm._tagSuperclass);
- out.writeElement("tagHandler", cm._tagHandler);
- out.writeElement("rendererType", cm._rendererType);
- out.writeElement("configExcluded", cm._configExcluded);
-
- out.writeElement("desc", cm._description);
- out.writeElement("longDesc", cm._longDescription);
- out.writeElement("serialuid", cm._serialuid);
- out.writeElement("implements", cm._implements);
- out.writeElement("generatedComponentClass", cm._generatedComponentClass);
- out.writeElement("generatedTagClass", cm._generatedTagClass);
- out.writeElement("template", cm._template);
-
- for (Iterator i = cm._properties.values().iterator(); i.hasNext();)
- {
- PropertyMeta prop = (PropertyMeta) i.next();
- PropertyMeta.writeXml(out, prop);
- }
+ out.writeElement("type", _type);
+ out.writeElement("bodyContent", _bodyContent);
+ out.writeElement("family", _family);
+ out.writeElement("tagClass", _tagClass);
+ out.writeElement("tagSuperclass", _tagSuperclass);
+ out.writeElement("tagHandler", _tagHandler);
+ out.writeElement("rendererType", _rendererType);
+ out.writeElement("configExcluded", _configExcluded);
+
+ out.writeElement("serialuid", _serialuid);
+ out.writeElement("implements", _implements);
+ out.writeElement("generatedComponentClass", _generatedComponentClass);
+ out.writeElement("generatedTagClass", _generatedTagClass);
+ out.writeElement("template", _template);
- for (Iterator i = cm._facets.values().iterator(); i.hasNext();)
+ for (Iterator i = _facets.values().iterator(); i.hasNext();)
{
FacetMeta facet = (FacetMeta) i.next();
FacetMeta.writeXml(out, facet);
}
-
- out.endElement("component");
}
/**
@@ -119,9 +98,8 @@
digester.addObjectCreate(newPrefix, ComponentMeta.class);
digester.addSetNext(newPrefix, "addComponent");
- ClassMeta.addXmlRules(digester, newPrefix);
+ ViewEntityMeta.addXmlRules(digester, newPrefix);
- digester.addBeanPropertySetter(newPrefix + "/name");
digester.addBeanPropertySetter(newPrefix + "/type");
digester.addBeanPropertySetter(newPrefix + "/bodyContent");
digester.addBeanPropertySetter(newPrefix + "/family");
@@ -130,9 +108,6 @@
digester.addBeanPropertySetter(newPrefix + "/tagHandler");
digester.addBeanPropertySetter(newPrefix + "/rendererType");
digester.addBeanPropertySetter(newPrefix + "/faceletRendererType");
- digester.addBeanPropertySetter(newPrefix + "/desc", "description");
- digester.addBeanPropertySetter(newPrefix + "/longDesc",
- "longDescription");
digester.addBeanPropertySetter(newPrefix + "/configExcluded");
digester.addBeanPropertySetter(newPrefix + "/serialuid");
digester.addBeanPropertySetter(newPrefix + "/implements");
@@ -140,7 +115,6 @@
digester.addBeanPropertySetter(newPrefix + "/generatedTagClass");
digester.addBeanPropertySetter(newPrefix + "/template");
- PropertyMeta.addXmlRules(digester, newPrefix);
FacetMeta.addXmlRules(digester, prefix);
}
@@ -149,7 +123,7 @@
*/
public ComponentMeta()
{
- _properties = new LinkedHashMap();
+ super("component");
_facets = new LinkedHashMap();
}
@@ -159,11 +133,7 @@
*/
public void merge(ComponentMeta other)
{
- //_name = ModelUtils.merge(this._name, other._name);
_bodyContent = ModelUtils.merge(this._bodyContent, other._bodyContent);
- _description = ModelUtils.merge(this._description, other._description);
- _longDescription = ModelUtils.merge(this._longDescription,
- other._longDescription);
_type = ModelUtils.merge(this._type, other._type);
_family = ModelUtils.merge(this._family, other._family);
@@ -226,53 +196,6 @@
}
}
- /**
- * Sets the name that the user will refer to instances of this component by.
- * <p>
- * In JSP tags, this value will be used as the JSP tag name.
- * <p>
- * This property is optional; if not set then this Model instance represents
- * a base class that components can be derived from, but which cannot itself
- * be instantiated as a component.
- */
- public void setName(String name)
- {
- _name = name;
- }
-
- public String getName()
- {
- return _name;
- }
-
- /**
- * Sets the brief description of this property.
- * <p>
- * This description is used in tooltips, etc.
- */
- public void setDescription(String description)
- {
- _description = description;
- }
-
- public String getDescription()
- {
- return _description;
- }
-
- /**
- * Sets the long description of this property.
- */
- public void setLongDescription(String longDescription)
- {
- _longDescription = longDescription;
- }
-
- public String getLongDescription()
- {
- return _longDescription;
- }
-
public void setBodyContent(String bodyContent)
{
this._bodyContent = bodyContent;
@@ -453,43 +376,6 @@
return ModelUtils.defaultOf(_children, true);
}
- /**
- * Adds a property to this component.
- */
- public void addProperty(PropertyMeta property)
- {
- _properties.put(property.getName(), property);
- }
-
- public PropertyMeta getProperty(String propertyName)
- {
- return (PropertyMeta) _properties.get(propertyName);
- }
-
- /**
- * Number of properties for this component
- */
- public int propertiesSize()
- {
- return _properties.size();
- }
-
- /**
- * Returns true if this component has any properties.
- */
- public boolean hasProperties()
- {
- return _properties.size() > 0;
- }
-
- /**
- * Returns an iterator for all properties
- */
- public Iterator properties()
- {
- return _properties.values().iterator();
- }
-
public void addFacet(FacetMeta prop)
{
_facets.put(prop.getName(), prop);
@@ -507,10 +393,6 @@
//THIS METHODS ARE USED FOR VELOCITY TO GET DATA AND GENERATE CLASSES
- public Collection getPropertyList(){
- return _properties.values();
- }
-
public Collection getFacetList(){
return _facets.values();
}
@@ -520,7 +402,7 @@
public Collection getPropertyTagList(){
if (_propertyTagList == null){
_propertyTagList = new ArrayList();
- for (Iterator it = _properties.values().iterator(); it.hasNext();){
+ for (Iterator it = getPropertyList().iterator(); it.hasNext();){
PropertyMeta prop = (PropertyMeta) it.next();
if (!prop.isTagExcluded().booleanValue() &&
!prop.isInheritedTag().booleanValue()){
@@ -537,7 +419,7 @@
public Collection getPropertyComponentList(){
if (_propertyComponentList == null){
_propertyComponentList = new ArrayList();
- for (Iterator it = _properties.values().iterator(); it.hasNext();){
+ for (Iterator it = getPropertyList().iterator(); it.hasNext();){
PropertyMeta prop = (PropertyMeta) it.next();
if (!prop.isInherited().booleanValue() && prop.isGenerated().booleanValue()){
_propertyComponentList.add(prop);
Modified: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ConverterMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ConverterMeta.java?rev=670392&r1=670391&r2=670392&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ConverterMeta.java (original)
+++ myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ConverterMeta.java Sun Jun 22 11:31:46 2008
@@ -22,10 +22,7 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
-import java.util.LinkedHashMap;
import java.util.List;
-import java.util.Map;
-import java.util.logging.Logger;
import org.apache.commons.digester.Digester;
import org.apache.myfaces.buildtools.maven2.plugin.builder.io.XmlWriter;
@@ -41,20 +38,13 @@
* <li>implicitly used via its forClass property
* </ul>
*/
-public class ConverterMeta extends ClassMeta implements PropertyHolder
+public class ConverterMeta extends ViewEntityMeta implements PropertyHolder
{
- static private final Logger _LOG = Logger.getLogger(ConverterMeta.class
- .getName());
-
- private String _description;
- private String _longDescription;
-
private String _converterId;
private int _converterClassModifiers;
//Some converters has its own tag class, so it's necessary to
//add some properties for this cases (f:convertNumber or f:convertDateTime)
- private String _name;
private String _bodyContent;
private String _tagClass;
private String _tagSuperclass;
@@ -63,34 +53,19 @@
private Boolean _generatedTagClass;
private Boolean _configExcluded;
- protected Map _properties;
/**
* Write an instance of this class out as xml.
*/
- public static void writeXml(XmlWriter out, ConverterMeta cm)
+ protected void writeXmlSimple(XmlWriter out)
{
- out.beginElement("converter");
-
- ClassMeta.writeXml(out, cm);
-
- out.writeElement("converterId", cm._converterId);
- out.writeElement("desc", cm._description);
- out.writeElement("longDesc", cm._longDescription);
- out.writeElement("name", cm._name);
- out.writeElement("bodyContent", cm._bodyContent);
- out.writeElement("tagClass", cm._tagClass);
- out.writeElement("tagSuperclass", cm._tagSuperclass);
- out.writeElement("serialuidtag", cm._serialuidtag);
- out.writeElement("generatedTagClass", cm._generatedTagClass);
- out.writeElement("configExcluded", cm._configExcluded);
-
- for (Iterator i = cm._properties.values().iterator(); i.hasNext();)
- {
- PropertyMeta prop = (PropertyMeta) i.next();
- PropertyMeta.writeXml(out, prop);
- }
-
- out.endElement("converter");
+ super.writeXmlSimple(out);
+ out.writeElement("converterId", _converterId);
+ out.writeElement("bodyContent", _bodyContent);
+ out.writeElement("tagClass", _tagClass);
+ out.writeElement("tagSuperclass", _tagSuperclass);
+ out.writeElement("serialuidtag", _serialuidtag);
+ out.writeElement("generatedTagClass", _generatedTagClass);
+ out.writeElement("configExcluded", _configExcluded);
}
/**
@@ -104,27 +79,22 @@
digester.addObjectCreate(newPrefix, ConverterMeta.class);
digester.addSetNext(newPrefix, "addConverter");
- ClassMeta.addXmlRules(digester, newPrefix);
+ ViewEntityMeta.addXmlRules(digester, newPrefix);
digester.addBeanPropertySetter(newPrefix + "/converterId");
- digester.addBeanPropertySetter(newPrefix + "/desc", "description");
- digester.addBeanPropertySetter(newPrefix + "/longDesc",
- "longDescription");
- digester.addBeanPropertySetter(newPrefix + "/name");
digester.addBeanPropertySetter(newPrefix + "/bodyContent");
digester.addBeanPropertySetter(newPrefix + "/tagClass");
digester.addBeanPropertySetter(newPrefix + "/tagSuperclass");
digester.addBeanPropertySetter(newPrefix + "/serialuidtag");
digester.addBeanPropertySetter(newPrefix + "/generatedTagClass");
digester.addBeanPropertySetter(newPrefix + "/configExcluded");
-
- PropertyMeta.addXmlRules(digester, newPrefix);
}
public ConverterMeta()
{
- _properties = new LinkedHashMap();
+ super("converter");
}
+
/**
* Merge the data in the specified other property into this one, throwing an
* exception if there is an incompatibility.
@@ -135,12 +105,8 @@
*/
public void merge(ConverterMeta other)
{
- _name = ModelUtils.merge(this._name, other._name);
+ super.merge(other);
_bodyContent = ModelUtils.merge(this._bodyContent, other._bodyContent);
-
- _description = ModelUtils.merge(this._description, other._description);
- _longDescription = ModelUtils.merge(this._longDescription,
- other._longDescription);
boolean inheritParentTag = false;
//check if the parent set a tag class
@@ -160,7 +126,6 @@
_converterId = ModelUtils.merge(this._converterId, other._converterId);
- ModelUtils.mergeProps(this, other);
// TODO: _converterClassMOdifiers
if (inheritParentTag)
@@ -241,53 +206,6 @@
return modifiers;
}
- /**
- * Sets the brief description of this property.
- * <p>
- * This description is used in tooltips, etc.
- */
- public void setDescription(String description)
- {
- _description = description;
- }
-
- public String getDescription()
- {
- return _description;
- }
-
- /**
- * Sets the long description of this property.
- */
- public void setLongDescription(String longDescription)
- {
- _longDescription = longDescription;
- }
-
- public String getLongDescription()
- {
- return _longDescription;
- }
-
- /**
- * Sets the name that the user will refer to instances of this component by.
- * <p>
- * In JSP tags, this value will be used as the JSP tag name.
- * <p>
- * This property is optional; if not set then this Model instance represents
- * a base class that components can be derived from, but which cannot itself
- * be instantiated as a component.
- */
- public void setName(String name)
- {
- _name = name;
- }
-
- public String getName()
- {
- return _name;
- }
-
public void setBodyContent(String bodyContent)
{
this._bodyContent = bodyContent;
@@ -353,56 +271,15 @@
{
return ModelUtils.defaultOf(_configExcluded,false);
}
-
- /**
- * Adds a property to this component.
- */
- public void addProperty(PropertyMeta property)
- {
- _properties.put(property.getName(), property);
- }
-
- public PropertyMeta getProperty(String propertyName)
- {
- return (PropertyMeta) _properties.get(propertyName);
- }
- /**
- * Number of properties for this component
- */
- public int propertiesSize()
- {
- return _properties.size();
- }
-
- /**
- * Returns true if this component has any properties.
- */
- public boolean hasProperties()
- {
- return _properties.size() > 0;
- }
-
- /**
- * Returns an iterator for all properties
- */
- public Iterator properties()
- {
- return _properties.values().iterator();
- }
-
//THIS METHODS ARE USED FOR VELOCITY TO GET DATA AND GENERATE CLASSES
- public Collection getPropertyList(){
- return _properties.values();
- }
-
private List _propertyTagList = null;
public Collection getPropertyTagList(){
if (_propertyTagList == null){
_propertyTagList = new ArrayList();
- for (Iterator it = _properties.values().iterator(); it.hasNext();){
+ for (Iterator it = getPropertyList().iterator(); it.hasNext();){
PropertyMeta prop = (PropertyMeta) it.next();
if (!prop.isTagExcluded().booleanValue() &&
!prop.isInheritedTag().booleanValue()){
Modified: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyHolder.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyHolder.java?rev=670392&r1=670391&r2=670392&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyHolder.java (original)
+++ myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyHolder.java Sun Jun 22 11:31:46 2008
@@ -19,6 +19,7 @@
package org.apache.myfaces.buildtools.maven2.plugin.builder.model;
import java.util.Iterator;
+import java.util.Map;
/**
* Interface for any artifact that has JSF properties on it.
@@ -30,4 +31,6 @@
PropertyMeta getProperty(String name);
void addProperty(PropertyMeta prop);
+
+ Map getProperties();
}
Modified: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyMeta.java?rev=670392&r1=670391&r2=670392&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyMeta.java (original)
+++ myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/PropertyMeta.java Sun Jun 22 11:31:46 2008
@@ -379,12 +379,23 @@
{
return ModelUtils.defaultOf(_inherited, false);
}
-
+
public void setInheritedTag(Boolean inheritedTag)
{
_inheritedTag = inheritedTag;
}
+ /**
+ * Returns true if this property was inherited from an ancestor component
+ * which has no associated tag class.
+ * <p>
+ * When a tag class is generated for <i>this</i> component, then the tag
+ * class will need to define a setter method to handle this property.
+ * <p>
+ * However properties which are inherited from an ancestor component that
+ * does have a tag class will not need
+ * @param inheritedTag
+ */
public Boolean isInheritedTag()
{
return ModelUtils.defaultOf(_inheritedTag, false);
Modified: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/RenderKitMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/RenderKitMeta.java?rev=670392&r1=670391&r2=670392&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/RenderKitMeta.java (original)
+++ myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/RenderKitMeta.java Sun Jun 22 11:31:46 2008
@@ -48,7 +48,7 @@
for (Iterator it = rkm._renderers.values().iterator();it.hasNext();){
RendererMeta rm = (RendererMeta) it.next();
- RendererMeta.writeXml(out, rm);
+ rm.writeXml(out);
}
out.endElement("renderKit");
Modified: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/RendererMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/RendererMeta.java?rev=670392&r1=670391&r2=670392&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/RendererMeta.java (original)
+++ myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/RendererMeta.java Sun Jun 22 11:31:46 2008
@@ -28,7 +28,6 @@
*/
public class RendererMeta extends ClassMeta
{
-
private String _description;
private String _componentFamily;
private String _rendererType;
@@ -36,17 +35,13 @@
/**
* Write an instance of this class out as xml.
*/
- public static void writeXml(XmlWriter out, RendererMeta rm)
+ protected void writeXmlSimple(XmlWriter out)
{
- out.beginElement("renderer");
-
- ClassMeta.writeXml(out, rm);
-
- out.writeElement("componentFamily", rm._componentFamily);
- out.writeElement("rendererType", rm._rendererType);
- out.writeElement("description", rm._description);
+ super.writeXmlSimple(out);
- out.endElement("renderer");
+ out.writeElement("componentFamily", _componentFamily);
+ out.writeElement("rendererType", _rendererType);
+ out.writeElement("description", _description);
}
/**
@@ -72,6 +67,7 @@
*/
public RendererMeta()
{
+ super("renderer");
}
/**
Modified: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/TagMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/TagMeta.java?rev=670392&r1=670391&r2=670392&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/TagMeta.java (original)
+++ myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/TagMeta.java Sun Jun 22 11:31:46 2008
@@ -71,24 +71,21 @@
/**
* Write an instance of this class out as xml.
*/
- public static void writeXml(XmlWriter out, TagMeta tm)
+ protected void writeXmlSimple(XmlWriter out)
{
- out.beginElement("tag");
+ super.writeXmlSimple(out);
- ClassMeta.writeXml(out, tm);
- out.writeElement("name", tm._name);
- out.writeElement("bodyContent", tm._bodyContent);
- out.writeElement("desc", tm._description);
- out.writeElement("longDesc", tm._longDescription);
- out.writeElement("tagHandler", tm._tagHandler);
+ out.writeElement("name", _name);
+ out.writeElement("bodyContent", _bodyContent);
+ out.writeElement("desc", _description);
+ out.writeElement("longDesc", _longDescription);
+ out.writeElement("tagHandler", _tagHandler);
- for (Iterator i = tm._attributes.values().iterator(); i.hasNext();)
+ for (Iterator i = _attributes.values().iterator(); i.hasNext();)
{
AttributeMeta prop = (AttributeMeta) i.next();
AttributeMeta.writeXml(out, prop);
}
-
- out.endElement("tag");
}
/**
@@ -118,6 +115,7 @@
*/
public TagMeta()
{
+ super("tag");
_attributes = new LinkedHashMap();
}
Modified: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ValidatorMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ValidatorMeta.java?rev=670392&r1=670391&r2=670392&view=diff
==============================================================================
--- myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ValidatorMeta.java (original)
+++ myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ValidatorMeta.java Sun Jun 22 11:31:46 2008
@@ -22,10 +22,7 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
-import java.util.LinkedHashMap;
import java.util.List;
-import java.util.Map;
-import java.util.logging.Logger;
import org.apache.commons.digester.Digester;
import org.apache.myfaces.buildtools.maven2.plugin.builder.io.XmlWriter;
@@ -34,18 +31,11 @@
* Store metadata about a class that is either a JSF Validator, or some base
* class or interface that a Validator can be derived from.
*/
-public class ValidatorMeta extends ClassMeta implements PropertyHolder
+public class ValidatorMeta extends ViewEntityMeta implements PropertyHolder
{
- static private final Logger _LOG = Logger.getLogger(ValidatorMeta.class
- .getName());
-
- private String _description;
- private String _longDescription;
-
private String _validatorId;
private int _validatorClassModifiers;
- private String _name;
private String _bodyContent;
private String _tagClass;
private String _tagSuperclass;
@@ -54,38 +44,22 @@
private Boolean _generatedComponentClass;
private Boolean _generatedTagClass;
private Boolean _configExcluded;
-
- protected Map _properties;
/**
* Write an instance of this class out as xml.
*/
- public static void writeXml(XmlWriter out, ValidatorMeta vm)
+ protected void writeXmlSimple(XmlWriter out)
{
- out.beginElement("validator");
-
- ClassMeta.writeXml(out, vm);
-
- out.writeElement("validatorId", vm._validatorId);
- out.writeElement("desc", vm._description);
- out.writeElement("longDesc", vm._longDescription);
- out.writeElement("name", vm._name);
- out.writeElement("bodyContent", vm._bodyContent);
- out.writeElement("tagClass", vm._tagClass);
- out.writeElement("tagSuperclass", vm._tagSuperclass);
- out.writeElement("serialuidtag", vm._serialuidtag);
- out.writeElement("generatedComponentClass", vm._generatedComponentClass);
- out.writeElement("generatedTagClass", vm._generatedTagClass);
- out.writeElement("configExcluded", vm._configExcluded);
+ super.writeXmlSimple(out);
- for (Iterator i = vm._properties.values().iterator(); i.hasNext();)
- {
- PropertyMeta prop = (PropertyMeta) i.next();
- PropertyMeta.writeXml(out, prop);
- }
-
-
- out.endElement("validator");
+ out.writeElement("validatorId", _validatorId);
+ out.writeElement("bodyContent", _bodyContent);
+ out.writeElement("tagClass", _tagClass);
+ out.writeElement("tagSuperclass", _tagSuperclass);
+ out.writeElement("serialuidtag", _serialuidtag);
+ out.writeElement("generatedComponentClass", _generatedComponentClass);
+ out.writeElement("generatedTagClass", _generatedTagClass);
+ out.writeElement("configExcluded", _configExcluded);
}
/**
@@ -99,13 +73,9 @@
digester.addObjectCreate(newPrefix, ValidatorMeta.class);
digester.addSetNext(newPrefix, "addValidator");
- ClassMeta.addXmlRules(digester, newPrefix);
+ ViewEntityMeta.addXmlRules(digester, newPrefix);
digester.addBeanPropertySetter(newPrefix + "/validatorId");
- digester.addBeanPropertySetter(newPrefix + "/desc", "description");
- digester.addBeanPropertySetter(newPrefix + "/longDesc",
- "longDescription");
- digester.addBeanPropertySetter(newPrefix + "/name");
digester.addBeanPropertySetter(newPrefix + "/bodyContent");
digester.addBeanPropertySetter(newPrefix + "/tagClass");
digester.addBeanPropertySetter(newPrefix + "/tagSuperclass");
@@ -113,13 +83,11 @@
digester.addBeanPropertySetter(newPrefix + "/generatedComponentClass");
digester.addBeanPropertySetter(newPrefix + "/generatedTagClass");
digester.addBeanPropertySetter(newPrefix + "/configExcluded");
-
- PropertyMeta.addXmlRules(digester, newPrefix);
}
public ValidatorMeta()
{
- _properties = new LinkedHashMap();
+ super("validator");
}
/**
@@ -132,14 +100,20 @@
*/
public void merge(ValidatorMeta other)
{
- _name = ModelUtils.merge(this._name, other._name);
+ super.merge(other);
+
_bodyContent = ModelUtils.merge(this._bodyContent, other._bodyContent);
- _description = ModelUtils.merge(this._description, other._description);
- _longDescription = ModelUtils.merge(this._longDescription,
- other._longDescription);
+ // inheritParentTag is true if the tag class to be generated for this
+ // artifact extends the tag class generated for the parent artifact.
+ // In this case, the tag for this class already inherits setter methods
+ // from its parent that handle all the inherited properties, so the
+ // tag class for this component just needs to handle its own properties.
+ //
+ // But when the tag class for this component does not extend the tag class
+ // for the parent component (because the parent component does not have
+ // a tag class) then we need to
boolean inheritParentTag = false;
- //check if the parent set a tag class
if (other._tagClass != null)
{
//The tagSuperclass is the tagClass of the parent
@@ -157,7 +131,6 @@
_validatorId = ModelUtils.merge(this._validatorId, other._validatorId);
- ModelUtils.mergeProps(this, other);
// TODO: _validatorClassMOdifiers
if (inheritParentTag)
@@ -233,53 +206,6 @@
return modifiers;
}
-
- /**
- * Sets the brief description of this property.
- * <p>
- * This description is used in tooltips, etc.
- */
- public void setDescription(String description)
- {
- _description = description;
- }
-
- public String getDescription()
- {
- return _description;
- }
-
- /**
- * Sets the long description of this property.
- */
- public void setLongDescription(String longDescription)
- {
- _longDescription = longDescription;
- }
-
- public String getLongDescription()
- {
- return _longDescription;
- }
-
- /**
- * Sets the name that the user will refer to instances of this component by.
- * <p>
- * In JSP tags, this value will be used as the JSP tag name.
- * <p>
- * This property is optional; if not set then this Model instance represents
- * a base class that components can be derived from, but which cannot itself
- * be instantiated as a component.
- */
- public void setName(String name)
- {
- _name = name;
- }
-
- public String getName()
- {
- return _name;
- }
public void setBodyContent(String bodyContent)
{
@@ -356,56 +282,22 @@
{
return ModelUtils.defaultOf(_configExcluded,false);
}
-
- /**
- * Adds a property to this component.
- */
- public void addProperty(PropertyMeta property)
- {
- _properties.put(property.getName(), property);
- }
-
- public PropertyMeta getProperty(String propertyName)
- {
- return (PropertyMeta) _properties.get(propertyName);
- }
-
- /**
- * Number of properties for this component
- */
- public int propertiesSize()
- {
- return _properties.size();
- }
-
- /**
- * Returns true if this component has any properties.
- */
- public boolean hasProperties()
- {
- return _properties.size() > 0;
- }
- /**
- * Returns an iterator for all properties
- */
- public Iterator properties()
- {
- return _properties.values().iterator();
- }
-
//THIS METHODS ARE USED FOR VELOCITY TO GET DATA AND GENERATE CLASSES
-
- public Collection getPropertyList(){
- return _properties.values();
- }
-
+
+ // A transient attribute that is computed on-demand from the model data
+ // but is not itself stored in the model.
+ //
+ // It holds a list of all the properties which need to be implemented
+ // on the tag class. This is a subset of the properties available on
+ // this component itself, and depends upon what the parent class
+ // of the generated tag already supports.
private List _propertyTagList = null;
public Collection getPropertyTagList(){
if (_propertyTagList == null){
_propertyTagList = new ArrayList();
- for (Iterator it = _properties.values().iterator(); it.hasNext();){
+ for (Iterator it = getPropertyList().iterator(); it.hasNext();){
PropertyMeta prop = (PropertyMeta) it.next();
if (!prop.isTagExcluded().booleanValue() &&
!prop.isInheritedTag().booleanValue()){
@@ -422,7 +314,7 @@
public Collection getPropertyValidatorList(){
if (_propertyValidatorList == null){
_propertyValidatorList = new ArrayList();
- for (Iterator it = _properties.values().iterator(); it.hasNext();){
+ for (Iterator it = getPropertyList().iterator(); it.hasNext();){
PropertyMeta prop = (PropertyMeta) it.next();
if (!prop.isInherited().booleanValue() && prop.isGenerated().booleanValue()){
_propertyValidatorList.add(prop);
Added: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ViewEntityMeta.java
URL: http://svn.apache.org/viewvc/myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ViewEntityMeta.java?rev=670392&view=auto
==============================================================================
--- myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ViewEntityMeta.java (added)
+++ myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ViewEntityMeta.java Sun Jun 22 11:31:46 2008
@@ -0,0 +1,196 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.myfaces.buildtools.maven2.plugin.builder.model;
+
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+import org.apache.commons.digester.Digester;
+import org.apache.myfaces.buildtools.maven2.plugin.builder.io.XmlWriter;
+
+
+/**
+ * Base class for metadata about any class whose instances can be used in a
+ * JSF view.
+ * <p>
+ * This means Components, Converters, Validators.
+ */
+public abstract class ViewEntityMeta extends ClassMeta implements PropertyHolder
+{
+ private String _name;
+ private String _description;
+ private String _longDescription;
+ private Map _properties = new LinkedHashMap();
+
+ /**
+ * Add digester rules to repopulate an instance of this type from an xml
+ * file.
+ */
+ public static void addXmlRules(Digester digester, String prefix)
+ {
+ ClassMeta.addXmlRules(digester, prefix);
+
+ digester.addBeanPropertySetter(prefix + "/name");
+ digester.addBeanPropertySetter(prefix + "/desc", "description");
+ digester.addBeanPropertySetter(prefix + "/longDesc",
+ "longDescription");
+ PropertyMeta.addXmlRules(digester, prefix);
+ }
+
+ /**
+ * Constructor.
+ */
+ public ViewEntityMeta(String xmlElementName)
+ {
+ super(xmlElementName);
+ }
+
+ /**
+ * Implement callback method to write out the "simple" properties of
+ * this class as xml.
+ */
+ protected void writeXmlSimple(XmlWriter out)
+ {
+ super.writeXmlSimple(out);
+
+ out.writeElement("name", _name);
+ }
+
+ /**
+ * Implement callback method to write out the "complex" properties of
+ * this class as xml.
+ */
+ protected void writeXmlComplex(XmlWriter out)
+ {
+ super.writeXmlComplex(out);
+ out.writeElement("desc", _description);
+ out.writeElement("longDesc", _longDescription);
+ for (Iterator i = _properties.values().iterator(); i.hasNext();)
+ {
+ PropertyMeta prop = (PropertyMeta) i.next();
+ PropertyMeta.writeXml(out, prop);
+ }
+ }
+
+ protected void merge(ViewEntityMeta other)
+ {
+ super.merge(other);
+ // name cannot be merged
+ _description = ModelUtils.merge(this._description, other._description);
+ _longDescription = ModelUtils.merge(this._longDescription,
+ other._longDescription);
+ ModelUtils.mergeProps(this, other);
+ }
+
+
+ /**
+ * Sets the name that the user will refer to instances of this component by.
+ * <p>
+ * In JSP tags, this value will be used as the JSP tag name.
+ * <p>
+ * This property is optional; if not set then this Model instance represents
+ * a base class that components can be derived from, but which cannot itself
+ * be instantiated as a component.
+ */
+ public void setName(String name)
+ {
+ _name = name;
+ }
+
+ public String getName()
+ {
+ return _name;
+ }
+
+ /**
+ * Sets the brief description of this property.
+ * <p>
+ * This description is used in tooltips, etc.
+ */
+ public void setDescription(String description)
+ {
+ _description = description;
+ }
+
+ public String getDescription()
+ {
+ return _description;
+ }
+
+ /**
+ * Sets the long description of this property.
+ */
+ public void setLongDescription(String longDescription)
+ {
+ _longDescription = longDescription;
+ }
+
+ public String getLongDescription()
+ {
+ return _longDescription;
+ }
+
+ /**
+ * Adds a property to this component.
+ */
+ public void addProperty(PropertyMeta property)
+ {
+ _properties.put(property.getName(), property);
+ }
+
+ public PropertyMeta getProperty(String propertyName)
+ {
+ return (PropertyMeta) _properties.get(propertyName);
+ }
+
+ /**
+ * Number of properties for this component
+ */
+ public int propertiesSize()
+ {
+ return _properties.size();
+ }
+
+ /**
+ * Returns true if this component has any properties.
+ */
+ public boolean hasProperties()
+ {
+ return _properties.size() > 0;
+ }
+
+ public Map getProperties()
+ {
+ return _properties;
+ }
+
+ public Collection getPropertyList(){
+ return _properties.values();
+ }
+
+ /**
+ * Returns an iterator for all properties
+ */
+ public Iterator properties()
+ {
+ return _properties.values().iterator();
+ }
+}
\ No newline at end of file
Propchange: myfaces/myfaces-build-tools/trunk/maven2-plugins/myfaces-builder-plugin/src/main/java/org/apache/myfaces/buildtools/maven2/plugin/builder/model/ViewEntityMeta.java
------------------------------------------------------------------------------
svn:eol-style = native