I was just thinking about doing something similar for plug-ins, ie - maven.plugin.torque.propertyname and then convert it to the proper configurable torque property. Taking it a step further I started thinking about Torque itself and how it uses a Mapping file to help with all of the database specific stuff, so it wouldn't have to be hard-coded.
What does everyone think? -warner ----- Original Message ----- From: "Pete Kazmier" <[EMAIL PROTECTED]> To: "maven dev" <[EMAIL PROTECTED]> Sent: Wednesday, May 29, 2002 4:56 AM Subject: Re: JRefactory / Checksource Integration > On Wed, May 29, 2002 at 09:42:34AM +0100, Nathan Coast wrote: > > latest version of the Jrefactory integration after feedback from > > maven-dev. > > After looking at the implementation, would the Builder pattern be useful > in this situation? The Director would read the Maven source properties > (the common denominator between checkstyle and jrefactory, as well as > the checkstyle and jrefactory specific properties), then we could have > an interface called PropertyConverter and have concrete implementations > called CheckstylePropertyConverter and JRefactoryProeprtyConverter. The > object produced by the PropertyConverter is a Properties object with the > specific tool-specific properties. The Director would look something > like: > > public class Director > { > private PropertyConverter converter; > > public Director(PropertyConverter converter) > { > this.converter = converter; > } > > public void readProperties(Properties mavenSourceProps) > { > for (Enumeration e = mavenSourceProps.getProperties(); e.hasMoreElements(); ) > { > String property = (String) e.nextElement(); > > // Convert the brace policy to the specific properties > // required by either Checkstyle or JRefactory depending on > // what concrete PropertyConverter was passed into the > // Director. > if (property.equals("maven.sourcedef.bracepolicy")) > { > converter.convertBracePolicy(mavenSourceProps.getProperty(property)); > } > else if (property.equals("maven.sourcedef.someOtherCommonProperty")) > { > converter.convertOtherCommonProperty(mavenSourceProps.getProperty(property)) ; > } > > // Pass thru checkstyle specific stuff untouched. > else if (property.startsWith("maven.checkstyle.")) > { > converter.passThru(mavenSourceProps.getProperty(property)); > } > > // Pass thru jrefactory specific stuff untouched. > else if (property.startsWith("maven.jrefactory.")) > { > converter.passThru(mavenSourceProps.getProperty(property)); > } > } > } > } > > public interface PropertyConverter > { > public void convertBracePolicy(String); > public void convertOtherCommonProperty(String); > public void passThru(String); > } > > public class CheckstylePropertyConverter implements PropertyConverter > { > Properties checkstyleProps = new Properties(); > > public void convertBracePolicy(String value) > { > if (value.equals("PASCAL")) > { > checkstyleProps.setProperty("lcurlyType", "nl"); > checkstyleProps.setProperty("rcurlyType", "nl"); > } > else (value.equals("OTHER")) > { > checkstyleProps.setProperty("lcurlyType", "same"); > checkstyleProps.setProperty("rcurlyType", "same"); > } > } > > public void convertOtherCommonProperty(String); > public void passThru(String); > > public Properties getProperties() > { > return checkstyleProps; > } > } > > I just thought this seemed like a good place to use the Builder pattern. > > > FYI, running the maven:pretty-print target reduces checksource errors > > from 5K to 1K. > > Cool! > > > Should we be autogenerating javadoc? whilst reduces checkstyle errors, doesn't > > neccessarily improve the code? > > I don't think we should auto-generate the javadoc cuz it will mask the > fact that there is no real javadoc in the source, thus, no motivation to > fix it. > > > Should we autogenerate @author tags? If a file is missing the @author > > tag, the user who runs the pretty-print task will have their username > > inserted as the author. Only a problem if there is a significant > > number of files missing the @author tag. > > I don't think we should auto-generate the @author tags because that > would be misleading. > > > -- > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> > > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>