Ah ok, I will merge with that branch....

Cheers,

Bruno

On 28/11/06, Adam Winer <[EMAIL PROTECTED]> wrote:
Bruno,

I'm afraid that I've made things too confusing with the branch
names. The current 1.2 branch isn't the obvious one - it's actually:

https://svn.apache.org/repos/asf/incubator/adffaces/branches/faces-1_2-061113

Sorry about the confusion...  could you merge into that branch?  I should
really rename the old faces-1_2 branch to something less tempting.

-- Adam



On 11/27/06, Bruno Aranda <[EMAIL PROTECTED]> wrote:
> Ok, I have just merged the development in that branch with the current
> 12 branch for the plugin. Trinidad seems to build fine for me. It
> shouldn't be affected in any way as the changes are mostly to
> autogenerate the components for MyFaces.
>
> The branch 
https://svn.apache.org/repos/asf/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin
> could be removed now and it shouldn't be used for further development.
>
> Cheers!
>
> Bruno
>
> On 27/11/06, Bruno Aranda <[EMAIL PROTECTED]> wrote:
> > Thanks Adam. There is one patch by Andreas Berger that remains to be
> > applied to the branch. After that, hopefully today, I will test that
> > trinidad builds well with the branched version and then I will try to
> > merge it with the current faces 1.2 branch. I agree with you that we
> > have to avoid a huge code divergence but there were a big amount of
> > changes, hence the creation of the branch.
> >
> > Cheers,
> >
> > Bruno
> >
> > On 26/11/06, Adam Winer <[EMAIL PROTECTED]> wrote:
> > > Bruno,
> > >
> > > Any idea how/when we're going to merge these changes back?
> > > (Excellent work, by the way!)  I'd really like to keep us all
> > > on one branch of the code, instead of getting some huge
> > > code divergence.
> > >
> > > -- Adam
> > >
> > >
> > >
> > >
> > > On 11/25/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> > > >
> > > > Author: baranda
> > > > Date: Sat Nov 25 09:41:05 2006
> > > > New Revision: 479151
> > > >
> > > > URL: http://svn.apache.org/viewvc?view=rev&rev=479151
> > > > Log:
> > > > Applied ADFFACES-303 patch by Andreas Berger
> > > >
> > > > Modified:
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateComponentsMojo.java
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateJspTaglibsMojo.java
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/ClassGenerator.java
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/GeneratorHelper.java
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/AbstractComponentGenerator.java
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/ComponentGenerator.java
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractComponentTagGenerator.java
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/ComponentTagGenerator.java
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/MyFacesComponentTagGenerator.java
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadComponentTagGenerator.java
> > > >
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/util/SourceTemplate.java
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateComponentsMojo.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateComponentsMojo.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateComponentsMojo.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateComponentsMojo.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -140,8 +140,8 @@
> > > >
> > > >       if (componentFamily == null)
> > > >       {
> > > > -        getLog().error("Missing <component-family> for \"" +
> > > > -                       fullClassName + "\"");
> > > > +        getLog().warn("Missing <component-family> for \"" +
> > > > +                       fullClassName + "\", generation of this 
Component
> > > > is skipped");
> > > >       }
> > > >       else
> > > >       {
> > > > @@ -212,7 +212,12 @@
> > > >
> > > >         generator.writeFacetMethods(out, component);
> > > >
> > > > -        generator.writePropertyMethods(out, component);
> > > > +        if (template == null)
> > > > +        {
> > > > +                       generator.writePropertyMethods(out, component);
> > > > +               } else {
> > > > +                       generator.writePropertyMethods(out, component,
> > > > template.getIgnoreMethods());
> > > > +               }
> > > >
> > > >         if (!suppressListenerMethods)
> > > >           generator.writeListenerMethods(out, component);
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateJspTaglibsMojo.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateJspTaglibsMojo.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateJspTaglibsMojo.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/GenerateJspTaglibsMojo.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -1468,99 +1468,102 @@
> > > >     }
> > > >   }
> > > >
> > > > -  class ComponentTagHandlerGenerator
> > > > -  {
> > > > -    public void generateTagHandler(
> > > > -      ComponentBean component)
> > > > -    {
> > > > -      String fullClassName = component.getTagClass();
> > > > -
> > > > -        ComponentTagGenerator generator;
> > > > -
> > > > -        if (component.isTrinidadComponent())
> > > > -        {
> > > > -            generator = new TrinidadComponentTagGenerator(_is12());
> > > > -        }
> > > > -        else
> > > > -        {
> > > > -            generator = new MyFacesComponentTagGenerator(_is12());
> > > > -        }
> > > > -
> > > > -      try
> > > > -      {
> > > > -        getLog().debug("Generating " + fullClassName);
> > > > -
> > > > -        String sourcePath = 
Util.convertClassToSourcePath(fullClassName,
> > > > ".java");
> > > > -        File targetFile = new File(generatedSourceDirectory, 
sourcePath);
> > > > -
> > > > -        targetFile.getParentFile().mkdirs();
> > > > -        StringWriter sw = new StringWriter();
> > > > -        PrettyWriter out = new PrettyWriter(sw);
> > > > -
> > > > -        String className = Util.getClassFromFullClass(fullClassName);
> > > > -        String packageName = 
Util.getPackageFromFullClass(fullClassName);
> > > > -        String fullSuperclassName = component.findJspTagSuperclass();
> > > > -        if (fullSuperclassName == null)
> > > > -        {
> > > > -          getLog().error("Missing JSP Tag superclass for component:
> > > > "+component.getComponentClass());
> > > > -          return;
> > > > -        }
> > > > -        String superclassName = Util.getClassFromFullClass
> > > > (fullSuperclassName);
> > > > -        if (superclassName.equals(className))
> > > > -          superclassName = fullSuperclassName;
> > > > -        String componentFullClass = component.getComponentClass();
> > > > -        String componentClass = Util.getClassFromFullClass
> > > > (componentFullClass);
> > > > -
> > > > -        // header/copyright
> > > > -        writePreamble(out);
> > > > -
> > > > -        // package
> > > > -        out.println("package " + packageName + ";");
> > > > -
> > > > -        out.println();
> > > > -
> > > > -
> > > > -        generator.writeImports(out, null, packageName,
> > > > fullSuperclassName, superclassName,
> > > > -                       component);
> > > > -
> > > > -        generator.writeClassBegin(out, className, superclassName,
> > > > component, null);
> > > > -
> > > > -        int modifiers = component.getTagClassModifiers();
> > > > -        generator.writeConstructor(out, component, modifiers);
> > > > -
> > > > -
> > > > -        if (!Modifier.isAbstract(modifiers))
> > > > -        {
> > > > -          generator.writeGetComponentType(out, component);
> > > > -          generator.writeGetRendererType(out, component);
> > > > -        }
> > > > -        generator.writePropertyMembers(out, component);
> > > > -        generator.writeSetPropertiesMethod(out, componentClass,
> > > > component);
> > > > -        generator.writeReleaseMethod(out, component);
> > > > -
> > > > -        generator.writeClassEnd(out);
> > > > -        out.close();
> > > > -
> > > > -        // delay write in case of error
> > > > -        // timestamp should not be updated when an error occurs
> > > > -        // delete target file first, because it is readonly
> > > > -        targetFile.delete();
> > > > -        FileWriter fw = new FileWriter(targetFile);
> > > > -        StringBuffer buf = sw.getBuffer();
> > > > -        fw.write(buf.toString());
> > > > -        fw.close();
> > > > -        targetFile.setReadOnly();
> > > > -      }
> > > > -      catch (Throwable e)
> > > > -      {
> > > > -        getLog().error("Error generating " + fullClassName, e);
> > > > -      }
> > > > -    }
> > > > +       class ComponentTagHandlerGenerator {
> > > >
> > > > -
> > > > -  }
> > > > +               private Set initComponentList(ComponentBean component,
> > > > String fullSuperclassName) {
> > > > +                       Set _componentList = new HashSet();
> > > > +                       _componentList.add(component);
> > > > +                       ComponentBean lBean = component;
> > > > +                       while ((lBean = lBean.resolveSupertype()) != 
null
> > > > && !fullSuperclassName.equals(lBean.getTagClass())) {
> > > > +                               
getLog().debug(component.getComponentType()+":
> > > > Add additional Tags from: " + lBean.getComponentType());
> > > > +                               _componentList.add(lBean);
> > > > +                       }
> > > > +                       return _componentList;
> > > > +               }
> > > > +
> > > > +               public void generateTagHandler(ComponentBean component) 
{
> > > > +                       ComponentTagGenerator generator;
> > > > +                       Set componentList;
> > > > +
> > > > +                       String fullSuperclassName =
> > > > component.findJspTagSuperclass();
> > > > +                       if (fullSuperclassName == null) {
> > > > +                               getLog().warn("Missing JSP Tag 
superclass
> > > > for component: " + component.getComponentClass()
> > > > +                                               + ", generation of this
> > > > Tag is skipped");
> > > > +                               return;
> > > > +                       }
> > > > +                       componentList = initComponentList(component,
> > > > fullSuperclassName);
> > > > +
> > > > +                       String fullClassName = component.getTagClass();
> > > > +                       try {
> > > > +                               getLog().debug("Generating " +
> > > > fullClassName);
> > > > +
> > > > +                               String sourcePath =
> > > > Util.convertClassToSourcePath(fullClassName, ".java");
> > > > +                               File targetFile = new
> > > > File(generatedSourceDirectory, sourcePath);
> > > > +
> > > > +                               targetFile.getParentFile().mkdirs();
> > > > +                               StringWriter sw = new StringWriter();
> > > > +                               PrettyWriter out = new PrettyWriter(sw);
> > > > +
> > > > +                               if (component.isTrinidadComponent()) {
> > > > +                                       generator = new
> > > > TrinidadComponentTagGenerator(_is12());
> > > > +                               } else {
> > > > +                                       generator = new
> > > > MyFacesComponentTagGenerator(_is12());
> > > > +                               }
> > > > +
> > > > +                               String className =
> > > > Util.getClassFromFullClass(fullClassName);
> > > > +                               String packageName =
> > > > Util.getPackageFromFullClass(fullClassName);
> > > > +
> > > > +                               // header/copyright
> > > > +                               writePreamble(out);
> > > > +
> > > > +                               // package
> > > > +                               out.println("package " + packageName +
> > > > ";");
> > > > +
> > > > +                               out.println();
> > > > +
> > > > +                               String superclassName =
> > > > Util.getClassFromFullClass(fullSuperclassName);
> > > > +                               if (superclassName.equals(className)) {
> > > > +                                       superclassName =
> > > > fullSuperclassName;
> > > > +                               }
> > > > +                               String componentFullClass =
> > > > component.getComponentClass();
> > > > +                               String componentClass =
> > > > Util.getClassFromFullClass(componentFullClass);
> > > > +
> > > > +                               generator.writeImports(out, null,
> > > > packageName, fullSuperclassName, superclassName, componentList);
> > > > +
> > > > +                               generator.writeClassBegin(out, 
className,
> > > > superclassName, component, null);
> > > > +
> > > > +                               int modifiers =
> > > > component.getTagClassModifiers();
> > > > +                               generator.writeConstructor(out, 
component,
> > > > modifiers);
> > > > +
> > > > +
> > > > +                               if (!Modifier.isAbstract(modifiers)) {
> > > > +                                       
generator.writeGetComponentType(out,
> > > > component);
> > > > +                                       
generator.writeGetRendererType(out,
> > > > component);
> > > > +                               }
> > > > +                               generator.writePropertyMembers(out,
> > > > componentList);
> > > > +                               generator.writeSetPropertiesMethod(out,
> > > > componentClass, componentList);
> > > > +                               generator.writeReleaseMethod(out,
> > > > componentList);
> > > > +
> > > > +                               generator.writeClassEnd(out);
> > > > +                               out.close();
> > > > +
> > > > +                               // delay write in case of error
> > > > +                               // timestamp should not be updated when 
an
> > > > error occurs
> > > > +                               // delete target file first, because it 
is
> > > > readonly
> > > > +                               targetFile.delete();
> > > > +                               FileWriter fw = new
> > > > FileWriter(targetFile);
> > > > +                               StringBuffer buf = sw.getBuffer();
> > > > +                               fw.write(buf.toString());
> > > > +                               fw.close();
> > > > +                               targetFile.setReadOnly();
> > > > +                       }
> > > > +                       catch (Throwable e) {
> > > > +                               getLog().error("Error generating " +
> > > > fullClassName, e);
> > > > +                       }
> > > > +               }
> > > > +       }
> > > >
> > > > -  private boolean _is12()
> > > > +       private boolean _is12()
> > > >   {
> > > >     return "1.2".equals(jsfVersion) || "12".equals(jsfVersion);
> > > >   }
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/ClassGenerator.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/ClassGenerator.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/ClassGenerator.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/ClassGenerator.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -20,6 +20,7 @@
> > > > import 
org.apache.myfaces.trinidadbuild.plugin.faces.util.SourceTemplate;
> > > >
> > > > import java.io.IOException;
> > > > +import java.util.Collection;
> > > >
> > > > /**
> > > > * Generator
> > > > @@ -36,6 +37,14 @@
> > > >             String fullSuperclassName,
> > > >             String superclassName,
> > > >             ComponentBean component);
> > > > +
> > > > +       void writeImports(
> > > > +                       PrettyWriter out,
> > > > +                       SourceTemplate template,
> > > > +                       String packageName,
> > > > +                       String fullSuperclassName,
> > > > +                       String superclassName,
> > > > +                       Collection components);
> > > >
> > > >     void writeClassBegin(
> > > >             PrettyWriter out,
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/GeneratorHelper.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/GeneratorHelper.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/GeneratorHelper.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/GeneratorHelper.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -67,10 +67,10 @@
> > > >                 && property.getJspPropertyName().equals("action"));
> > > >     }
> > > >
> > > > -    public static boolean isActionListener(PropertyBean property)
> > > > +    public static boolean isActionListener(PropertyBean property, 
boolean
> > > > is12)
> > > >     {
> > > > -        return (property.getClass().equals("javax.el.MethodExpression")
> > > > -                && property.getJspPropertyName
> > > > ().equals("actionListener"));
> > > > +               return 
(property.getJspPropertyName().equals("actionListener")
> > > > &&
> > > > +                               (property.isMethodExpression()) || (is12
> > > > && property.isMethodBinding()));
> > > >     }
> > > >
> > > >     static public void writeImports(
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/AbstractComponentGenerator.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/AbstractComponentGenerator.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/AbstractComponentGenerator.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/AbstractComponentGenerator.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -38,6 +38,7 @@
> > > > import java.util.Map;
> > > > import java.util.Set;
> > > > import java.util.TreeSet;
> > > > +import java.util.Collection;
> > > > import java.util.regex.Matcher;
> > > > import java.util.regex.Pattern;
> > > >
> > > > @@ -200,7 +201,13 @@
> > > >         out.println("}");
> > > >     }
> > > >
> > > > -    public void writeImports(
> > > > +
> > > > +       public void writeImports(PrettyWriter out, SourceTemplate
> > > > template, String packageName, String fullSuperclassName,
> > > > +                                                        String
> > > > superclassName, Collection components) {
> > > > +               throw new UnsupportedOperationException("not
> > > > implemented");
> > > > +       }
> > > > +
> > > > +       public void writeImports(
> > > >             PrettyWriter out,
> > > >             SourceTemplate template,
> > > >             String packageName,
> > > > @@ -525,7 +532,13 @@
> > > >             PrettyWriter out,
> > > >             ComponentBean component) throws IOException
> > > >     {
> > > > -        Iterator properties = component.properties();
> > > > +        writePropertyMethods(out, component, null);
> > > > +    }
> > > > +
> > > > +
> > > > +       public void writePropertyMethods(PrettyWriter out, ComponentBean
> > > > component, Collection ignoreList)
> > > > +                       throws IOException {
> > > > +               Iterator properties = component.properties();
> > > >         properties = new FilteredIterator(properties, new
> > > > NonVirtualFilter());
> > > >         while (properties.hasNext())
> > > >         {
> > > > @@ -534,14 +547,14 @@
> > > >                 writePropertyListMethods(out, property);
> > > >             else
> > > >             {
> > > > -                writePropertyDeclaration(out, property);
> > > > -                writePropertyGet(out, property);
> > > > -                writePropertySet(out, property);
> > > > +                               writePropertyDeclaration(out, property);
> > > > +                writePropertyGet(out, property, ignoreList);
> > > > +                writePropertySet(out, property, ignoreList);
> > > >             }
> > > >         }
> > > > -    }
> > > > +       }
> > > >
> > > > -    abstract protected void writePropertyListMethods(
> > > > +       abstract protected void writePropertyListMethods(
> > > >             PrettyWriter out,
> > > >             PropertyBean property) throws IOException;
> > > >
> > > > @@ -558,28 +571,32 @@
> > > >
> > > >     protected void writePropertySet(
> > > >             PrettyWriter out,
> > > > -            PropertyBean property) throws IOException
> > > > +            PropertyBean property,
> > > > +                       Collection ignoreList) throws IOException
> > > >     {
> > > >         String propertyClass = Util.getPropertyClass(property);
> > > > -        writePropertySet(out, property, propertyClass);
> > > > +        writePropertySet(out, property, propertyClass, ignoreList);
> > > >
> > > >         if (property.getAlternateClass() != null)
> > > >         {
> > > >             String alternateClass = Util.getAlternatePropertyClass
> > > > (property);
> > > > -            writePropertySet(out, property, alternateClass);
> > > > +            writePropertySet(out, property, alternateClass, 
ignoreList);
> > > >         }
> > > >     }
> > > >
> > > >     protected void writePropertySet(
> > > >             PrettyWriter out,
> > > >             PropertyBean property,
> > > > -            String propertyClass) throws IOException
> > > > +            String propertyClass,
> > > > +                       Collection ignoreList) throws IOException
> > > >     {
> > > >         String propName = property.getPropertyName();
> > > >         String propVar = Util.getVariableFromName(propName);
> > > >         String description = property.getDescription();
> > > >         String setMethod = Util.getPrefixedPropertyName("set", 
propName);
> > > > -
> > > > +               if (ignoreList != null && 
ignoreList.contains(setMethod)){
> > > > +                       return;
> > > > +               }
> > > >         out.println();
> > > >         out.println("/**");
> > > >         if (description != null)
> > > > @@ -616,14 +633,17 @@
> > > >
> > > >     protected void writePropertyGet(
> > > >             PrettyWriter out,
> > > > -            PropertyBean property) throws IOException
> > > > +            PropertyBean property,
> > > > +                       Collection ignoreList) throws IOException
> > > >     {
> > > >         String propName = property.getPropertyName();
> > > >         String propertyFullClass = property.getPropertyClass();
> > > >         String propertyClass = Util.getClassFromFullClass
> > > > (propertyFullClass);
> > > >         String description = property.getDescription();
> > > >         String getMethod = Util.getMethodReaderFromProperty(propName,
> > > > propertyClass);
> > > > -
> > > > +               if (ignoreList != null && 
ignoreList.contains(getMethod)){
> > > > +                       return;
> > > > +               }
> > > >         boolean isUnchecked = false;
> > > >         String[] genericTypes = property.getPropertyClassParameters();
> > > >         if (genericTypes != null && genericTypes.length > 0)
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/ComponentGenerator.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/ComponentGenerator.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/ComponentGenerator.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/component/ComponentGenerator.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -18,8 +18,10 @@
> > > > import
> > > > org.apache.myfaces.trinidadbuild.plugin.faces.generator.ClassGenerator;
> > > > 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.util.SourceTemplate;
> > > >
> > > > import java.io.IOException;
> > > > +import java.util.Collection;
> > > >
> > > > /**
> > > > * Generates component classes
> > > > @@ -69,4 +71,9 @@
> > > >
> > > >     void writeOther(
> > > >             PrettyWriter out, ComponentBean component) throws 
IOException;
> > > > +
> > > > +
> > > > +       void writePropertyMethods(PrettyWriter out,
> > > > +                       ComponentBean component,
> > > > +                       Collection ignoreList) throws IOException;
> > > > }
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractComponentTagGenerator.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractComponentTagGenerator.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractComponentTagGenerator.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/AbstractComponentTagGenerator.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -28,6 +28,8 @@
> > > > import java.util.Iterator;
> > > > import java.util.Set;
> > > > import java.util.TreeSet;
> > > > +import java.util.Collection;
> > > > +import java.util.HashSet;
> > > >
> > > > /**
> > > > * TODO: comment this!
> > > > @@ -38,70 +40,72 @@
> > > > public abstract class AbstractComponentTagGenerator implements
> > > > ComponentTagGenerator
> > > > {
> > > >
> > > > -    public void writeImports(PrettyWriter out,
> > > > +       public void writeImports(PrettyWriter out,
> > > >                              SourceTemplate template,
> > > >                              String packageName,
> > > >                              String fullSuperclassName,
> > > >                              String superclassName,
> > > >                              ComponentBean component)
> > > >     {
> > > > -        String componentFullClass = component.getComponentClass();
> > > > -
> > > > -        Set imports = new TreeSet();
> > > > -
> > > > -      Iterator properties = component.properties();
> > > > -      properties = new FilteredIterator(properties, new
> > > > TagAttributeFilter());
> > > > -      //if (properties.hasNext())
> > > > -      //{
> > > > -      //  imports.add(componentFullClass);
> > > > -      //}
> > > > -
> > > > -      // TODO: remove these imports
> > > > -      // FIXME: Actually last 2 can be kept when not abstract
> > > > -      //imports.add("javax.faces.component.UIComponent");
> > > > -
> > > > -      // superclassName is fully qualified if it collides
> > > > -      // with the generated class name and should not be
> > > > -      // imported when such a collision would occur
> > > > -      if (!superclassName.equals(fullSuperclassName))
> > > > -        imports.add(fullSuperclassName);
> > > > -
> > > > -      while (properties.hasNext())
> > > > -      {
> > > > -        PropertyBean property = (PropertyBean)properties.next();
> > > > -
> > > > -        String   propertyClass = property.getPropertyClass();
> > > > -        String[] propertyClassParams =
> > > > property.getPropertyClassParameters();
> > > > -
> > > > -        if (propertyClass != null && property.isLiteralOnly())
> > > > -        {
> > > > -          // Import the property class only if only litterals are
> > > > supported
> > > > -          // otherwise the class will be a String inside the tag to
> > > > support
> > > > -          // ValueBinding
> > > > -          imports.add(propertyClass);
> > > > -        }
> > > > -
> > > > -
> > > > -
> > > > -        // TODO: restore import and make reference to
> > > > -        //       ConstantMethodBinding relative rather
> > > > -        //       than absolute
> > > > -        //if (property.isMethodBinding() &&
> > > > -        //    isStringMethodBindingReturnType(property))
> > > > -        //{
> > > > -        //  imports.add("
> > > > org.apache.myfaces.trinidadinternal.taglib.ConstantMethodBinding");
> > > > -        //}
> > > > -      }
> > > > +               Collection components = new HashSet();
> > > > +               components.add(component);
> > > > +               writeImports(out, template, packageName,
> > > > fullSuperclassName, superclassName, components);
> > > > +    }
> > > >
> > > > -        addSpecificImports(imports, component);
> > > >
> > > > -      // do not import implicit!
> > > > -      imports.removeAll(Util.PRIMITIVE_TYPES);
> > > > +       public void writeImports(PrettyWriter out, SourceTemplate
> > > > template, String packageName, String fullSuperclassName,
> > > > +                                                        String
> > > > superclassName, Collection components) {
> > > > +               Set imports = new TreeSet();
> > > > +
> > > > +               for (Iterator lIterator = components.iterator();
> > > > lIterator.hasNext();) {
> > > > +                       ComponentBean component = (ComponentBean)
> > > > lIterator.next();
> > > > +                       Iterator properties = component.properties();
> > > > +                       properties = new FilteredIterator(properties, 
new
> > > > TagAttributeFilter());
> > > > +
> > > > +                       // TODO: remove these imports
> > > > +                       // FIXME: Actually last 2 can be kept when not
> > > > abstract
> > > > +                       //imports.add("javax.faces.component.UIComponent
> > > > ");
> > > > +
> > > > +                       // superclassName is fully qualified if it
> > > > collides
> > > > +                       // with the generated class name and should not 
be
> > > > +                       // imported when such a collision would occur
> > > > +                       if (!superclassName.equals(fullSuperclassName)) 
{
> > > > +                               imports.add(fullSuperclassName);
> > > > +                       }
> > > > +
> > > > +                       while (properties.hasNext()) {
> > > > +                               PropertyBean property = (PropertyBean)
> > > > properties.next();
> > > > +
> > > > +                               String propertyClass =
> > > > property.getPropertyClass();
> > > > +                               String[] propertyClassParams =
> > > > property.getPropertyClassParameters();
> > > > +
> > > > +                               if (propertyClass != null &&
> > > > property.isLiteralOnly()) {
> > > > +                                       // Import the property class 
only
> > > > if only litterals are supported
> > > > +                                       // otherwise the class will be a
> > > > String inside the tag to support
> > > > +                                       // ValueBinding
> > > > +                                       imports.add(propertyClass);
> > > > +                               }
> > > > +
> > > > +                               // TODO: restore import and make 
reference
> > > > to
> > > > +                               //       ConstantMethodBinding relative
> > > > rather
> > > > +                               //       than absolute
> > > > +                               //if (property.isMethodBinding() &&
> > > > +
> > > > //    isStringMethodBindingReturnType(property))
> > > > +                               //{
> > > > +                               //  imports.add("
> > > > org.apache.myfaces.trinidadinternal.taglib.ConstantMethodBinding");
> > > > +                               //}
> > > > +                               addSpecificImports(imports, component);
> > > > +
> > > > +                       }
> > > > +
> > > > +               }
> > > > +               // do not import implicit!
> > > > +               imports.removeAll(Util.PRIMITIVE_TYPES);
> > > >
> > > > -      GeneratorHelper.writeImports(out, packageName, imports);
> > > > -    }
> > > > +               GeneratorHelper.writeImports(out, packageName, imports);
> > > > +       }
> > > >
> > > > -    public void writeClassBegin(PrettyWriter out,
> > > > +       public void writeClassBegin(PrettyWriter out,
> > > >                                 String className,
> > > >                                 String superclassName,
> > > >                                 ComponentBean component,
> > > > @@ -194,14 +198,38 @@
> > > >         }
> > > >     }
> > > >
> > > > -    public void writeReleaseMethod(PrettyWriter out,
> > > > +
> > > > +       public void writePropertyMembers(PrettyWriter out, Collection
> > > > components) throws IOException {
> > > > +               for (Iterator lIterator = components.iterator();
> > > > lIterator.hasNext();) {
> > > > +                       writePropertyMembers(out, (ComponentBean)
> > > > lIterator.next());
> > > > +               }
> > > > +       }
> > > > +
> > > > +       public void writeReleaseMethod(PrettyWriter out,
> > > >                                    ComponentBean component) throws
> > > > IOException
> > > >     {
> > > > -        Iterator properties = component.properties();
> > > > -        properties = new FilteredIterator(properties, new
> > > > TagAttributeFilter());
> > > > -        // TODO: remove special case for UIXFormTag
> > > > -        if (properties.hasNext() ||
> > > > -                "org.apache.myfaces.trinidadinternal.taglib.UIXFormTag
> > > > ".equals(component.getTagClass()))
> > > > +               Collection components = new HashSet();
> > > > +               components.add(component);
> > > > +               writeReleaseMethod(out, components);
> > > > +    }
> > > > +
> > > > +
> > > > +       public void writeReleaseMethod(PrettyWriter out, Collection
> > > > components) throws IOException {
> > > > +               Collection all = new HashSet();
> > > > +               boolean special = false;
> > > > +               for (Iterator lIterator = components.iterator();
> > > > lIterator.hasNext();) {
> > > > +                       ComponentBean component = (ComponentBean)
> > > > lIterator.next();
> > > > +                       Iterator prop = component.properties();
> > > > +                       // TODO: remove special case for UIXFormTag
> > > > +                       special |= "
> > > > org.apache.myfaces.trinidadinternal.taglib.UIXFormTag".equals(
> > > > component.getTagClass());
> > > > +                       while (prop.hasNext()) {
> > > > +                               all.add(prop.next());
> > > > +                       }
> > > > +               }
> > > > +
> > > > +               Iterator properties = all.iterator();
> > > > +               properties = new FilteredIterator(properties, new
> > > > TagAttributeFilter());
> > > > +        if (properties.hasNext() || special)
> > > >         {
> > > >             out.println();
> > > >             out.println("@Override");
> > > > @@ -219,11 +247,7 @@
> > > >             out.unindent();
> > > >             out.println("}");
> > > >         }
> > > > -    }
> > > > -
> > > > -    public abstract void writeSetPropertiesMethod(PrettyWriter out,
> > > > -                                         String componentClass,
> > > > -                                         ComponentBean component) 
throws
> > > > IOException;
> > > > +       }
> > > >
> > > >     protected void addSpecificImports(
> > > >             Set imports,
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/ComponentTagGenerator.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/ComponentTagGenerator.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/ComponentTagGenerator.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/ComponentTagGenerator.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -20,6 +20,7 @@
> > > > import 
org.apache.myfaces.trinidadbuild.plugin.faces.parse.ComponentBean;
> > > >
> > > > import java.io.IOException;
> > > > +import java.util.Collection;
> > > >
> > > > /**
> > > > * Generates tag classes
> > > > @@ -34,9 +35,16 @@
> > > >                                   String componentClass,
> > > >                                   ComponentBean component) throws
> > > > IOException;
> > > >
> > > > +    void writeSetPropertiesMethod(PrettyWriter out,
> > > > +                                  String componentClass,
> > > > +                                  Collection components) throws
> > > > IOException;
> > > > +
> > > >     void writeReleaseMethod(PrettyWriter out,
> > > >                             ComponentBean component) throws IOException;
> > > >
> > > > +    void writeReleaseMethod(PrettyWriter out,
> > > > +                            Collection components) throws IOException;
> > > > +
> > > >     void writeGetComponentType(PrettyWriter out,
> > > >                             ComponentBean component) throws IOException;
> > > >
> > > > @@ -45,4 +53,7 @@
> > > >
> > > >     void writePropertyMembers(PrettyWriter out,
> > > >                             ComponentBean component) throws IOException;
> > > > +
> > > > +    void writePropertyMembers(PrettyWriter out,
> > > > +                            Collection components) throws IOException;
> > > > }
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/MyFacesComponentTagGenerator.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/MyFacesComponentTagGenerator.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/MyFacesComponentTagGenerator.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/MyFacesComponentTagGenerator.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -26,6 +26,8 @@
> > > > import java.io.IOException;
> > > > import java.util.Iterator;
> > > > import java.util.Set;
> > > > +import java.util.Collection;
> > > > +import java.util.HashSet;
> > > >
> > > > /**
> > > > * Component tag generator for myfaces
> > > > @@ -74,7 +76,11 @@
> > > >                 if (_is12)
> > > >                 {
> > > >                     imports.add("javax.el.MethodExpression");
> > > > -                }
> > > > +                                       if (
> > > > GeneratorHelper.isActionListener(property, _is12))
> > > > +                                       {
> > > > +                                               imports.add("
> > > > javax.faces.event.MethodExpressionActionListener");
> > > > +                                       }
> > > > +                               }
> > > >                 else
> > > >                 {
> > > >                     imports.add("javax.faces.el.MethodBinding");
> > > > @@ -84,7 +90,7 @@
> > > >             {
> > > >                 imports.add("javax.el.MethodExpression");
> > > >             }
> > > > -            else if (GeneratorHelper.isActionListener(property))
> > > > +            else if (GeneratorHelper.isActionListener(property, _is12))
> > > >             {
> > > >                 imports.add("
> > > > javax.faces.event.MethodExpressionActionListener");
> > > >             }
> > > > @@ -124,7 +130,25 @@
> > > >                                          String componentClass,
> > > >                                          ComponentBean component) throws
> > > > IOException
> > > >     {
> > > > -        Iterator properties = component.properties();
> > > > +        Collection components = new HashSet();
> > > > +               components.add(component);
> > > > +               writeSetPropertiesMethod(out, componentClass, 
components);
> > > > +    }
> > > > +
> > > > +
> > > > +       public void writeSetPropertiesMethod(PrettyWriter out, String
> > > > componentClass, Collection components)
> > > > +                       throws IOException {
> > > > +
> > > > +               Collection all = new HashSet();
> > > > +               for (Iterator lIterator = components.iterator();
> > > > lIterator.hasNext();) {
> > > > +                       ComponentBean component = (ComponentBean)
> > > > lIterator.next();
> > > > +                       Iterator prop = component.properties();
> > > > +                       while (prop.hasNext()) {
> > > > +                               all.add(prop.next());
> > > > +                       }
> > > > +               }
> > > > +
> > > > +               Iterator properties = all.iterator();
> > > >         properties = new FilteredIterator(properties, new
> > > > TagAttributeFilter());
> > > >
> > > >         out.println();
> > > > @@ -141,10 +165,9 @@
> > > >         writeSetPropertyMethodBody(out, componentClass, properties);
> > > >         out.unindent();
> > > >         out.println("}");
> > > > -        //    }
> > > > -    }
> > > > +       }
> > > >
> > > > -    protected void writeSetPropertyMethodBody(PrettyWriter out,
> > > > +       protected void writeSetPropertyMethodBody(PrettyWriter out,
> > > >                                               String componentClass,
> > > >                                               Iterator properties) 
throws
> > > > IOException
> > > >     {
> > > > @@ -257,12 +280,19 @@
> > > >
> > > >         if (_is12)
> > > >         {
> > > > -            out.println("if (" + propVar + " != null)");
> > > > +                       out.println("if (" + propVar + " != null)");
> > > > +                       out.println("{");
> > > >             out.indent();
> > > > -            out.println("bean.setProperty(" + componentClass + "." +
> > > > propKey + ", " +
> > > > -                    "new MethodExpressionMethodBinding(" + propVar +
> > > > "));");
> > > > +                       if (GeneratorHelper.isActionListener(property,
> > > > _is12))
> > > > +                       {
> > > > +                               out.println("comp.addActionListener(new
> > > > MethodExpressionActionListener(" + propVar + "));");
> > > > +                       } else {
> > > > +                               out.println("bean.setProperty(" +
> > > > componentClass + "." + propKey + ", " +
> > > > +                                               "new
> > > > MethodExpressionMethodBinding(" + propVar + "));");
> > > > +                       }
> > > >             out.unindent();
> > > > -        }
> > > > +                       out.println("}");
> > > > +               }
> > > >         else
> > > >         {
> > > >             MethodSignatureBean signature =
> > > > property.getMethodBindingSignature();
> > > > @@ -338,7 +368,7 @@
> > > >         {
> > > >             out.println("comp.setActionExpression("+propVar+");");
> > > >         }
> > > > -        else if (GeneratorHelper.isActionListener(property))
> > > > +        else if (GeneratorHelper.isActionListener(property, _is12))
> > > >         {
> > > >             out.println("comp.addActionListener(new
> > > > MethodExpressionActionListener(" + propVar + "));");
> > > >         }
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadComponentTagGenerator.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadComponentTagGenerator.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadComponentTagGenerator.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/generator/taglib/TrinidadComponentTagGenerator.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -26,6 +26,8 @@
> > > > import java.io.IOException;
> > > > import java.util.Iterator;
> > > > import java.util.Set;
> > > > +import java.util.Collection;
> > > > +import java.util.HashSet;
> > > >
> > > > /**
> > > > * TODO: comment this!
> > > > @@ -164,7 +166,24 @@
> > > >                                          String componentClass,
> > > >                                          ComponentBean component) throws
> > > > IOException
> > > >     {
> > > > -        Iterator properties = component.properties();
> > > > +        Collection components = new HashSet();
> > > > +               components.add(component);
> > > > +               writeSetPropertiesMethod(out, componentClass, 
components);
> > > > +    }
> > > > +
> > > > +
> > > > +       public void writeSetPropertiesMethod(PrettyWriter out, String
> > > > componentClass, Collection components)
> > > > +                       throws IOException {
> > > > +               Collection all = new HashSet();
> > > > +               for (Iterator lIterator = components.iterator();
> > > > lIterator.hasNext();) {
> > > > +                       ComponentBean component = (ComponentBean)
> > > > lIterator.next();
> > > > +                       Iterator prop = component.properties();
> > > > +                       while (prop.hasNext()) {
> > > > +                               all.add(prop.next());
> > > > +                       }
> > > > +               }
> > > > +
> > > > +               Iterator properties = all.iterator();
> > > >         properties = new FilteredIterator(properties, new
> > > > TagAttributeFilter());
> > > >         // TODO: only write out setProperties when properties exist
> > > >         //    if (properties.hasNext())
> > > > @@ -182,9 +201,9 @@
> > > >         out.unindent();
> > > >         out.println("}");
> > > >         //    }
> > > > -    }
> > > > +       }
> > > >
> > > > -    protected void writeSetPropertyMethodBody(PrettyWriter out,
> > > > +       protected void writeSetPropertyMethodBody(PrettyWriter out,
> > > >                                               String componentClass,
> > > >                                               Iterator properties) 
throws
> > > > IOException
> > > >     {
> > > >
> > > > Modified:
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/util/SourceTemplate.java
> > > > URL:
> > > > 
http://svn.apache.org/viewvc/incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/util/SourceTemplate.java?view=diff&rev=479151&r1=479150&r2=479151
> > > >
> > > > 
==============================================================================
> > > > ---
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/util/SourceTemplate.java
> > > > (original)
> > > > +++
> > > > 
incubator/adffaces/branches/myfaces-1_2-maven-faces-plugin/src/main/java/org/apache/myfaces/trinidadbuild/plugin/faces/util/SourceTemplate.java
> > > > Sat Nov 25 09:41:05 2006
> > > > @@ -27,6 +27,7 @@
> > > > import java.util.Iterator;
> > > > import java.util.Map;
> > > > import java.util.Set;
> > > > +import java.util.Collection;
> > > >
> > > > public class SourceTemplate
> > > > {
> > > > @@ -100,8 +101,15 @@
> > > >       if (line == null)
> > > >         throw new EOFException("File " + _file + " ended prematurely");
> > > >
> > > > -      if (line.trim().startsWith(_IGNORE_PREFIX))
> > > > -        continue;
> > > > +      if (line.trim().startsWith(_IGNORE_PREFIX)){
> > > > +                 if (line.trim().startsWith(_IGNORE_PREFIX2)){
> > > > +                         String method = line.trim
> > > > ().substring(_IGNORE_PREFIX2.length()).trim();
> > > > +                         if (method.length() > 0 ){
> > > > +                                 _ignoreMethods.add(method);
> > > > +                         }
> > > > +                 }
> > > > +                 continue;
> > > > +         }
> > > >
> > > >       if (line.equals("}"))
> > > >         break;
> > > > @@ -146,13 +154,19 @@
> > > >     return buffer.toString();
> > > >   }
> > > >
> > > > -  private File           _file;
> > > > +       public Collection getIgnoreMethods() {
> > > > +               return _ignoreMethods;
> > > > +       }
> > > > +
> > > > +       private File           _file;
> > > >   private BufferedReader _reader;
> > > >   private Set            _imports = new HashSet();
> > > >   private Map            _fqcnMap = new HashMap();
> > > >   private Set            _implements = new HashSet();
> > > >   private Map            _substitutions = new HashMap();
> > > > +  private Set            _ignoreMethods = new HashSet();
> > > >
> > > >   // Magic syntax indicating "please ignore this line"
> > > >   static private final String _IGNORE_PREFIX = "/**/";
> > > > +  static private final String _IGNORE_PREFIX2 = "/**///";
> > > > }
> > > >
> > > >
> > > >
> > >
> > >
> >
>

Reply via email to