Nathan, I'll work on integrating this after the release. I just want to have some time to play around and make sure all the documentation is updated before I apply the patch.
Thanks! Pete On Thu, May 30, 2002 at 05:15:06PM +0100, Nathan Coast wrote: > Hi, > > I've incorporated all of the feedback re maven code style and what we should / > shouldn't be auto-generating. I think I've got the pretty printer generating > code as close as possible to the maven standards. Let me know if I've got > anything wrong > > All modified files are as patch files. All new files are for > jakarta-turbine-maven/src/java/org/apache/maven/sourcedef/ > > jrefactory.jar can be obtained from here and needs placing in lib.repo > http://prdownloads.sourceforge.net/jrefactory/jrefactory-2.6.36-binary.zip > > Outstanding issues: > > when methods have static and final modifiers, Jrefactory orders them in a way > that generates a checksource error. bug has been logged with jrefactory > > JRefactory places header above package line. Am currently investigating > possible patch / feature request for JRefactory to enable this. > > Cheers > Nathan > > > /* ==================================================================== > * The Apache Software License, Version 1.1 > * > * Copyright (c) 2001 The Apache Software Foundation. All rights > * reserved. > * > * Redistribution and use in source and binary forms, with or without > * modification, are permitted provided that the following conditions > * are met: > * > * 1. Redistributions of source code must retain the above copyright > * notice, this list of conditions and the following disclaimer. > * > * 2. Redistributions in binary form must reproduce the above copyright > * notice, this list of conditions and the following disclaimer in > * the documentation and/or other materials provided with the > * distribution. > * > * 3. The end-user documentation included with the redistribution, > * if any, must include the following acknowledgment: > * "This product includes software developed by the > * Apache Software Foundation (http://www.apache.org/)." > * Alternately, this acknowledgment may appear in the software itself, > * if and wherever such third-party acknowledgments normally appear. > * > * 4. The names "Apache" and "Apache Software Foundation" and > * "Apache Maven" must not be used to endorse or promote products > * derived from this software without prior written permission. For > * written permission, please contact [EMAIL PROTECTED] > * > * 5. Products derived from this software may not be called "Apache", > * "Apache Maven", nor may "Apache" appear in their name, without > * prior written permission of the Apache Software Foundation. > * > * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED > * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES > * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE > * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR > * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, > * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT > * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF > * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND > * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, > * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT > * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF > * SUCH DAMAGE. > * ==================================================================== > * > * This software consists of voluntary contributions made by many > * individuals on behalf of the Apache Software Foundation. For more > * information on the Apache Software Foundation, please see > * <http://www.apache.org/>. > * > * ==================================================================== > */ > package org.apache.maven.sourcedef; > > import org.apache.tools.ant.Task; > import org.apache.tools.ant.Project; > import org.apache.tools.ant.BuildException; > import java.util.Properties; > import java.util.Hashtable; > import java.io.File; > import java.io.FileOutputStream; > import java.io.IOException; > > /** > * task responsible for writing the Jrefactory configuration file. Delegates > * responsibility for construction of the config file to a {@link > * SourcedefDirector} configured with a {@link > * org.apache.maven.sourcedef.JRefactoryPropertyConverter} instance. > * > * @created 28 May 2002 > * @author <A HREF="mailto:[EMAIL PROTECTED]">Nathan Coast</A> > */ > public class JRefactoryConfigTask extends Task > { > /** > * execute method to combine the maven.jrefactory properties with converted > * maven.sourcedef properties and write them to the file > * ${maven.build.dir}/.Refactory/pretty.settings > * > * @exception BuildException thrown if an IOException occurs whilst writing > * to the config file. > */ > public void execute() throws BuildException > { > Project project = getProject(); > Hashtable props = project.getProperties(); > PropertyConverter converter = new JRefactoryPropertyConverter(); > SourcedefDirector director = new SourcedefDirector(converter); > director.readProperties(props); > Properties config = converter.getProperties(); > > String buildDirStr = (String) props.get("maven.build.dir"); > File buildDir = new File(buildDirStr); > File prettyDir = new File(buildDir, ".Refactory"); > if (!prettyDir.exists()) > { > if (!prettyDir.mkdir()) > { > throw new BuildException("unable to create jrefactory " + > "pretty print config directory: " + prettyDir); > } > } > File prettySettings = new File(prettyDir, "pretty.settings"); > if (prettySettings.exists()) > { > prettySettings.delete(); > } > > FileOutputStream fos = null; > try > { > fos = new FileOutputStream(prettySettings); > config.store(fos, "this is a generated file do not edit"); > } > catch (IOException e) > { > throw new BuildException(e); > } > finally > { > if (fos != null) > { > try > { > fos.close(); > } > catch (IOException e) > { > e.printStackTrace(); > } > } > } > } > } > > > /* ==================================================================== > * The Apache Software License, Version 1.1 > * > * Copyright (c) 2001 The Apache Software Foundation. All rights > * reserved. > * > * Redistribution and use in source and binary forms, with or without > * modification, are permitted provided that the following conditions > * are met: > * > * 1. Redistributions of source code must retain the above copyright > * notice, this list of conditions and the following disclaimer. > * > * 2. Redistributions in binary form must reproduce the above copyright > * notice, this list of conditions and the following disclaimer in > * the documentation and/or other materials provided with the > * distribution. > * > * 3. The end-user documentation included with the redistribution, > * if any, must include the following acknowledgment: > * "This product includes software developed by the > * Apache Software Foundation (http://www.apache.org/)." > * Alternately, this acknowledgment may appear in the software itself, > * if and wherever such third-party acknowledgments normally appear. > * > * 4. The names "Apache" and "Apache Software Foundation" and > * "Apache Maven" must not be used to endorse or promote products > * derived from this software without prior written permission. For > * written permission, please contact [EMAIL PROTECTED] > * > * 5. Products derived from this software may not be called "Apache", > * "Apache Maven", nor may "Apache" appear in their name, without > * prior written permission of the Apache Software Foundation. > * > * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED > * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES > * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE > * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR > * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, > * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT > * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF > * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND > * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, > * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT > * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF > * SUCH DAMAGE. > * ==================================================================== > * > * This software consists of voluntary contributions made by many > * individuals on behalf of the Apache Software Foundation. For more > * information on the Apache Software Foundation, please see > * <http://www.apache.org/>. > * > * ==================================================================== > */ > package org.apache.maven.sourcedef; > > import org.apache.tools.ant.BuildException; > import java.util.Properties; > import java.io.File; > import java.io.IOException; > import java.io.BufferedReader; > import java.io.FileReader; > > /** > * Implmentation of PropertyConverter responsible for combining maven.jrefactory > * and maven.sourcedef properties to a set of jrefactory specific properties. > * > * @created 28 May 2002 > * @author <A HREF="mailto:[EMAIL PROTECTED]">Nathan Coast</A> > */ > public class JRefactoryPropertyConverter implements PropertyConverter > { > > /** > * the properties object to contain the JRefactory configuration > */ > private Properties properties = null; > > /** > * Constructor for the JRefactoryPropertyConverter object > */ > JRefactoryPropertyConverter() > { > properties = new Properties(); > } > > /** > * converts the sourcedef property to the corresponding JRefactory property > * for the location of left brace wrt blocks of code and sets it within the > * properties. > * > * @param blockBraceStyle the sourcedef property for block brace style. > */ > public void convertBlockBraceStyle(String blockBraceStyle) > { > properties.put("block.style", blockBraceStyle); > } > > /** > * converts the sourcedef property to the corresponding JRefactory property > * for the location of left brace wrt method declarations and sets it within > * the properties. > * > * @param methodBraceStyle the sourcedef property for method brace style. > */ > public void convertMethodBraceStyle(String methodBraceStyle) > { > properties.put("method.block.style", methodBraceStyle); > } > > /** > * converts the sourcedef property to the corresponding JRefactory property > * for the location of left brace wrt class declarations and sets it within > * the properties. > * > * @param classBraceStyle the sourcedef property for class brace style. > */ > public void convertClassBraceStyle(String classBraceStyle) > { > properties.put("class.block.style", classBraceStyle); > } > > /** > * converts the sourcedef property to the corresponding JRefactory property > * for the location keywords wrt right braces and sets it within the > * properties. > * > * @param keywordLocation the sourcedef property for class brace style. > */ > public void convertKeywordLocationRightBrace(String keywordLocation) > { > String convertedLocation = null; > if (SourcedefDirector.KEYWORD_LOCATION_RIGHT_BRACE_SAME.equals( > keywordLocation)) > { > convertedLocation = "false"; > } > else if (SourcedefDirector.KEYWORD_LOCATION_RIGHT_BRACE_ALONE.equals( > keywordLocation)) > { > convertedLocation = "true"; > } > else > { > throw new BuildException("Unrecognised keyword location " + > keywordLocation); > } > properties.put("catch.start.line", convertedLocation); > properties.put("else.start.line", convertedLocation); > } > > /** > * Sets the max line length within the properties. > * > * @param maxLineLength the maximum allowed line length > */ > public void convertMaxLineLength(String maxLineLength) > { > properties.put("javadoc.wordwrap.max", maxLineLength); > } > > /** > * loads the header file into the properties a line at a time with the > * propety name 'header.[n]' where n is the line number > * > * @param headerFilename filename of the header file to set in the > * properties. > */ > public void convertHeaderFile(String headerFilename) > { > if (headerFilename == null) > { > return; > } > > File headerFile = new File(headerFilename); > if (headerFile.exists()) > { > FileReader fr = null; > try > { > fr = new FileReader(headerFile); > BufferedReader br = new BufferedReader(fr); > > String str = null; > int count = 0; > while ((str = br.readLine()) != null) > { > count++; > String headerLine = "header." + count; > properties.put(headerLine, str); > } > } > catch (IOException e) > { > throw new BuildException(e); > } > finally > { > try > { > fr.close(); > } > catch (IOException e) > { > e.printStackTrace(); > } > } > } > } > > /** > * Sets whether to use tabs or spaces to indent. > * > * @param indentChar whether to allow tabs. > */ > public void convertIndentChar(String indentChar) > { > properties.put("indent.char", indentChar); > } > > /** > * method to insert all other JRefactory configuration in the properties. > * All properties prefixed with maven.jrefactory are JRefactory properties > * and have the 'maven.' suffix removed prior to adding to the properties. > * > * @param property the property name > * @param value the property value > */ > public void passThru(String property, String value) > { > String prefix = "maven.jrefactory."; > int length = prefix.length(); > if (property.startsWith(prefix)) > { > properties.put(property.substring(length), value); > } > } > > /** > * Accessor to the populated properties object. > * > * @return The properties value > */ > public Properties getProperties() > { > return properties; > } > } > > > /* ==================================================================== > * The Apache Software License, Version 1.1 > * > * Copyright (c) 2001 The Apache Software Foundation. All rights > * reserved. > * > * Redistribution and use in source and binary forms, with or without > * modification, are permitted provided that the following conditions > * are met: > * > * 1. Redistributions of source code must retain the above copyright > * notice, this list of conditions and the following disclaimer. > * > * 2. Redistributions in binary form must reproduce the above copyright > * notice, this list of conditions and the following disclaimer in > * the documentation and/or other materials provided with the > * distribution. > * > * 3. The end-user documentation included with the redistribution, > * if any, must include the following acknowledgment: > * "This product includes software developed by the > * Apache Software Foundation (http://www.apache.org/)." > * Alternately, this acknowledgment may appear in the software itself, > * if and wherever such third-party acknowledgments normally appear. > * > * 4. The names "Apache" and "Apache Software Foundation" and > * "Apache Maven" must not be used to endorse or promote products > * derived from this software without prior written permission. For > * written permission, please contact [EMAIL PROTECTED] > * > * 5. Products derived from this software may not be called "Apache", > * "Apache Maven", nor may "Apache" appear in their name, without > * prior written permission of the Apache Software Foundation. > * > * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED > * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES > * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE > * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR > * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, > * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT > * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF > * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND > * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, > * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT > * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF > * SUCH DAMAGE. > * ==================================================================== > * > * This software consists of voluntary contributions made by many > * individuals on behalf of the Apache Software Foundation. For more > * information on the Apache Software Foundation, please see > * <http://www.apache.org/>. > * > * ==================================================================== > */ > package org.apache.maven.sourcedef; > > import java.util.Properties; > > /** > * PropertyConverter instances convert maven properties to values specific to > * some 3rd party system. PropertyConverter fulfils the Builder role within the > * Builder pattern. Instances are responsible for building a Properties object > * specific to the the end consumer of the Properties. > * > * @created 29 May 2002 > * @author <A HREF="mailto:[EMAIL PROTECTED]">Nathan Coast</A> > */ > public interface PropertyConverter > { > /** > * Method to add the maven block brace style to the underlying properties in > * the appropriate format for the consumer. > * > * @param blockBraceStyle the maven block brace style > */ > void convertBlockBraceStyle(String blockBraceStyle); > > /** > * Method to add the maven method brace style to the underlying properties > * in the appropriate format for the consumer. > * > * @param methodBraceStyle the maven method brace style > */ > void convertMethodBraceStyle(String methodBraceStyle); > > /** > * Method to add the maven class brace style to the underlying properties in > * the appropriate format for the consumer. > * > * @param classBraceStyle the maven class brace style > */ > void convertClassBraceStyle(String classBraceStyle); > > /** > * Method to add the maven keyword location (wrt right brace) to the > * underlying properties in the appropriate format for the consumer. > * > * @param keywordLocation the maven keyword location style. > */ > void convertKeywordLocationRightBrace(String keywordLocation); > > /** > * Method to add the maven max line length underlying properties in the > * appropriate format for the consumer. > * > * @param maxLineLength the maven max line length > */ > void convertMaxLineLength(String maxLineLength); > > /** > * Method to add the maven header file name / file to the underlying > * properties in the appropriate format for the consumer. > * > * @param headerFilename Description of the Parameter > */ > void convertHeaderFile(String headerFilename); > > /** > * Method to add the maven indent char policy to the underlying properties > * in the appropriate format for the consumer. > * > * @param indentChar the mave allow tabs policy > */ > void convertIndentChar(String indentChar); > > /** > * Method to process all other properties (not covered by maven.sourcedef) > * > * @param property the property name > * @param value the value of the property > */ > void passThru(String property, String value); > > /** > * Accessor to the Product of the Builder, ie the Properties. > * > * @return The properties object built by this builder. > */ > Properties getProperties(); > } > > > > /* ==================================================================== > * The Apache Software License, Version 1.1 > * > * Copyright (c) 2001 The Apache Software Foundation. All rights > * reserved. > * > * Redistribution and use in source and binary forms, with or without > * modification, are permitted provided that the following conditions > * are met: > * > * 1. Redistributions of source code must retain the above copyright > * notice, this list of conditions and the following disclaimer. > * > * 2. Redistributions in binary form must reproduce the above copyright > * notice, this list of conditions and the following disclaimer in > * the documentation and/or other materials provided with the > * distribution. > * > * 3. The end-user documentation included with the redistribution, > * if any, must include the following acknowledgment: > * "This product includes software developed by the > * Apache Software Foundation (http://www.apache.org/)." > * Alternately, this acknowledgment may appear in the software itself, > * if and wherever such third-party acknowledgments normally appear. > * > * 4. The names "Apache" and "Apache Software Foundation" and > * "Apache Maven" must not be used to endorse or promote products > * derived from this software without prior written permission. For > * written permission, please contact [EMAIL PROTECTED] > * > * 5. Products derived from this software may not be called "Apache", > * "Apache Maven", nor may "Apache" appear in their name, without > * prior written permission of the Apache Software Foundation. > * > * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED > * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES > * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE > * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR > * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, > * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT > * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF > * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND > * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, > * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT > * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF > * SUCH DAMAGE. > * ==================================================================== > * > * This software consists of voluntary contributions made by many > * individuals on behalf of the Apache Software Foundation. For more > * information on the Apache Software Foundation, please see > * <http://www.apache.org/>. > * > * ==================================================================== > */ > package org.apache.maven.sourcedef; > > import java.util.Hashtable; > import java.util.Iterator; > > /** > * SourcedefDirector fulfils the Director role in the Builder pattern > * responsible for building Properties instances specific to 3rd party > * consumers. These Properties instances are built from combining > * maven.sourcedef properties with properties specific to the 3rd party tool. > * The actual building of the property objects is delegated to a {@link > * PropertyConverter} instance used to configure an instance of > * SourcedefDirector. > * > * @created 29 May 2002 > * @author <A HREF="mailto:[EMAIL PROTECTED]">Nathan Coast</A> > */ > public class SourcedefDirector > { > > /** > * constant for 'C' brace style > */ > public final static String BRACE_STYLE_C = "C"; > > /** > * constant for 'pascal' brace style > */ > public final static String BRACE_STYLE_PASCAL = "PASCAL"; > > /** > * constant for the same line keyword location > */ > public final static String KEYWORD_LOCATION_RIGHT_BRACE_SAME = "same"; > > /** > * constant for the new line keywork location > */ > public final static String KEYWORD_LOCATION_RIGHT_BRACE_ALONE = "alone"; > > /** > * constant for the tab indent character > */ > public final static String INDENT_TAB = "tab"; > > /** > * constant for the space indent character > */ > public final static String INDENT_SPACE = "space"; > > /** > * the PropetyConverter instance responsible for Building the Properites > * object. > */ > private PropertyConverter converter; > > /** > * Constructor for the SourcedefDirector object, sets the PropertyConverter > * instance. > * > * @param converter the Builder to configure this Director with > */ > SourcedefDirector(PropertyConverter converter) > { > this.converter = converter; > } > > /** > * Method to build the Properties object from the hashtable of properties > * passsed in. > * > * @param mavenSourceProps the full set of mave propeties. > */ > void readProperties(Hashtable mavenSourceProps) > { > Iterator it = mavenSourceProps.keySet().iterator(); > while (it.hasNext()) > { > String property = (String) it.next(); > String value = (String) mavenSourceProps.get(property); > > if (property.equals("maven.sourcedef.block.brace.style")) > { > converter.convertBlockBraceStyle(value); > } > else if (property.equals("maven.sourcedef.method.brace.style")) > { > converter.convertMethodBraceStyle(value); > } > else if (property.equals("maven.sourcedef.class.brace.style")) > { > converter.convertClassBraceStyle(value); > } > else if (property.equals( > "maven.sourcedef.keyword.location.right.brace")) > { > converter.convertKeywordLocationRightBrace(value); > } > else if (property.equals("maven.sourcedef.max.line.len")) > { > converter.convertMaxLineLength(value); > } > else if (property.equals("maven.sourcedef.header.file")) > { > converter.convertHeaderFile(value); > } > else if (property.equals("maven.sourcedef.indent.char")) > { > converter.convertIndentChar(value); > } > else > { > converter.passThru(property, value); > } > } > } > } > Index: jakarta-turbine-maven/build.xml > =================================================================== > RCS file: /home/cvspublic/jakarta-turbine-maven/build.xml,v > retrieving revision 1.37 > diff -u -r1.37 build.xml > --- jakarta-turbine-maven/build.xml 19 May 2002 01:41:14 -0000 1.37 > +++ jakarta-turbine-maven/build.xml 30 May 2002 15:39:15 -0000 > @@ -147,6 +147,10 @@ > <target name="maven:check-source"> > <ant antfile="${maven.home}/plugins/core/build.xml" target="check-source"/> > </target> > + > + <target name="maven:pretty-print"> > + <ant antfile="${maven.home}/plugins/core/build.xml" target="pretty-print"/> > + </target> > > <target name="maven:dist"> > <ant antfile="${maven.home}/plugins/core/build.xml" target="dist"/> > Index: jakarta-turbine-maven/src/templates/build/plugins/core/build.xml > =================================================================== > RCS file: >/home/cvspublic/jakarta-turbine-maven/src/templates/build/plugins/core/build.xml,v > retrieving revision 1.4 > diff -u -r1.4 build.xml > --- jakarta-turbine-maven/src/templates/build/plugins/core/build.xml 27 May 2002 >07:50:45 -0000 1.4 > +++ jakarta-turbine-maven/src/templates/build/plugins/core/build.xml 30 May 2002 >15:39:48 -0000 > @@ -329,6 +329,49 @@ > > </target> > > + > + <!-- ================================================================== --> > + <!-- JRefactory Pretty Print --> > + <!-- ================================================================== --> > + > + <target > + name="pretty-print" > + depends="local-init, env" > + description="modify code according to maven source definition"> > + > + <taskdef > + name="prettyprintconfig" > + classname="org.apache.maven.sourcedef.JRefactoryConfigTask"> > + <classpath refid="maven-classpath"/> > + </taskdef> > + > + <prettyprintconfig/> > + > + <taskdef name="filesetfrompath" > + classname="org.apache.maven.ant.FileSetFromPath"> > + <classpath> > + <path refid="maven-classpath"/> > + </classpath> > + </taskdef> > + > + <filesetfrompath pathid="maven.src.set" > + filesetid="maven.sourceDirectories.fileset" > + includes="${maven.jrefactory.includes}" > + excludes="${maven.jrefactory.excludes}"/> > + > + <taskdef > + name="prettyprint" > + classname="org.acm.seguin.ant.Pretty"> > + <classpath refid="maven-classpath"/> > + </taskdef> > + > + <prettyprint settingsDir="${maven.build.dir}"> > + <fileset refid="maven.sourceDirectories.fileset" /> > + </prettyprint> > + > + </target> > + > + > <!-- ================================================================== --> > <!-- C H E C K S O U R C E --> > <!-- ================================================================== --> > @@ -339,6 +382,13 @@ > > <target name="do-check-source" if="maven.sourcesPresent"> > > + <taskdef > + name="checkstyleconfig" > + classname="org.apache.maven.sourcedef.CheckstyleConfigTask"> > + <classpath refid="maven-classpath"/> > + </taskdef> > + > + > <taskdef > name="checkstyle" > classname="com.puppycrawl.tools.checkstyle.CheckStyleTask"> > @@ -363,54 +413,21 @@ > includes="${maven.checkstyle.includes}" > excludes="${maven.checkstyle.excludes}"/> > > - <checkstyle > - lcurlyType="${maven.checkstyle.lcurly.type}" > - lcurlyMethod="${maven.checkstyle.lcurly.method}" > - lcurlyOther="${maven.checkstyle.lcurly.other}" > - rcurly="${maven.checkstyle.rcurly}" > - parenPad="${maven.checkstyle.paren.pad}" > - allowTabs="${maven.checkstyle.allow.tabs}" > - allowProtected="${maven.checkstyle.allow.protected}" > - allowPackage="${maven.checkstyle.allow.package}" > - allowNoAuthor="${maven.checkstyle.allow.no.author}" > - maxLineLen="${maven.checkstyle.max.line.len}" > - tabWidth="${maven.checkstyle.tab.width}" > - ignoreLineLengthPattern="${maven.checkstyle.ignore.line.len.pattern}" > - maxMethodLen="${maven.checkstyle.max.method.len}" > - maxConstructorLen="${maven.checkstyle.max.constructor.len}" > - maxFileLen="${maven.checkstyle.max.file.len}" > - ignoreImportLen="${maven.checkstyle.ignore.import.len}" > - memberPattern="${maven.checkstyle.member.pattern}" > - publicMemberPattern="${maven.checkstyle.public.member.pattern}" > - paramPattern="${maven.checkstyle.param.pattern}" > - constPattern="${maven.checkstyle.const.pattern}" > - staticPattern="${maven.checkstyle.static.pattern}" > - typePattern="${maven.checkstyle.type.pattern}" > - methodPattern="${maven.checkstyle.method.pattern}" > - localVarPattern="${maven.checkstyle.local.var.pattern}" > - headerFile="${maven.checkstyle.header.file}" > - headerLinesRegexp="${maven.checkstyle.header.lines.regexp}" > - headerIgnoreLine="${maven.checkstyle.header.ignore.line}" > - javadocScope="${maven.checkstyle.javadoc.scope}" > - requirePackageHtml="${maven.checkstyle.require.package.html}" > - ignoreImports="${maven.checkstyle.ignore.imports}" > - illegalImports="${maven.checkstyle.illegal.imports}" > - ignoreWhitespace="${maven.checkstyle.ignore.whitespace}" > - ignoreCastWhitespace="${maven.checkstyle.ignore.cast.whitespace}" > - ignoreBraces="${maven.checkstyle.ignore.braces}" > - ignorePublicInInterface="${maven.checkstyle.ignore.public.in.interface}" > - failOnViolation="${maven.checkstyle.fail.on.violation}" > - cacheFile="${maven.checkstyle.cache.file}" > > + <checkstyleconfig/> > + > + <checkstyle > + properties="${maven.checkstyle.dir}/CheckstyleConfig.properties" > + failOnViolation="${maven.checkstyle.fail.on.violation}"> > <fileset refid="maven.sourceDirectories.fileset" /> > - <formatter type="xml" toFile="${maven.build.dir}/checkstyle-raw-report.xml"/> > - <formatter type="plain" >toFile="${maven.build.dir}/checkstyle-raw-report.txt"/> > + <formatter type="xml" >toFile="${maven.checkstyle.dir}/checkstyle-raw-report.xml"/> > + <formatter type="plain" >toFile="${maven.checkstyle.dir}/checkstyle-raw-report.txt"/> > </checkstyle> > > <dvsl > basedir="." > style="${maven.home}/stylesheets/checkstyle.dvsl" > toolboxfile="${maven.home}/stylesheets/toolbox.props" > - in="${maven.build.dir}/checkstyle-raw-report.xml" > + in="${maven.checkstyle.dir}/checkstyle-raw-report.xml" > out="${maven.gen.docs}/checkstyle-report.xml"> > <!-- Need to add the maven jar to load the toolbox --> > <classpath> > Index: jakarta-turbine-maven/src/templates/build/plugins/core/default.properties > =================================================================== > RCS file: >/home/cvspublic/jakarta-turbine-maven/src/templates/build/plugins/core/default.properties,v > retrieving revision 1.4 > diff -u -r1.4 default.properties > --- jakarta-turbine-maven/src/templates/build/plugins/core/default.properties 27 May >2002 08:02:41 -0000 1.4 > +++ jakarta-turbine-maven/src/templates/build/plugins/core/default.properties 30 May >2002 15:40:25 -0000 > @@ -75,21 +75,29 @@ > maven.jxr.destdir = ${maven.docs.dest}/xref > > # > +# source definition properties. if not set, default values below are > +# set by org.apache.maven.sourcedef.SourceDefinition > +# > + > +maven.sourcedef.class.brace.style=PASCAL > +maven.sourcedef.method.brace.style=PASCAL > +maven.sourcedef.block.brace.style=PASCAL > +maven.sourcedef.keyword.location.right.brace=alone > +maven.sourcedef.max.line.len=80 > +maven.sourcedef.header.file=LICENSE.txt > +maven.sourcedef.indent.char=space > + > +# > # Checkstyle settings ... default maven settings, these can be > # overridden in a project specific properties file. > # > +maven.checkstyle.dir=${maven.build.dir}/checkstyle > maven.checkstyle.includes = **/*.java > maven.checkstyle.excludes = > -maven.checkstyle.lcurly.type = nl > -maven.checkstyle.lcurly.method = nl > -maven.checkstyle.lcurly.other = nl > -maven.checkstyle.rcurly = alone > maven.checkstyle.paren.pad = nospace > -maven.checkstyle.allow.tabs = false > maven.checkstyle.allow.protected = false > maven.checkstyle.allow.package = false > maven.checkstyle.allow.no.author = false > -maven.checkstyle.max.line.len = 80 > maven.checkstyle.tab.width = 8 > maven.checkstyle.ignore.line.len.pattern = ^$ > maven.checkstyle.max.method.len = 150 > @@ -104,9 +112,8 @@ > maven.checkstyle.type.pattern = ^[A-Z][a-zA-Z0-9]*$ > maven.checkstyle.method.pattern = ^[a-z][a-zA-Z0-9]*$ > maven.checkstyle.local.var.pattern = ^[a-z][a-zA-Z0-9]*$ > -maven.checkstyle.header.file = LICENSE.txt > maven.checkstyle.header.lines.regexp = false > -maven.checkstyle.header.ignore.line = 1,6 > +maven.checkstyle.header.ignore.line= > maven.checkstyle.javadoc.scope = private > maven.checkstyle.require.package.html = false > maven.checkstyle.ignore.imports = false > @@ -116,7 +123,94 @@ > maven.checkstyle.ignore.braces = false > maven.checkstyle.ignore.public.in.interface = false > maven.checkstyle.fail.on.violation = false > -maven.checkstyle.cache.file = ${maven.build.dir}/checkstyle-cachefile > +maven.checkstyle.cache.file = ${maven.checkstyle.dir}/checkstyle-cachefile > + > +# > +# jrefactroy properties > +# > + > +maven.jrefactory.includes=**/*.java > +maven.jrefactory.excludes= > +maven.jrefactory.version=3.8 > +maven.jrefactory.indent=4 > +maven.jrefactory.indent.char=space > +maven.jrefactory.expr.space=false > +maven.jrefactory.lines.between=1 > +maven.jrefactory.cast.space=true > +maven.jrefactory.cast.force.nospace=false > +maven.jrefactory.surprise.return=double > +maven.jrefactory.throws.newline=false > +maven.jrefactory.field.name.indent=-1 > +maven.jrefactory.end.line=CRNL > +maven.jrefactory.variable.spacing=single > +maven.jrefactory.dynamic.variable.spacing=1 > +maven.jrefactory.variable.align.with.block=false > +maven.jrefactory.case.indent=4 > +maven.jrefactory.keyword.space=true > +maven.jrefactory.insert.space.around.local.variables=false > +maven.jrefactory.lines.after.package=1 > +maven.jrefactory.maintain.newlines.around.imports=true > +maven.jrefactory.lines.before.class=0 > +maven.jrefactory.indent.in.initializer=false > +maven.jrefactory.bang.space=false > +maven.jrefactory.method.space=false > +maven.jrefactory.cast.inside.space=false > +maven.jrefactory.space.around.ops=true > +maven.jrefactory.force.block=true > +maven.jrefactory.empty.block.single.line=true > +maven.jrefactory.remove.excess.blocks=false > +maven.jrefactory.singleline.comment.ownline=true > +maven.jrefactory.singleline.comment.absoluteindent=0 > +maven.jrefactory.singleline.comment.incrementalindent=0 > +maven.jrefactory.singleline.comment.indentstyle.shared=incremental > +maven.jrefactory.singleline.comment.indentstyle.ownline=code > +maven.jrefactory.c.style.format=align.star > +maven.jrefactory.c.style.indent=2 > +maven.jrefactory.method.minimum=none > +maven.jrefactory.field.minimum=none > +maven.jrefactory.class.minimum=none > +maven.jrefactory.javadoc.star=1 > +maven.jrefactory.javadoc.wordwrap.min=40 > +maven.jrefactory.space.before.javadoc=true > +maven.jrefactory.javadoc.id.lineup=true > +maven.jrefactory.javadoc.indent=1 > +maven.jrefactory.reformat.comments=true > +maven.jrefactory.exception.tag.name=@exception > +maven.jrefactory.document.nested.classes=true > +maven.jrefactory.allow.singleline.javadoc=false > +maven.jrefactory.keep.all.javadoc=false > +maven.jrefactory.class.descr=Description of the Class > +maven.jrefactory.interface.descr=Description of the Interface > +maven.jrefactory.constructor.descr=Constructor for the {0} object > +maven.jrefactory.method.descr=Description of the Method > +maven.jrefactory.getter.descr=Gets the {3} attribute of the {1} {2} > +maven.jrefactory.getter.return.descr=The {3} value > +maven.jrefactory.setter.descr=Sets the {3} attribute of the {1} {2} > +maven.jrefactory.setter.param.descr=The new {3} value > +maven.jrefactory.field.descr=Description of the Field > +maven.jrefactory.run.descr=Main processing method for the {1} {2} > +maven.jrefactory.main.descr=The main program for the {1} {2} > +maven.jrefactory.main.param.descr=The command line arguments > +maven.jrefactory.adder.descr=Adds a feature to the {0} attribute of the {1} {2} > +maven.jrefactory.adder.param.descr=The feature to be added to the {0} attribute > +maven.jrefactory.junit.setUp.descr=The JUnit setup method > +maven.jrefactory.junit.test.descr=A unit test for JUnit > +maven.jrefactory.junit.tearDown.descr=The teardown method for JUnit > +maven.jrefactory.junit.suite.descr=A unit test suite for JUnit > +maven.jrefactory.junit.suite.return.descr=The test suite > +maven.jrefactory.author.descr={0} > +maven.jrefactory.created.descr={1} > +maven.jrefactory.param.descr=Description of the Parameter > +maven.jrefactory.return.descr=Description of the Return Value > +maven.jrefactory.exception.descr=Description of the Exception > +maven.jrefactory.class.tags=created > +maven.jrefactory.method.tags=param,return,exception > +maven.jrefactory.field.tags= > +maven.jrefactory.char.stream.type=1 > +maven.jrefactory.pretty.printer.backup.ext= > +maven.jrefactory.sort.top=false > +maven.jrefactory.import.sort.important= > +maven.jrefactory.import.sort.neighbourhood=0 > > # > # UI Color Prefs > Index: jakarta-turbine-maven/jars.list > =================================================================== > RCS file: /home/cvspublic/jakarta-turbine-maven/jars.list,v > retrieving revision 1.9 > diff -u -r1.9 jars.list > --- jakarta-turbine-maven/jars.list 12 May 2002 15:18:08 -0000 1.9 > +++ jakarta-turbine-maven/jars.list 30 May 2002 15:40:55 -0000 > @@ -39,3 +39,4 @@ > regexp-1.2.jar > velocity-1.3-dev.jar > velocity-dvsl-0.43.jar > +jrefactory.jar > Index: jakarta-turbine-maven/project.xml > =================================================================== > RCS file: /home/cvspublic/jakarta-turbine-maven/project.xml,v > retrieving revision 1.80 > diff -u -r1.80 project.xml > --- jakarta-turbine-maven/project.xml 26 May 2002 16:17:36 -0000 1.80 > +++ jakarta-turbine-maven/project.xml 30 May 2002 15:41:24 -0000 > @@ -327,6 +327,15 @@ > <url>http://www.clarkware.com/software/JDepend.html</url> > </dependency> > > + <dependency> > + <name>jrefactory</name> > + <type>required</type> > + <version>2.6.36</version> > + <jar>jrefactory.jar</jar> > + <url>http://jrefactory.sourceforge.net/chrissoft.html</url> > + </dependency> > + > + > <!-- maven:pdf requirements > <dependency> > <name>fop</name> > > > /* ==================================================================== > * The Apache Software License, Version 1.1 > * > * Copyright (c) 2001 The Apache Software Foundation. All rights > * reserved. > * > * Redistribution and use in source and binary forms, with or without > * modification, are permitted provided that the following conditions > * are met: > * > * 1. Redistributions of source code must retain the above copyright > * notice, this list of conditions and the following disclaimer. > * > * 2. Redistributions in binary form must reproduce the above copyright > * notice, this list of conditions and the following disclaimer in > * the documentation and/or other materials provided with the > * distribution. > * > * 3. The end-user documentation included with the redistribution, > * if any, must include the following acknowledgment: > * "This product includes software developed by the > * Apache Software Foundation (http://www.apache.org/)." > * Alternately, this acknowledgment may appear in the software itself, > * if and wherever such third-party acknowledgments normally appear. > * > * 4. The names "Apache" and "Apache Software Foundation" and > * "Apache Maven" must not be used to endorse or promote products > * derived from this software without prior written permission. For > * written permission, please contact [EMAIL PROTECTED] > * > * 5. Products derived from this software may not be called "Apache", > * "Apache Maven", nor may "Apache" appear in their name, without > * prior written permission of the Apache Software Foundation. > * > * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED > * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES > * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE > * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR > * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, > * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT > * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF > * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND > * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, > * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT > * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF > * SUCH DAMAGE. > * ==================================================================== > * > * This software consists of voluntary contributions made by many > * individuals on behalf of the Apache Software Foundation. For more > * information on the Apache Software Foundation, please see > * <http://www.apache.org/>. > * > * ==================================================================== > */ > package org.apache.maven.sourcedef; > > import java.io.File; > import org.apache.tools.ant.BuildException; > import org.apache.tools.ant.Task; > import org.apache.tools.ant.Project; > import java.io.FileOutputStream; > import java.io.IOException; > import java.util.Hashtable; > import java.util.Properties; > > /** > * task responsible for writing the checkstyle configuration file. Delegates > * responsibility for construction of the config file to a {@link > * SourcedefDirector} configured with a {@link > * org.apache.maven.sourcedef.CheckstylePropertyConverter} instance. > * > * @created 28 May 2002 > * @author <A HREF="mailto:[EMAIL PROTECTED]">Nathan Coast</A> > */ > public class CheckstyleConfigTask extends Task > { > > /** > * execute method to combine the maven.checkstyle properties with converted > * maven.sourcedef properties and write them to > * ${maven.checkstyle.dir}/CheckstyleConfig.properties > * > * @exception BuildException thrown if an IOException occurs whilst > * attempting to write to the config file. > */ > public void execute() throws BuildException > { > Project project = getProject(); > Hashtable props = project.getProperties(); > PropertyConverter converter = new CheckstylePropertyConverter(); > SourcedefDirector director = new SourcedefDirector(converter); > director.readProperties(props); > Properties config = converter.getProperties(); > > String checkstyleDirStr = (String) props.get("maven.checkstyle.dir"); > File checkstyleDir = new File(checkstyleDirStr); > if (!checkstyleDir.exists()) > { > if (!checkstyleDir.mkdir()) > { > throw new BuildException( > "unable to create checkstyle directory: " > + checkstyleDir); > } > } > File configFile = new File(checkstyleDir, > "CheckstyleConfig.properties"); > > FileOutputStream fos = null; > try > { > fos = new FileOutputStream(configFile); > config.store(fos, "this is a generated file do not edit"); > } > catch (IOException e) > { > throw new BuildException(e); > } > finally > { > if (fos != null) > { > try > { > fos.close(); > } > catch (IOException e) > { > e.printStackTrace(); > } > } > } > } > } > > > /* ==================================================================== > * The Apache Software License, Version 1.1 > * > * Copyright (c) 2001 The Apache Software Foundation. All rights > * reserved. > * > * Redistribution and use in source and binary forms, with or without > * modification, are permitted provided that the following conditions > * are met: > * > * 1. Redistributions of source code must retain the above copyright > * notice, this list of conditions and the following disclaimer. > * > * 2. Redistributions in binary form must reproduce the above copyright > * notice, this list of conditions and the following disclaimer in > * the documentation and/or other materials provided with the > * distribution. > * > * 3. The end-user documentation included with the redistribution, > * if any, must include the following acknowledgment: > * "This product includes software developed by the > * Apache Software Foundation (http://www.apache.org/)." > * Alternately, this acknowledgment may appear in the software itself, > * if and wherever such third-party acknowledgments normally appear. > * > * 4. The names "Apache" and "Apache Software Foundation" and > * "Apache Maven" must not be used to endorse or promote products > * derived from this software without prior written permission. For > * written permission, please contact [EMAIL PROTECTED] > * > * 5. Products derived from this software may not be called "Apache", > * "Apache Maven", nor may "Apache" appear in their name, without > * prior written permission of the Apache Software Foundation. > * > * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED > * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES > * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE > * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR > * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, > * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT > * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF > * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND > * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, > * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT > * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF > * SUCH DAMAGE. > * ==================================================================== > * > * This software consists of voluntary contributions made by many > * individuals on behalf of the Apache Software Foundation. For more > * information on the Apache Software Foundation, please see > * <http://www.apache.org/>. > * > * ==================================================================== > */ > package org.apache.maven.sourcedef; > > import org.apache.tools.ant.BuildException; > import java.util.Properties; > > /** > * Implmentation of PropertyConverter responsible for combining maven.checkstyle > * and maven.sourcedef properties to a set of checkstyle specific properties. > * > * @created 28 May 2002 > * @author <A HREF="mailto:[EMAIL PROTECTED]">Nathan Coast</A> > */ > public class CheckstylePropertyConverter implements PropertyConverter > { > /** > * the properties object to contain the Checkstyle configuration > */ > private Properties properties = null; > > /** > * Constructor for the CheckstylePropertyConverter object > */ > CheckstylePropertyConverter() > { > properties = new Properties(); > } > > /** > * converts the sourcedef property to the corresponding checkstyle property > * for the location of left brace wrt blocks of code and sets it within the > * properties. > * > * @param blockBraceStyle the sourcedef property for block brace style. > */ > public void convertBlockBraceStyle(String blockBraceStyle) > { > String braceStyle = convertLeftBraceType(blockBraceStyle); > properties.put("checkstyle.lcurly.other", braceStyle); > } > > /** > * converts the sourcedef property to the corresponding checkstyle property > * for the location of left brace wrt method declarations and sets it within > * the properties. > * > * @param methodBraceStyle the sourcedef property for method brace style. > */ > public void convertMethodBraceStyle(String methodBraceStyle) > { > String braceStyle = convertLeftBraceType(methodBraceStyle); > properties.put("checkstyle.lcurly.method", braceStyle); > } > > /** > * converts the sourcedef property to the corresponding checkstyle property > * for the location of left brace wrt class declarations and sets it within > * the properties. > * > * @param classBraceStyle the sourcedef property for class brace style. > */ > public void convertClassBraceStyle(String classBraceStyle) > { > String braceStyle = convertLeftBraceType(classBraceStyle); > properties.put("checkstyle.lcurly.type", braceStyle); > } > > /** > * converts the sourcedef property to the corresponding checkstyle property > * for the location keywords wrt right braces and sets it within the > * properties. > * > * @param keywordLocation the sourcedef property for class brace style. > */ > public void convertKeywordLocationRightBrace(String keywordLocation) > { > properties.put("checkstyle.rcurly", keywordLocation); > } > > /** > * Sets the max line length within the properties. > * > * @param maxLineLength the maximum allowed line length > */ > public void convertMaxLineLength(String maxLineLength) > { > properties.put("checkstyle.maxlinelen", maxLineLength); > } > > /** > * Sets the name of the header file within the properties. > * > * @param headerFilename the header filename to set in the properties. > */ > public void convertHeaderFile(String headerFilename) > { > if (headerFilename == null) > { > return; > } > properties.put("checkstyle.header.file", headerFilename); > } > > /** > * Sets whether or not tabs are allowed into the properties. > * > * @param indentChar Description of the Parameter > */ > public void convertIndentChar(String indentChar) > { > String value; > if (SourcedefDirector.INDENT_TAB.equals(indentChar)) > { > value = "true"; > } > else if (SourcedefDirector.INDENT_SPACE.equals(indentChar)) > { > value = "false"; > } > else > { > throw new BuildException( > "indent char " + indentChar + " not recognised"); > } > properties.put("checkstyle.allow.tabs", value); > } > > /** > * method to insert all other checkstyle configuration in the properties. > * All properties prefixed with maven.checkstyle are checkstyle properties > * and have the 'maven.' suffix removed prior to adding to the properties. > * > * @param property the property name > * @param value the property value > */ > public void passThru(String property, String value) > { > int length = "maven.".length(); > if (property.startsWith("maven.checkstyle.")) > { > properties.put(property.substring(length), value); > } > } > > /** > * Accessor to the populated properties object. > * > * @return The properties value > */ > public Properties getProperties() > { > return properties; > } > > /** > * utility to convert between maven.sourcedef properties and checkstyle. > * properties for the left brace style. if 'C' return 'eol' if 'PASCAL' > * return 'nl' > * > * @param type the maven.sourcedef property to convert > * @return the maven.sourcedef property converted to checkstyle > * property. > */ > private static String convertLeftBraceType(String type) > { > String convertedType = null; > if (SourcedefDirector.BRACE_STYLE_C.equals(type)) > { > convertedType = "eol"; > } > else if (SourcedefDirector.BRACE_STYLE_PASCAL.equals(type)) > { > convertedType = "nl"; > } > else > { > throw new BuildException("Unknown left brace type " + type); > } > return convertedType; > } > } > > -- > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> -- Peter Kazmier http://www.kazmier.com PGP Fingerprint 4FE7 8DA3 D0B5 9CAA 69DC 7243 1855 BC2E 4B43 5654 -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>