You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by de...@apache.org on 2017/09/17 18:05:26 UTC
[myfaces-trinidad-maven] 02/04: Merge revision 1026414
This is an automated email from the ASF dual-hosted git repository.
deki pushed a commit to branch 1.2.12.1-branch
in repository https://gitbox.apache.org/repos/asf/myfaces-trinidad-maven.git
commit 7f8dfcb796301ad911360869094ad083f8f03c72
Author: Andrew Robinson <ar...@apache.org>
AuthorDate: Thu Nov 4 23:08:56 2010 +0000
Merge revision 1026414
---
maven-faces-plugin/pom.xml | 2 +-
.../plugin/faces/AbstractFacesMojo.java | 28 +++++++----
.../component/AbstractComponentGenerator.java | 15 ++++++
.../component/TrinidadComponentGenerator.java | 2 +
.../taglib/AbstractComponentTagGenerator.java | 47 ++++++++++++++----
.../taglib/TrinidadComponentTagGenerator.java | 57 +++++++++++++---------
.../plugin/faces/parse/ComponentBean.java | 44 ++++++++---------
.../plugin/faces/parse/FacesConfigBean.java | 51 ++++++++++++++++---
.../plugin/faces/parse/PropertyBean.java | 19 ++++++++
maven-i18n-plugin/pom.xml | 2 +-
maven-javacc-plugin/pom.xml | 2 +-
maven-javascript-plugin/pom.xml | 2 +-
maven-jdev-plugin/pom.xml | 2 +-
maven-tagdoc-plugin/pom.xml | 2 +-
maven-xrts-plugin/pom.xml | 2 +-
pom.xml | 2 +-
16 files changed, 198 insertions(+), 81 deletions(-)
diff --git a/maven-faces-plugin/pom.xml b/maven-faces-plugin/pom.xml
index b40adca..5102bc7 100644
--- a/maven-faces-plugin/pom.xml
+++ b/maven-faces-plugin/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
<artifactId>maven-plugin-parent</artifactId>
- <version>1.2.12</version>
+ <version>1.2.12.1-SNAPSHOT</version>
</parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/AbstractFacesMojo.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/AbstractFacesMojo.java
index f40fd26..6aabc6f 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/AbstractFacesMojo.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/AbstractFacesMojo.java
@@ -19,10 +19,12 @@ import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
+
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLClassLoader;
import java.net.URLConnection;
+
import java.util.ArrayList;
import java.util.Collections;
import java.util.Enumeration;
@@ -56,10 +58,13 @@ import org.apache.myfaces.trinidadbuild.plugin.faces.util.ConverterFilter;
import org.apache.myfaces.trinidadbuild.plugin.faces.util.Util;
import org.apache.myfaces.trinidadbuild.plugin.faces.util.ValidatorFilter;
import org.apache.myfaces.trinidadbuild.plugin.faces.util.XIncludeFilter;
+
import org.codehaus.plexus.util.FileUtils;
+
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
+
abstract public class AbstractFacesMojo extends AbstractMojo
{
protected List getCompileDependencyResources(
@@ -117,7 +122,7 @@ abstract public class AbstractFacesMojo extends AbstractMojo
} catch (MalformedURLException e) {
getLog().error("", e);
}
- return urls;
+ return urls;
}
else
{
@@ -218,7 +223,7 @@ abstract public class AbstractFacesMojo extends AbstractMojo
{
return _DEFAULT_LICENSE_HEADER;
}
-
+
if (!licenseHeaderFile.exists())
{
throw new MojoExecutionException("License header file not found: "
@@ -232,12 +237,12 @@ abstract public class AbstractFacesMojo extends AbstractMojo
}
StringBuffer sb = new StringBuffer();
-
+
try
{
BufferedReader reader = new BufferedReader(new FileReader(licenseHeaderFile));
String line;
-
+
while ((line = reader.readLine()) != null)
{
sb.append(line+"\n");
@@ -247,17 +252,17 @@ abstract public class AbstractFacesMojo extends AbstractMojo
{
throw new MojoExecutionException("Exception reading license header file", e);
}
-
+
return sb.toString();
}
-
+
protected String getLicenseHeader() throws MojoExecutionException
{
if (_licenseHeader == null)
{
_licenseHeader = readLicenseHeader();
}
-
+
return _licenseHeader;
}
@@ -286,6 +291,9 @@ abstract public class AbstractFacesMojo extends AbstractMojo
{
processIndexEntry(index[i]);
}
+
+ // Perform any post-processing
+ _facesConfig.performPostProcessing();
}
protected void processIndexEntry(
@@ -408,7 +416,7 @@ abstract public class AbstractFacesMojo extends AbstractMojo
protected boolean accept(
ComponentBean component)
{
- String componentType = component.getComponentType();
+ String componentType = component.getComponentType();
return (componentType.startsWith(_typePrefix));
}
private final String _typePrefix;
@@ -498,7 +506,7 @@ abstract public class AbstractFacesMojo extends AbstractMojo
private final String _packageContains;
}
-
+
static final protected class ComponentTagFilter extends ComponentFilter
{
@@ -680,4 +688,4 @@ abstract public class AbstractFacesMojo extends AbstractMojo
" * under the License.\n" +
"*/\n";
}
-
+
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/AbstractComponentGenerator.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/AbstractComponentGenerator.java
index 58de9be..a06aa85 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/AbstractComponentGenerator.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/AbstractComponentGenerator.java
@@ -583,6 +583,11 @@ public abstract class AbstractComponentGenerator implements ComponentGenerator
{
Iterator properties = component.properties();
properties = new FilteredIterator(properties, new NonVirtualFilter());
+ if (isAccessorMethodFinal())
+ {
+ // Do not generate property methods if they are final and the properties are overrides
+ properties = new FilteredIterator(properties, new NonOverriddenFilter());
+ }
while (properties.hasNext())
{
PropertyBean property = (PropertyBean) properties.next();
@@ -1046,6 +1051,16 @@ public abstract class AbstractComponentGenerator implements ComponentGenerator
}
}
+ protected static class NonOverriddenFilter
+ extends PropertyFilter
+ {
+ protected boolean accept(
+ PropertyBean property)
+ {
+ return (!property.isOverride());
+ }
+ }
+
static protected String resolveType(
String className)
{
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/TrinidadComponentGenerator.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/TrinidadComponentGenerator.java
index a1b9970..58b3274 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/TrinidadComponentGenerator.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/TrinidadComponentGenerator.java
@@ -94,6 +94,8 @@ public class TrinidadComponentGenerator extends AbstractComponentGenerator
// component property keys
Iterator properties = component.properties();
properties = new FilteredIterator(properties, new NonVirtualFilter());
+ properties = new FilteredIterator(properties, new NonOverriddenFilter());
+
while (properties.hasNext())
{
PropertyBean property = (PropertyBean) properties.next();
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractComponentTagGenerator.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractComponentTagGenerator.java
index 433ae8c..6ce9669 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractComponentTagGenerator.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractComponentTagGenerator.java
@@ -6,9 +6,9 @@
* 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
@@ -18,21 +18,25 @@
*/
package org.apache.myfaces.trinidadbuild.plugin.faces.generator.taglib;
+import java.io.IOException;
+
+import java.lang.reflect.Modifier;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Set;
+import java.util.TreeSet;
+
import org.apache.myfaces.trinidadbuild.plugin.faces.generator.GeneratorHelper;
import org.apache.myfaces.trinidadbuild.plugin.faces.io.PrettyWriter;
import org.apache.myfaces.trinidadbuild.plugin.faces.parse.ComponentBean;
import org.apache.myfaces.trinidadbuild.plugin.faces.parse.PropertyBean;
import org.apache.myfaces.trinidadbuild.plugin.faces.util.FilteredIterator;
+import org.apache.myfaces.trinidadbuild.plugin.faces.util.PropertyFilter;
import org.apache.myfaces.trinidadbuild.plugin.faces.util.SourceTemplate;
import org.apache.myfaces.trinidadbuild.plugin.faces.util.Util;
-import java.io.IOException;
-import java.lang.reflect.Modifier;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-import java.util.TreeSet;
/**
* TODO: comment this!
@@ -197,6 +201,11 @@ public abstract class AbstractComponentTagGenerator implements ComponentTagGener
{
Iterator properties = component.properties();
properties = new FilteredIterator(properties, new TagAttributeFilter());
+ if (isSetterMethodFinal())
+ {
+ // Do not generate property methods if they are final and the properties are overrides
+ properties = new FilteredIterator(properties, new NonOverriddenFilter());
+ }
while (properties.hasNext())
{
@@ -206,6 +215,15 @@ public abstract class AbstractComponentTagGenerator implements ComponentTagGener
}
}
+ /**
+ * Whether the tag setter methods have the final modifier
+ *
+ * @return true if the setter methods are final
+ */
+ protected boolean isSetterMethodFinal()
+ {
+ return false;
+ }
public void writePropertyMembers(PrettyWriter out, Collection components) throws IOException
{
@@ -243,6 +261,8 @@ public abstract class AbstractComponentTagGenerator implements ComponentTagGener
Iterator properties = all.iterator();
properties = new FilteredIterator(properties, new TagAttributeFilter());
+ properties = new FilteredIterator(properties, new NonOverriddenFilter());
+
if (properties.hasNext() || special)
{
out.println();
@@ -292,4 +312,13 @@ public abstract class AbstractComponentTagGenerator implements ComponentTagGener
String componentClass,
Iterator properties) throws IOException;
+ protected static class NonOverriddenFilter
+ extends PropertyFilter
+ {
+ protected boolean accept(
+ PropertyBean property)
+ {
+ return (!property.isOverride());
+ }
+ }
}
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadComponentTagGenerator.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadComponentTagGenerator.java
index ae3f791..468d6cd 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadComponentTagGenerator.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadComponentTagGenerator.java
@@ -6,9 +6,9 @@
* 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
@@ -18,6 +18,13 @@
*/
package org.apache.myfaces.trinidadbuild.plugin.faces.generator.taglib;
+import java.io.IOException;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Set;
+
import org.apache.myfaces.trinidadbuild.plugin.faces.generator.GeneratorHelper;
import org.apache.myfaces.trinidadbuild.plugin.faces.io.PrettyWriter;
import org.apache.myfaces.trinidadbuild.plugin.faces.parse.ComponentBean;
@@ -26,11 +33,6 @@ import org.apache.myfaces.trinidadbuild.plugin.faces.parse.PropertyBean;
import org.apache.myfaces.trinidadbuild.plugin.faces.util.FilteredIterator;
import org.apache.myfaces.trinidadbuild.plugin.faces.util.Util;
-import java.io.IOException;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
/**
* TODO: comment this!
@@ -135,11 +137,11 @@ public class TrinidadComponentTagGenerator extends AbstractComponentTagGenerator
{
imports.add(propertyClass);
}
-
+
if (property.isNoOp())
{
imports.add("org.apache.myfaces.trinidad.logging.TrinidadLogger");
- }
+ }
}
}
@@ -179,10 +181,10 @@ public class TrinidadComponentTagGenerator extends AbstractComponentTagGenerator
out.indent();
if (property.isNoOp())
{
- out.println("TrinidadLogger log = TrinidadLogger.createTrinidadLogger(this.getClass());");
+ out.println("TrinidadLogger log = TrinidadLogger.createTrinidadLogger(this.getClass());");
out.print("log.warning(\"property \\\"" + propName + "\\\" setter is ");
out.print("using a no-op implementation. Used in extreme cases when the property value, beyond the default value, results in unwanted behavior.");
- out.println("\");");
+ out.println("\");");
}
else
{
@@ -218,6 +220,7 @@ public class TrinidadComponentTagGenerator extends AbstractComponentTagGenerator
Iterator properties = all.iterator();
properties = new FilteredIterator(properties, new TagAttributeFilter());
+ properties = new FilteredIterator(properties, new NonOverriddenFilter());
if (properties.hasNext())
{
@@ -250,6 +253,12 @@ public class TrinidadComponentTagGenerator extends AbstractComponentTagGenerator
}
}
+ @Override
+ protected boolean isSetterMethodFinal()
+ {
+ return true;
+ }
+
private void _writeSetPropertiesCase(
PrettyWriter out,
String componentClass,
@@ -258,7 +267,7 @@ public class TrinidadComponentTagGenerator extends AbstractComponentTagGenerator
String propName = property.getPropertyName();
String propClass = property.getPropertyClass();
String propVar = "_" + propName;
-
+
if (property.isVirtual())
{
_writeVirtualSetMethod(out, componentClass, propName);
@@ -291,16 +300,16 @@ public class TrinidadComponentTagGenerator extends AbstractComponentTagGenerator
{
_writeSetColor(out, componentClass, propName, false);
}
- else if (GeneratorHelper.isKnownTypeList(propClass,
+ else if (GeneratorHelper.isKnownTypeList(propClass,
property.getPropertyClassParameters()))
{
- _writeSetKnownTypeList (out, componentClass, propName,
+ _writeSetKnownTypeList (out, componentClass, propName,
property.getPropertyClassParameters()[0]);
}
- else if (GeneratorHelper.isKnownTypeSet(propClass,
+ else if (GeneratorHelper.isKnownTypeSet(propClass,
property.getPropertyClassParameters()))
{
- _writeSetKnownTypeSet (out, componentClass, propName,
+ _writeSetKnownTypeSet (out, componentClass, propName,
property.getPropertyClassParameters()[0]);
}
else if (GeneratorHelper.isConverter(propClass))
@@ -869,17 +878,17 @@ public class TrinidadComponentTagGenerator extends AbstractComponentTagGenerator
{
String propKey = Util.getConstantNameFromProperty(propName, "_KEY");
String propVar = "_" + propName;
-
+
String propClass = Util.getClassFromFullClass(propFullClass);
String boxedClass = Util.getBoxedClass(propClass);
System.out.println ("_writeSetList: propFullClass = " + propFullClass +
- " propClass= " + propClass +
+ " propClass= " + propClass +
" boxedClass=" + boxedClass);
if (_is12)
{
- out.println("set" + boxedClass + "ListProperty" +
- "(bean, " + componentClass + "." + propKey +
+ out.println("set" + boxedClass + "ListProperty" +
+ "(bean, " + componentClass + "." + propKey +
", " + propVar + ");");
}
else
@@ -926,17 +935,17 @@ public class TrinidadComponentTagGenerator extends AbstractComponentTagGenerator
{
String propKey = Util.getConstantNameFromProperty(propName, "_KEY");
String propVar = "_" + propName;
-
+
String propClass = Util.getClassFromFullClass(propFullClass);
String boxedClass = Util.getBoxedClass(propClass);
System.out.println ("_writeSetSet: propFullClass = " + propFullClass +
- " propClass= " + propClass +
+ " propClass= " + propClass +
" boxedClass=" + boxedClass);
if (_is12)
{
- out.println("set" + boxedClass + "SetProperty" +
- "(bean, " + componentClass + "." + propKey +
+ out.println("set" + boxedClass + "SetProperty" +
+ "(bean, " + componentClass + "." + propKey +
", " + propVar + ");");
}
else
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/ComponentBean.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/ComponentBean.java
index c67a6ed..31a72c4 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/ComponentBean.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/ComponentBean.java
@@ -722,9 +722,9 @@ public class ComponentBean extends AbstractTagBean
* Parses the string of satisfied contracts into a String array
* using space as the separator between values.
* In the component metadata file, the satisfied contracts are noted
- * with satisfied-contracts markup. As an example, af:popup
+ * with satisfied-contracts markup. As an example, af:popup
* (oracle.adf.view.rich.component.rich.RichPopup) supports
- * oracle-adf-richmenu-holder, oracle-adf-richdialog-holder,
+ * oracle-adf-richmenu-holder, oracle-adf-richdialog-holder,
* oracle-adf-richnotewindow-holder, and oracle-adf-richpanelwindow-holder
* contracts. The satisfied contracts of a given component are matched
* with the required ancestor contracts of other components to determine
@@ -741,14 +741,14 @@ public class ComponentBean extends AbstractTagBean
/**
* Sets the possible values for this property.
* In the component metadata file, the satisfied contracts are noted
- * with satisfied-contracts markup. As an example, af:popup
+ * with satisfied-contracts markup. As an example, af:popup
* (oracle.adf.view.rich.component.rich.RichPopup) supports
- * oracle-adf-richmenu-holder, oracle-adf-richdialog-holder,
+ * oracle-adf-richmenu-holder, oracle-adf-richdialog-holder,
* oracle-adf-richnotewindow-holder, and oracle-adf-richpanelwindow-holder
* contracts. The satisfied contracts of a given component are matched
* with the required ancestor contracts of other components to determine
* if a component hierarchy is legally assembled.
- *
+ *
* @param satisfiedContracts a string array of the satisfied contracts
*/
public void setSatisfiedContracts(
@@ -760,22 +760,22 @@ public class ComponentBean extends AbstractTagBean
/**
* Returns an iterator of the satisfied contracts for this component.
* In the component metadata file, the satisfied contracts are noted
- * with satisfied-contracts markup. As an example, af:popup
+ * with satisfied-contracts markup. As an example, af:popup
* (oracle.adf.view.rich.component.rich.RichPopup) supports
- * oracle-adf-richmenu-holder, oracle-adf-richdialog-holder,
+ * oracle-adf-richmenu-holder, oracle-adf-richdialog-holder,
* oracle-adf-richnotewindow-holder, and oracle-adf-richpanelwindow-holder
* contracts. The satisfied contracts of a given component are matched
* with the required ancestor contracts of other components to determine
* if a component hierarchy is legally assembled.
- *
- * @return a java.util.Iterator of Strings, where each string is the name of a
+ *
+ * @return a java.util.Iterator of Strings, where each string is the name of a
* satisfied contract
*/
public Iterator<String> satisfiedContracts()
{
return _satisfiedContracts.iterator();
- }
-
+ }
+
/**
* Returns true if this component has any satisfied contracts.
*
@@ -786,17 +786,17 @@ public class ComponentBean extends AbstractTagBean
{
return (!_satisfiedContracts.isEmpty());
}
-
+
/**
* Parses the string of required ancestor contracts into a String array
* using space as the separator between values.
* In the component metadata file, the required ancestors are noted
* with required-ancestor-contracts markup. This indicates that an
- * ancestor (e.g. parent or grandparent) tag must be have satisfied-contracts
+ * ancestor (e.g. parent or grandparent) tag must be have satisfied-contracts
* metadata matching the required-ancestor-contracts metadata of this tag.
* As an example, af:dialog
* (oracle.adf.view.rich.component.rich.RichDialog) lists
- * oracle-adf-richdialog-holder as a required ancestor contract, and
+ * oracle-adf-richdialog-holder as a required ancestor contract, and
* af:popup (oracle.adf.view.rich.component.rich.RichPopup) lists
* oracle-adf-richdialog-holder as a satisified contract.
*
@@ -812,14 +812,14 @@ public class ComponentBean extends AbstractTagBean
* Sets the possible values for this property.
* In the component metadata file, the required ancestors are noted
* with required-ancestor-contracts markup. This indicates that an
- * ancestor (e.g. parent or grandparent) tag must be have satisfied-contracts
+ * ancestor (e.g. parent or grandparent) tag must be have satisfied-contracts
* metadata matching the required-ancestor-contracts metadata of this tag.
* As an example, af:dialog
* (oracle.adf.view.rich.component.rich.RichDialog) lists
- * oracle-adf-richdialog-holder as a required ancestor contract, and
+ * oracle-adf-richdialog-holder as a required ancestor contract, and
* af:popup (oracle.adf.view.rich.component.rich.RichPopup) lists
* oracle-adf-richdialog-holder as a satisified contract.
- *
+ *
* @param requiredAncestorContracts a string array of the required ancestor contracts
*/
public void setRequiredAncestorContracts(
@@ -832,21 +832,21 @@ public class ComponentBean extends AbstractTagBean
* Returns the required ancestor contracts for this component.
* In the component metadata file, the required ancestors are noted
* with required-ancestor-contracts markup. This indicates that an
- * ancestor (e.g. parent or grandparent) tag must be have satisfied-contracts
+ * ancestor (e.g. parent or grandparent) tag must be have satisfied-contracts
* metadata matching the required-ancestor-contracts metadata of this tag.
* As an example, af:dialog
* (oracle.adf.view.rich.component.rich.RichDialog) lists
- * oracle-adf-richdialog-holder as a required ancestor contract, and
+ * oracle-adf-richdialog-holder as a required ancestor contract, and
* af:popup (oracle.adf.view.rich.component.rich.RichPopup) lists
* oracle-adf-richdialog-holder as a satisified contract.
- *
+ *
* @return a java.util.Iterator of strings, where each string is the name
* of a required ancestor contract
*/
public Iterator<String> requiredAncestorContracts()
{
return _requiredAncestorContracts.iterator();
- }
+ }
/**
* Returns true if this component has any required ancestor contracts.
@@ -858,7 +858,7 @@ public class ComponentBean extends AbstractTagBean
{
return (!_requiredAncestorContracts.isEmpty());
}
-
+
/**
* Adds a Java Language class modifier to the tag class.
*
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/FacesConfigBean.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/FacesConfigBean.java
index 5e75106..38f8bed 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/FacesConfigBean.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/FacesConfigBean.java
@@ -6,9 +6,9 @@
* 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
@@ -19,11 +19,13 @@
package org.apache.myfaces.trinidadbuild.plugin.faces.parse;
import java.net.URL;
+
import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;
import java.util.logging.Logger;
+
/**
* FacesConfigBean is a Java representation of the faces-config XML element.
*/
@@ -296,7 +298,7 @@ public class FacesConfigBean extends ObjectBean
{
return _currentResource;
}
-
+
public URL setCurrentResource(URL resource)
{
URL _cur = _currentResource;
@@ -304,11 +306,44 @@ public class FacesConfigBean extends ObjectBean
return _cur;
}
- private Map _converters = new TreeMap();
- private Map _validators = new TreeMap();
- private Map _components = new TreeMap();
- private Map _events = new TreeMap();
- private Map _renderKits = new TreeMap();
+ /**
+ * Performs any processing of the meta-data that must be performed after all of the
+ * meta-data has been collected. This includes processing on super-class data and other
+ * inter-related computations that cannot be done as the data is being parsed.
+ */
+ public void performPostProcessing()
+ {
+ _identifyOverriddenProperies();
+ }
+
+ private void _identifyOverriddenProperies()
+ {
+ for (ComponentBean component : _components.values())
+ {
+ ComponentBean parentComponent = component.resolveSupertype();
+ if (parentComponent == null)
+ {
+ continue;
+ }
+
+ for (Iterator<PropertyBean> iter = component.properties(); iter.hasNext();)
+ {
+ PropertyBean property = iter.next();
+ PropertyBean parentProperty = parentComponent.findProperty(property.getPropertyName(),
+ true);
+ if (parentProperty != null)
+ {
+ property.setOverride(true);
+ }
+ }
+ }
+ }
+
+ private Map<String, ConverterBean> _converters = new TreeMap<String, ConverterBean>();
+ private Map<String, ValidatorBean> _validators = new TreeMap<String, ValidatorBean>();
+ private Map<String, ComponentBean> _components = new TreeMap<String, ComponentBean>();
+ private Map<String, EventBean> _events = new TreeMap<String, EventBean>();
+ private Map<String, RenderKitBean> _renderKits = new TreeMap<String, RenderKitBean>();
private URL _currentResource = null;
static private final Logger _LOG = Logger.getLogger(FacesConfigBean.class.getName());
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/PropertyBean.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/PropertyBean.java
index 2f7c6f0..1372f71 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/PropertyBean.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/parse/PropertyBean.java
@@ -524,6 +524,24 @@ public class PropertyBean extends AttributeBean
return _valueExpression;
}
+ /**
+ * Set if this property is overridding a property in an ancestor class.
+ * @param override if overridding a property
+ */
+ public void setOverride(boolean override)
+ {
+ this._override = override;
+ }
+
+ /**
+ * Get if this property is overridding a property in an ancestor class.
+ * @return If the property is an overide
+ */
+ public boolean isOverride()
+ {
+ return _override;
+ }
+
private String _aliasOf;
private String _jspPropertyName;
private String _fieldPropertyName;
@@ -537,6 +555,7 @@ public class PropertyBean extends AttributeBean
private boolean _enum;
private boolean _useMaxTime;
private boolean _hidden;
+ private boolean _override;
private String[] _propertyValues;
private String[] _unsupportedAgents = _EMPTY_ARRAY;
private String[] _unsupportedRenderKits = _EMPTY_ARRAY;
diff --git a/maven-i18n-plugin/pom.xml b/maven-i18n-plugin/pom.xml
index d0ea7e0..cfb7aef 100644
--- a/maven-i18n-plugin/pom.xml
+++ b/maven-i18n-plugin/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
<artifactId>maven-plugin-parent</artifactId>
- <version>1.2.12</version>
+ <version>1.2.12.1-SNAPSHOT</version>
</parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
diff --git a/maven-javacc-plugin/pom.xml b/maven-javacc-plugin/pom.xml
index 90c6b93..641f2fd 100644
--- a/maven-javacc-plugin/pom.xml
+++ b/maven-javacc-plugin/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
<artifactId>maven-plugin-parent</artifactId>
- <version>1.2.12</version>
+ <version>1.2.12.1-SNAPSHOT</version>
</parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
diff --git a/maven-javascript-plugin/pom.xml b/maven-javascript-plugin/pom.xml
index 3036373..e1da814 100644
--- a/maven-javascript-plugin/pom.xml
+++ b/maven-javascript-plugin/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
<artifactId>maven-plugin-parent</artifactId>
- <version>1.2.12</version>
+ <version>1.2.12.1-SNAPSHOT</version>
</parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
diff --git a/maven-jdev-plugin/pom.xml b/maven-jdev-plugin/pom.xml
index bb9227b..de91396 100644
--- a/maven-jdev-plugin/pom.xml
+++ b/maven-jdev-plugin/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
<artifactId>maven-plugin-parent</artifactId>
- <version>1.2.12</version>
+ <version>1.2.12.1-SNAPSHOT</version>
</parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
diff --git a/maven-tagdoc-plugin/pom.xml b/maven-tagdoc-plugin/pom.xml
index b935bfd..90f8228 100644
--- a/maven-tagdoc-plugin/pom.xml
+++ b/maven-tagdoc-plugin/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
<artifactId>maven-plugin-parent</artifactId>
- <version>1.2.12</version>
+ <version>1.2.12.1-SNAPSHOT</version>
</parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
diff --git a/maven-xrts-plugin/pom.xml b/maven-xrts-plugin/pom.xml
index e72967f..baefdda 100644
--- a/maven-xrts-plugin/pom.xml
+++ b/maven-xrts-plugin/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
<artifactId>maven-plugin-parent</artifactId>
- <version>1.2.12</version>
+ <version>1.2.12.1-SNAPSHOT</version>
</parent>
<groupId>org.apache.myfaces.trinidadbuild</groupId>
diff --git a/pom.xml b/pom.xml
index e01fa93..583d73e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,7 +25,7 @@
<groupId>org.apache.myfaces.trinidadbuild</groupId>
<artifactId>maven-plugin-parent</artifactId>
- <version>1.2.12</version>
+ <version>1.2.12.1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Apache Trinidad Maven Plugin Parent</name>
--
To stop receiving notification emails like this one, please contact
"commits@myfaces.apache.org" <co...@myfaces.apache.org>.