TRINIDAD-1898
reflecting new Converter/Validaotr EL Tags in code generator
did some more generics 'work'
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractConverterTagGenerator.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractConverterTagGenerator.java
index 26fd284..04a3717 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractConverterTagGenerator.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractConverterTagGenerator.java
@@ -48,7 +48,7 @@
StringWriter sw = new StringWriter();
PrettyWriter out = new PrettyWriter(sw);
- Set imports = createImports(converter);
+ Set<String> imports = createImports(converter);
writeHeader(out, converter, imports);
writeClass(out, converter);
@@ -79,7 +79,7 @@
}
}
- protected abstract Set createImports(ConverterBean converter);
+ protected abstract Set<String> createImports(ConverterBean converter);
protected abstract void writeSetProperty(PrettyWriter out, PropertyBean property);
@@ -174,7 +174,8 @@
}
- private void writeClass(PrettyWriter out, AbstractTagBean abstractTag) {
+ protected void writeClass(PrettyWriter out, AbstractTagBean abstractTag)
+ {
String className = Util.getClassFromFullClass(abstractTag.getTagClass());
if (is12())
{
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractTagGenerator.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractTagGenerator.java
index 3d180ea..15c8c6e 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractTagGenerator.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractTagGenerator.java
@@ -181,7 +181,7 @@
protected void writeImports(
PrettyWriter out,
- AbstractTagBean abstractTagBean, Set imports)
+ AbstractTagBean abstractTagBean, Set<String> imports)
{
// do not import implicit!
@@ -191,7 +191,7 @@
GeneratorHelper.writeImports(out, packageName, imports);
}
- protected final void writeHeader(PrettyWriter out, AbstractTagBean converter, Set imports) {
+ protected final void writeHeader(PrettyWriter out, AbstractTagBean converter, Set<String> imports) {
String packageName = Util.getPackageFromFullClass(converter.getTagClass());
// header/copyright
writePreamble(out);
@@ -209,7 +209,7 @@
out.println(" */");
}
- protected void addImportsFromPropertes(AbstractTagBean abstractTagBean, Set imports) {
+ protected void addImportsFromPropertes(AbstractTagBean abstractTagBean, Set<String> imports) {
Iterator<PropertyBean> properties = abstractTagBean.properties();
properties = new FilteredIterator(properties, new TagAttributeFilter());
@@ -242,9 +242,9 @@
// TODO: for everything but Locale, String[], Date, and TimeZone,
// in JSF 1.2 we should already be going through coercion, and
// not need any of the "TagUtils" functions
- private Map _createResolvableTypes()
+ private Map<String, String> _createResolvableTypes()
{
- Map resolvableTypes = new HashMap();
+ Map<String, String> resolvableTypes = new HashMap<String, String>();
resolvableTypes.put("boolean", "Boolean");
resolvableTypes.put("char", "Character");
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractValidatorTagGenerator.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractValidatorTagGenerator.java
index ff19d86..fc455ff 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractValidatorTagGenerator.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractValidatorTagGenerator.java
@@ -49,7 +49,7 @@
StringWriter sw = new StringWriter();
PrettyWriter out = new PrettyWriter(sw);
- Set imports = createImports(validator);
+ Set<String> imports = createImports(validator);
writeHeader(out, validator, imports);
writeClass(out, validator);
@@ -81,9 +81,10 @@
}
}
- protected abstract Set createImports(ValidatorBean validator);
+ protected abstract Set<String> createImports(ValidatorBean validator);
- protected void writeClass(PrettyWriter out, AbstractTagBean abstractTag) {
+ protected void writeClass(PrettyWriter out, AbstractTagBean abstractTag)
+ {
String className = Util.getClassFromFullClass(abstractTag.getTagClass());
if (is12())
{
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/MyFacesConverterTagGenerator.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/MyFacesConverterTagGenerator.java
index 0462ed8..a21203d 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/MyFacesConverterTagGenerator.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/MyFacesConverterTagGenerator.java
@@ -33,8 +33,8 @@
super(is12, licenseHeader, log);
}
- protected Set createImports(ConverterBean converter) {
- Set imports = new TreeSet();
+ protected Set<String> createImports(ConverterBean converter) {
+ Set<String> imports = new TreeSet<String>();
if (is12())
{
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadConverterTagGenerator.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadConverterTagGenerator.java
index 85c280e..c6fdbe1 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadConverterTagGenerator.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadConverterTagGenerator.java
@@ -20,6 +20,7 @@
import org.apache.maven.plugin.logging.Log;
import org.apache.myfaces.trinidadbuild.plugin.faces.io.PrettyWriter;
+import org.apache.myfaces.trinidadbuild.plugin.faces.parse.AbstractTagBean;
import org.apache.myfaces.trinidadbuild.plugin.faces.parse.ConverterBean;
import org.apache.myfaces.trinidadbuild.plugin.faces.parse.PropertyBean;
import org.apache.myfaces.trinidadbuild.plugin.faces.util.Util;
@@ -38,7 +39,7 @@
if (is12())
{
- imports.add("javax.faces.webapp.ConverterELTag");
+ imports.add("org.apache.myfaces.trinidad.webapp.TrinidadConverterELTag");
imports.add("javax.faces.context.FacesContext");
imports.add("javax.faces.application.Application");
}
@@ -66,7 +67,23 @@
return imports;
}
-
+ @Override
+ protected void writeClass(PrettyWriter out, AbstractTagBean abstractTag)
+ {
+ String className = Util.getClassFromFullClass(abstractTag.getTagClass());
+ if (is12())
+ {
+ out.println("public class " + className +
+ " extends TrinidadConverterELTag");
+ out.println("{");
+ out.indent();
+ }
+ else
+ {
+ // non 1.2
+ super.writeClass(out, abstractTag);
+ }
+ }
protected void writeSetProperty(
diff --git a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadValidatorTagGenerator.java b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadValidatorTagGenerator.java
index 1391fc8..2b2dac1 100644
--- a/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadValidatorTagGenerator.java
+++ b/maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadValidatorTagGenerator.java
@@ -20,6 +20,7 @@
import org.apache.maven.plugin.logging.Log;
import org.apache.myfaces.trinidadbuild.plugin.faces.io.PrettyWriter;
+import org.apache.myfaces.trinidadbuild.plugin.faces.parse.AbstractTagBean;
import org.apache.myfaces.trinidadbuild.plugin.faces.parse.PropertyBean;
import org.apache.myfaces.trinidadbuild.plugin.faces.parse.ValidatorBean;
import org.apache.myfaces.trinidadbuild.plugin.faces.util.Util;
@@ -38,7 +39,7 @@
if (is12())
{
- imports.add("javax.faces.webapp.ValidatorELTag");
+ imports.add("org.apache.myfaces.trinidad.webapp.TrinidadValidatorELTag");
imports.add("javax.faces.context.FacesContext");
imports.add("javax.faces.application.Application");
}
@@ -65,6 +66,24 @@
addImportsFromPropertes(validator, imports);
return imports;
}
+
+ @Override
+ protected void writeClass(PrettyWriter out, AbstractTagBean abstractTag)
+ {
+ String className = Util.getClassFromFullClass(abstractTag.getTagClass());
+ if (is12())
+ {
+ out.println("public class " + className +
+ " extends TrinidadValidatorELTag");
+ out.println("{");
+ out.indent();
+ }
+ else
+ {
+ // non 1.2
+ super.writeClass(out, abstractTag);
+ }
+ }
protected void writeSetProperty(
PrettyWriter out,