CPD Results

The following document contains the results of PMD's CPD 4.3.

Duplications

FileLine
org/jomc/mojo/HelpMojo.java192
org/jomc/mojo/HelpMojo.java431
                append( sb, "Expression: ${jomc.commitMainClassesExecutionStrategy}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectStylesheet", 2 );
                append( sb, "XSLT document to use for transforming model objects.\nThe value of the parameter is a location to search a XSLT document at. First the value is used to search the class path of the plugin. If a class path resource is found, a XSLT document is loaded from that resource. If no class path resource is found, an attempt is made to parse the value to an URL. Succeeding that, an XSLT document is loaded from that URL (since version 1.2). Failing that, the value is interpreted as a file name of a XSLT document to load relative to the base directory of the project. If that file exists, a XSLT document is loaded from that file. If no XSLT document is found at the given location, a build failure is produced.\n\nNote: When upgrading to version 1.2, any project dependencies holding XSLT documents referenced by this parameter need to be added to the plugins\' dependencies.\n\nDeprecated: As of JOMC 1.2, please use the \'modelObjectStylesheetResources\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectStylesheetResources", 2 );
                append( sb, "XSLT documents to use for transforming model objects.\n<modelObjectStylesheetResources>\n\u00a0\u00a0<modelObjectStylesheetResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0XSLT\u00a0document.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0XSLT\u00a0document\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0\u00a0\u00a0<transformationParameterResources>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0</transformationParameterResources>\n\u00a0\u00a0\u00a0\u00a0<transformationParameters>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationParameter>\n\u00a0\u00a0\u00a0\u00a0</transformationParameters>\n\u00a0\u00a0\u00a0\u00a0<transformationOutputProperties>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0</transformationOutputProperties>\n\u00a0\u00a0</modelObjectStylesheetResource>\n</modelObjectStylesheetResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
                append( sb, "Velocity runtime properties.\n<velocityProperties>\n\u00a0\u00a0<velocityProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</velocityProperty>\n</velocityProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "velocityPropertyResources", 2 );
                append( sb, "Velocity runtime property resources.\n<velocityPropertyResources>\n\u00a0\u00a0<velocityPropertyResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</velocityPropertyResource>\n</velocityPropertyResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "verbose (Default: false)", 2 );
                append( sb, "Controls verbosity of the plugin.", 3 );
                append( sb, "Expression: ${jomc.verbose}", 3 );
                append( sb, "", 0 );
            }
        }

        if ( goal == null || goal.length() <= 0 || "commit-test-classes".equals( goal ) )
FileLine
org/jomc/mojo/HelpMojo.java2611
org/jomc/mojo/HelpMojo.java2842
org/jomc/mojo/HelpMojo.java3073
org/jomc/mojo/HelpMojo.java3304
org/jomc/mojo/HelpMojo.java3535
org/jomc/mojo/HelpMojo.java3766
            append( sb, "Validates a projects\' main class file model objects.", 1 );
            append( sb, "", 0 );
            if ( detail )
            {
                append( sb, "Available parameters:", 1 );
                append( sb, "", 0 );

                append( sb, "classesDirectory", 2 );
                append( sb, "Directory holding the compiled class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'outputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "classFileProcessorClassName (Default: org.jomc.tools.ClassFileProcessor)", 2 );
                append( sb, "Class name of the ClassFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.classFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "classProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of class files.", 3 );
                append( sb, "Expression: ${jomc.classProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "validateMainClassesExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java721
org/jomc/mojo/HelpMojo.java952
                append( sb, "Expression: ${jomc.manageMainSourcesExecutionStrategy}", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
                append( sb, "Velocity runtime properties.\n<velocityProperties>\n\u00a0\u00a0<velocityProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</velocityProperty>\n</velocityProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "velocityPropertyResources", 2 );
                append( sb, "Velocity runtime property resources.\n<velocityPropertyResources>\n\u00a0\u00a0<velocityPropertyResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</velocityPropertyResource>\n</velocityPropertyResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "verbose (Default: false)", 2 );
                append( sb, "Controls verbosity of the plugin.", 3 );
                append( sb, "Expression: ${jomc.verbose}", 3 );
                append( sb, "", 0 );
            }
        }

        if ( goal == null || goal.length() <= 0 || "manage-test-sources".equals( goal ) )
FileLine
org/jomc/mojo/HelpMojo.java721
org/jomc/mojo/HelpMojo.java952
org/jomc/mojo/HelpMojo.java2648
org/jomc/mojo/HelpMojo.java2879
org/jomc/mojo/HelpMojo.java3110
org/jomc/mojo/HelpMojo.java3341
org/jomc/mojo/HelpMojo.java3572
org/jomc/mojo/HelpMojo.java3803
                append( sb, "Expression: ${jomc.manageMainSourcesExecutionStrategy}", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
FileLine
org/jomc/mojo/HelpMojo.java238
org/jomc/mojo/HelpMojo.java477
org/jomc/mojo/HelpMojo.java740
org/jomc/mojo/HelpMojo.java971
                append( sb, "XSLT documents to use for transforming model objects.\n<modelObjectStylesheetResources>\n\u00a0\u00a0<modelObjectStylesheetResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0XSLT\u00a0document.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0XSLT\u00a0document\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0\u00a0\u00a0<transformationParameterResources>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0</transformationParameterResources>\n\u00a0\u00a0\u00a0\u00a0<transformationParameters>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationParameter>\n\u00a0\u00a0\u00a0\u00a0</transformationParameters>\n\u00a0\u00a0\u00a0\u00a0<transformationOutputProperties>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0</transformationOutputProperties>\n\u00a0\u00a0</modelObjectStylesheetResource>\n</modelObjectStylesheetResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
                append( sb, "Velocity runtime properties.\n<velocityProperties>\n\u00a0\u00a0<velocityProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</velocityProperty>\n</velocityProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "velocityPropertyResources", 2 );
                append( sb, "Velocity runtime property resources.\n<velocityPropertyResources>\n\u00a0\u00a0<velocityPropertyResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</velocityPropertyResource>\n</velocityPropertyResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "verbose (Default: false)", 2 );
                append( sb, "Controls verbosity of the plugin.", 3 );
                append( sb, "Expression: ${jomc.verbose}", 3 );
                append( sb, "", 0 );
            }
        }

        if ( goal == null || goal.length() <= 0 || "commit-test-classes".equals( goal ) )
FileLine
org/jomc/mojo/HelpMojo.java4039
org/jomc/mojo/HelpMojo.java4275
                append( sb, "Expression: ${jomc.mainResourcesOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceBundleDefaultLanguage", 2 );
                append( sb, "The language of the default language properties file of generated resource bundle properties resources.", 3 );
                append( sb, "Expression: ${jomc.resourceBundleDefaultLanguage}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
FileLine
org/jomc/mojo/HelpMojo.java238
org/jomc/mojo/HelpMojo.java477
org/jomc/mojo/HelpMojo.java2667
org/jomc/mojo/HelpMojo.java2898
org/jomc/mojo/HelpMojo.java3129
org/jomc/mojo/HelpMojo.java3360
org/jomc/mojo/HelpMojo.java3591
org/jomc/mojo/HelpMojo.java3822
                append( sb, "XSLT documents to use for transforming model objects.\n<modelObjectStylesheetResources>\n\u00a0\u00a0<modelObjectStylesheetResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0XSLT\u00a0document.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0XSLT\u00a0document\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0\u00a0\u00a0<transformationParameterResources>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0</transformationParameterResources>\n\u00a0\u00a0\u00a0\u00a0<transformationParameters>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationParameter>\n\u00a0\u00a0\u00a0\u00a0</transformationParameters>\n\u00a0\u00a0\u00a0\u00a0<transformationOutputProperties>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0</transformationOutputProperties>\n\u00a0\u00a0</modelObjectStylesheetResource>\n</modelObjectStylesheetResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
FileLine
org/jomc/mojo/HelpMojo.java1141
org/jomc/mojo/HelpMojo.java1876
            append( sb, "Displays a project\'s main instance.", 1 );
            append( sb, "", 0 );
            if ( detail )
            {
                append( sb, "Available parameters:", 1 );
                append( sb, "", 0 );

                append( sb, "classesDirectory", 2 );
                append( sb, "Directory holding the compiled class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'outputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "classFileProcessorClassName (Default: org.jomc.tools.ClassFileProcessor)", 2 );
                append( sb, "Class name of the ClassFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.classFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "classProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of class files.", 3 );
                append( sb, "Expression: ${jomc.classProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "document", 2 );
                append( sb, "File to write the model to.", 3 );
                append( sb, "Expression: ${jomc.document}", 3 );
                append( sb, "", 0 );

                append( sb, "documentEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "Encoding of the document to write.", 3 );
                append( sb, "Expression: ${jomc.documentEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "identifier", 2 );
                append( sb, "Identifier of the instance to show.", 3 );
                append( sb, "Required: Yes", 3 );
                append( sb, "Expression: ${jomc.identifier}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "showMainInstanceExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java1629
org/jomc/mojo/HelpMojo.java2364
            append( sb, "Displays a project\'s main specification.", 1 );
            append( sb, "", 0 );
            if ( detail )
            {
                append( sb, "Available parameters:", 1 );
                append( sb, "", 0 );

                append( sb, "classesDirectory", 2 );
                append( sb, "Directory holding the compiled class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'outputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "classFileProcessorClassName (Default: org.jomc.tools.ClassFileProcessor)", 2 );
                append( sb, "Class name of the ClassFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.classFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "classProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of class files.", 3 );
                append( sb, "Expression: ${jomc.classProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "document", 2 );
                append( sb, "File to write the model to.", 3 );
                append( sb, "Expression: ${jomc.document}", 3 );
                append( sb, "", 0 );

                append( sb, "documentEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "Encoding of the document to write.", 3 );
                append( sb, "Expression: ${jomc.documentEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "identifier", 2 );
                append( sb, "Identifier of the specification to show.", 3 );
                append( sb, "Required: Yes", 3 );
                append( sb, "Expression: ${jomc.identifier}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "showMainSpecificationExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java1388
org/jomc/mojo/HelpMojo.java2123
            append( sb, "Displays a project\'s main model.", 1 );
            append( sb, "", 0 );
            if ( detail )
            {
                append( sb, "Available parameters:", 1 );
                append( sb, "", 0 );

                append( sb, "classesDirectory", 2 );
                append( sb, "Directory holding the compiled class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'outputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "classFileProcessorClassName (Default: org.jomc.tools.ClassFileProcessor)", 2 );
                append( sb, "Class name of the ClassFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.classFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "classProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of class files.", 3 );
                append( sb, "Expression: ${jomc.classProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "document", 2 );
                append( sb, "File to write the model to.", 3 );
                append( sb, "Expression: ${jomc.document}", 3 );
                append( sb, "", 0 );

                append( sb, "documentEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "Encoding of the document to write.", 3 );
                append( sb, "Expression: ${jomc.documentEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "showMainModelExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java2611
org/jomc/mojo/HelpMojo.java2842
org/jomc/mojo/HelpMojo.java3073
org/jomc/mojo/HelpMojo.java3304
org/jomc/mojo/HelpMojo.java3535
org/jomc/mojo/HelpMojo.java3766
org/jomc/mojo/HelpMojo.java4238
            append( sb, "Validates a projects\' main class file model objects.", 1 );
            append( sb, "", 0 );
            if ( detail )
            {
                append( sb, "Available parameters:", 1 );
                append( sb, "", 0 );

                append( sb, "classesDirectory", 2 );
                append( sb, "Directory holding the compiled class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'outputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "classFileProcessorClassName (Default: org.jomc.tools.ClassFileProcessor)", 2 );
                append( sb, "Class name of the ClassFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.classFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "classProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of class files.", 3 );
                append( sb, "Expression: ${jomc.classProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java1178
org/jomc/mojo/HelpMojo.java1666
org/jomc/mojo/HelpMojo.java1913
org/jomc/mojo/HelpMojo.java2401
                append( sb, "Identifier of the instance to show.", 3 );
                append( sb, "Required: Yes", 3 );
                append( sb, "Expression: ${jomc.identifier}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "showMainInstanceExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java293
org/jomc/mojo/HelpMojo.java532
org/jomc/mojo/HelpMojo.java795
org/jomc/mojo/HelpMojo.java1026
org/jomc/mojo/HelpMojo.java4118
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
                append( sb, "Velocity runtime properties.\n<velocityProperties>\n\u00a0\u00a0<velocityProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</velocityProperty>\n</velocityProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "velocityPropertyResources", 2 );
                append( sb, "Velocity runtime property resources.\n<velocityPropertyResources>\n\u00a0\u00a0<velocityPropertyResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</velocityPropertyResource>\n</velocityPropertyResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "verbose (Default: false)", 2 );
                append( sb, "Controls verbosity of the plugin.", 3 );
                append( sb, "Expression: ${jomc.verbose}", 3 );
                append( sb, "", 0 );
FileLine
org/jomc/mojo/HelpMojo.java1180
org/jomc/mojo/HelpMojo.java1421
org/jomc/mojo/HelpMojo.java1668
org/jomc/mojo/HelpMojo.java1915
org/jomc/mojo/HelpMojo.java2156
org/jomc/mojo/HelpMojo.java2403
org/jomc/mojo/HelpMojo.java2634
org/jomc/mojo/HelpMojo.java2865
org/jomc/mojo/HelpMojo.java3096
org/jomc/mojo/HelpMojo.java3327
org/jomc/mojo/HelpMojo.java3558
org/jomc/mojo/HelpMojo.java3789
                append( sb, "Expression: ${jomc.identifier}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "showMainInstanceExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java2722
org/jomc/mojo/HelpMojo.java2953
org/jomc/mojo/HelpMojo.java3184
org/jomc/mojo/HelpMojo.java3415
org/jomc/mojo/HelpMojo.java3646
org/jomc/mojo/HelpMojo.java3877
org/jomc/mojo/HelpMojo.java4118
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "validateMainClassesExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/JomcContainerDescriptorHandler.java811
org/jomc/mojo/JomcResourceTransformer.java828
        this.modletMarshaller.marshal( element, file );
    }

    private <T> JAXBElement<T> transformModletObject( final JAXBElement<? extends ModletObject> element,
                                                      final Class<T> boundType )
        throws ModelException, TransformerException, JAXBException, IOException, URISyntaxException,
               InstantiationException
    {
        if ( element == null )
        {
            throw new NullPointerException( "element" );
        }
        if ( !boundType.isInstance( element.getValue() ) )
        {
            throw new IllegalArgumentException( element.toString() );
        }

        @SuppressWarnings( "unchecked" )
        JAXBElement<T> transformed = (JAXBElement<T>) element;

        if ( this.modletObjectStylesheet != null )
        {
            final Transformer transformer = TransformerFactory.newInstance().newTransformer(
                new StreamSource( this.getResource( this.modletObjectStylesheet ).toURI().toASCIIString() ) );

            final ModelContext modletContext = this.createModelContext();
            final Marshaller marshaller = modletContext.createMarshaller( ModletObject.MODEL_PUBLIC_ID );
            final Unmarshaller unmarshaller = modletContext.createUnmarshaller( ModletObject.MODEL_PUBLIC_ID );
            final JAXBSource source = new JAXBSource( marshaller, element );
            final JAXBResult result = new JAXBResult( unmarshaller );

            for ( Map.Entry<Object, Object> e : System.getProperties().entrySet() )
            {
                transformer.setParameter( e.getKey().toString(), e.getValue() );
            }

            transformer.transform( source, result );

            if ( result.getResult() instanceof JAXBElement<?>
                 && boundType.isInstance( ( (JAXBElement<?>) result.getResult() ).getValue() ) )
            {
                @SuppressWarnings( "unchecked" ) final JAXBElement<T> e = (JAXBElement<T>) result.getResult();
                transformed = e;
            }
            else
            {
                throw new ModelException( Messages.getMessage(
                    "illegalModletTransformationResult", this.modletObjectStylesheet ) );

            }
        }

        return transformed;
    }

    private static String normalizeResourceName( final String name )
    {
        String normalized = name;

        if ( normalized != null )
        {
            normalized = normalized.replace( '\\', '/' );

            if ( normalized.startsWith( "/" ) )
            {
                normalized = normalized.substring( 1 );
            }

            if ( normalized.endsWith( "/" ) )
            {
                normalized = normalized.substring( 0, normalized.length() );
            }
        }

        return normalized;
    }

    private ModelContext createModelContext() throws ModelException, InstantiationException
    {
        final ModelContextFactory modelContextFactory;
        if ( this.modelContextFactoryClassName != null )
        {
            modelContextFactory = ModelContextFactory.newInstance( this.modelContextFactoryClassName );
        }
        else
        {
            modelContextFactory = ModelContextFactory.newInstance();
        }

        final ModelContext modelContext = modelContextFactory.newModelContext();
        modelContext.setModletSchemaSystemId( this.modletSchemaSystemId );

        if ( this.providerLocation != null )
        {
            modelContext.setAttribute( DefaultModelContext.PROVIDER_LOCATION_ATTRIBUTE_NAME, this.providerLocation );
        }

        if ( this.platformProviderLocation != null )
        {
            modelContext.setAttribute( DefaultModelContext.PLATFORM_PROVIDER_LOCATION_ATTRIBUTE_NAME,
                                       this.platformProviderLocation );

        }

        if ( this.modletLocation != null )
        {
            modelContext.setAttribute( DefaultModletProvider.MODLET_LOCATION_ATTRIBUTE_NAME, this.modletLocation );
        }

        if ( this.modelContextAttributes != null )
        {
            for ( ModelContextAttribute e : this.modelContextAttributes )
            {
                final Object object = e.getObject();

                if ( object != null )
                {
                    modelContext.setAttribute( e.getKey(), object );
                }
                else
                {
                    modelContext.clearAttribute( e.getKey() );
                }
            }
        }

        return modelContext;
    }

}
FileLine
org/jomc/mojo/HelpMojo.java308
org/jomc/mojo/HelpMojo.java547
org/jomc/mojo/HelpMojo.java810
org/jomc/mojo/HelpMojo.java1041
org/jomc/mojo/HelpMojo.java1288
org/jomc/mojo/HelpMojo.java1529
org/jomc/mojo/HelpMojo.java1776
org/jomc/mojo/HelpMojo.java2023
org/jomc/mojo/HelpMojo.java2264
org/jomc/mojo/HelpMojo.java2511
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
                append( sb, "Velocity runtime properties.\n<velocityProperties>\n\u00a0\u00a0<velocityProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</velocityProperty>\n</velocityProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "velocityPropertyResources", 2 );
                append( sb, "Velocity runtime property resources.\n<velocityPropertyResources>\n\u00a0\u00a0<velocityPropertyResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</velocityPropertyResource>\n</velocityPropertyResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "verbose (Default: false)", 2 );
                append( sb, "Controls verbosity of the plugin.", 3 );
                append( sb, "Expression: ${jomc.verbose}", 3 );
                append( sb, "", 0 );
            }
        }

        if ( goal == null || goal.length() <= 0 || "commit-test-classes".equals( goal ) )
FileLine
org/jomc/mojo/HelpMojo.java1288
org/jomc/mojo/HelpMojo.java1529
org/jomc/mojo/HelpMojo.java1776
org/jomc/mojo/HelpMojo.java2023
org/jomc/mojo/HelpMojo.java2264
org/jomc/mojo/HelpMojo.java2511
org/jomc/mojo/HelpMojo.java4133
                append( sb, "Expression: ${jomc.showMainInstanceExecutionStrategy}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
                append( sb, "Velocity runtime properties.\n<velocityProperties>\n\u00a0\u00a0<velocityProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</velocityProperty>\n</velocityProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "velocityPropertyResources", 2 );
                append( sb, "Velocity runtime property resources.\n<velocityPropertyResources>\n\u00a0\u00a0<velocityPropertyResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</velocityPropertyResource>\n</velocityPropertyResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "verbose (Default: false)", 2 );
                append( sb, "Controls verbosity of the plugin.", 3 );
                append( sb, "Expression: ${jomc.verbose}", 3 );
                append( sb, "", 0 );
FileLine
org/jomc/mojo/HelpMojo.java721
org/jomc/mojo/HelpMojo.java952
org/jomc/mojo/HelpMojo.java1194
org/jomc/mojo/HelpMojo.java1435
org/jomc/mojo/HelpMojo.java1682
org/jomc/mojo/HelpMojo.java1929
org/jomc/mojo/HelpMojo.java2170
org/jomc/mojo/HelpMojo.java2417
                append( sb, "Expression: ${jomc.manageMainSourcesExecutionStrategy}", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
FileLine
org/jomc/mojo/HelpMojo.java1180
org/jomc/mojo/HelpMojo.java1421
org/jomc/mojo/HelpMojo.java1668
org/jomc/mojo/HelpMojo.java1915
org/jomc/mojo/HelpMojo.java2156
org/jomc/mojo/HelpMojo.java2403
org/jomc/mojo/HelpMojo.java4261
                append( sb, "Expression: ${jomc.identifier}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java1288
org/jomc/mojo/HelpMojo.java1529
org/jomc/mojo/HelpMojo.java1776
org/jomc/mojo/HelpMojo.java2023
org/jomc/mojo/HelpMojo.java2264
org/jomc/mojo/HelpMojo.java2511
org/jomc/mojo/HelpMojo.java2737
org/jomc/mojo/HelpMojo.java2968
org/jomc/mojo/HelpMojo.java3199
org/jomc/mojo/HelpMojo.java3430
org/jomc/mojo/HelpMojo.java3661
org/jomc/mojo/HelpMojo.java3892
                append( sb, "Expression: ${jomc.showMainInstanceExecutionStrategy}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
FileLine
org/jomc/mojo/HelpMojo.java721
org/jomc/mojo/HelpMojo.java952
org/jomc/mojo/HelpMojo.java1194
org/jomc/mojo/HelpMojo.java1435
org/jomc/mojo/HelpMojo.java1682
org/jomc/mojo/HelpMojo.java1929
org/jomc/mojo/HelpMojo.java2170
org/jomc/mojo/HelpMojo.java2417
org/jomc/mojo/HelpMojo.java2648
org/jomc/mojo/HelpMojo.java2879
org/jomc/mojo/HelpMojo.java3110
org/jomc/mojo/HelpMojo.java3341
org/jomc/mojo/HelpMojo.java3572
org/jomc/mojo/HelpMojo.java3803
org/jomc/mojo/HelpMojo.java4039
org/jomc/mojo/HelpMojo.java4275
                append( sb, "Expression: ${jomc.manageMainSourcesExecutionStrategy}", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java293
org/jomc/mojo/HelpMojo.java532
org/jomc/mojo/HelpMojo.java795
org/jomc/mojo/HelpMojo.java1026
org/jomc/mojo/HelpMojo.java2722
org/jomc/mojo/HelpMojo.java2953
org/jomc/mojo/HelpMojo.java3184
org/jomc/mojo/HelpMojo.java3415
org/jomc/mojo/HelpMojo.java3646
org/jomc/mojo/HelpMojo.java3877
org/jomc/mojo/HelpMojo.java4354
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
FileLine
org/jomc/mojo/HelpMojo.java238
org/jomc/mojo/HelpMojo.java477
org/jomc/mojo/HelpMojo.java1213
org/jomc/mojo/HelpMojo.java1454
org/jomc/mojo/HelpMojo.java1701
org/jomc/mojo/HelpMojo.java1948
org/jomc/mojo/HelpMojo.java2189
org/jomc/mojo/HelpMojo.java2436
                append( sb, "XSLT documents to use for transforming model objects.\n<modelObjectStylesheetResources>\n\u00a0\u00a0<modelObjectStylesheetResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0XSLT\u00a0document.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0XSLT\u00a0document\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0\u00a0\u00a0<transformationParameterResources>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0</transformationParameterResources>\n\u00a0\u00a0\u00a0\u00a0<transformationParameters>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationParameter>\n\u00a0\u00a0\u00a0\u00a0</transformationParameters>\n\u00a0\u00a0\u00a0\u00a0<transformationOutputProperties>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0</transformationOutputProperties>\n\u00a0\u00a0</modelObjectStylesheetResource>\n</modelObjectStylesheetResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
FileLine
org/jomc/mojo/JomcContainerDescriptorHandler.java715
org/jomc/mojo/JomcResourceTransformer.java732
        this.jomcMarshaller.marshal( element, file );
    }

    private <T> JAXBElement<T> transformModelObject( final JAXBElement<? extends ModelObject> element,
                                                     final Class<T> boundType )
        throws ModelException, TransformerException, JAXBException, IOException, URISyntaxException,
               InstantiationException
    {
        if ( element == null )
        {
            throw new NullPointerException( "element" );
        }
        if ( !boundType.isInstance( element.getValue() ) )
        {
            throw new IllegalArgumentException( element.toString() );
        }

        @SuppressWarnings( "unchecked" )
        JAXBElement<T> transformed = (JAXBElement<T>) element;

        if ( this.modelObjectStylesheet != null )
        {
            final Transformer transformer = TransformerFactory.newInstance().newTransformer(
                new StreamSource( this.getResource( this.modelObjectStylesheet ).toURI().toASCIIString() ) );

            final ModelContext modelContext = this.createModelContext();
            final Marshaller marshaller = modelContext.createMarshaller( this.model );
            final Unmarshaller unmarshaller = modelContext.createUnmarshaller( this.model );
            final JAXBSource source = new JAXBSource( marshaller, element );
            final JAXBResult result = new JAXBResult( unmarshaller );

            for ( Map.Entry<Object, Object> e : System.getProperties().entrySet() )
            {
                transformer.setParameter( e.getKey().toString(), e.getValue() );
            }

            transformer.transform( source, result );

            if ( result.getResult() instanceof JAXBElement<?>
                 && boundType.isInstance( ( (JAXBElement<?>) result.getResult() ).getValue() ) )
            {
                @SuppressWarnings( "unchecked" ) final JAXBElement<T> e = (JAXBElement<T>) result.getResult();
                transformed = e;
            }
            else
            {
                throw new ModelException( Messages.getMessage(
                    "illegalModuleTransformationResult", this.modelObjectStylesheet ) );

            }
        }

        return transformed;
    }

    private Object unmarshalModletObject( final InputStream in )
        throws ModelException, JAXBException, InstantiationException
    {
        if ( in == null )
        {
            throw new NullPointerException( "in" );
        }

        if ( this.modletUnmarshaller == null )
        {
            this.modletUnmarshaller = this.createModelContext().createUnmarshaller( ModletObject.MODEL_PUBLIC_ID );
        }

        return this.modletUnmarshaller.unmarshal( in );
    }

    private void marshalModletObject( final JAXBElement<? extends ModletObject> element, final File file )
FileLine
org/jomc/mojo/HelpMojo.java1288
org/jomc/mojo/HelpMojo.java1529
org/jomc/mojo/HelpMojo.java1776
org/jomc/mojo/HelpMojo.java2023
org/jomc/mojo/HelpMojo.java2264
org/jomc/mojo/HelpMojo.java2511
org/jomc/mojo/HelpMojo.java4369
                append( sb, "Expression: ${jomc.showMainInstanceExecutionStrategy}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceDirectory (Default: ${project.build.sourceDirectory})", 2 );
                append( sb, "Directory holding the source files of the project.", 3 );
                append( sb, "Expression: ${jomc.sourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "The encoding to use for reading and writing files.", 3 );
                append( sb, "Expression: ${jomc.sourceEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceFileProcessorClassName (Default: org.jomc.tools.SourceFileProcessor)", 2 );
                append( sb, "Class name of the SourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.sourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "sourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of source code files.", 3 );
                append( sb, "Expression: ${jomc.sourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "templateEncoding", 2 );
                append( sb, "The encoding to use for reading templates.", 3 );
                append( sb, "Expression: ${jomc.templateEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "templateLocation", 2 );
                append( sb, "Location to search for templates in addition to searching the class path of the plugin.\nFirst an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a directory name relative to the base directory of the project. If that directory exists, that directory is used. If nothing is found at the given location, a warning message is logged.\n", 3 );
                append( sb, "Expression: ${jomc.templateLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameterResources", 2 );
                append( sb, "Template parameter resources.\n<templateParameterResources>\n\u00a0\u00a0<templateParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</templateParameterResource>\n</templateParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateParameters", 2 );
                append( sb, "Template parameters.\n<templateParameters>\n\u00a0\u00a0<templateParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</templateParameter>\n</templateParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "templateProfile", 2 );
                append( sb, "The template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.templateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "testClassesDirectory", 2 );
                append( sb, "Directory holding the compiled test class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'testOutputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "testModuleName (Default: ${project.name} Tests)", 2 );
                append( sb, "Name of the test module to process.", 3 );
                append( sb, "Expression: ${jomc.testModuleName}", 3 );
                append( sb, "", 0 );

                append( sb, "testOutputDirectory (Default: ${project.build.testOutputDirectory})", 2 );
                append( sb, "Test output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
FileLine
org/jomc/mojo/HelpMojo.java238
org/jomc/mojo/HelpMojo.java477
org/jomc/mojo/HelpMojo.java4058
org/jomc/mojo/HelpMojo.java4294
                append( sb, "XSLT documents to use for transforming model objects.\n<modelObjectStylesheetResources>\n\u00a0\u00a0<modelObjectStylesheetResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0XSLT\u00a0document.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0XSLT\u00a0document\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0\u00a0\u00a0<transformationParameterResources>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0</transformationParameterResources>\n\u00a0\u00a0\u00a0\u00a0<transformationParameters>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationParameter>\n\u00a0\u00a0\u00a0\u00a0</transformationParameters>\n\u00a0\u00a0\u00a0\u00a0<transformationOutputProperties>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0</transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0</transformationOutputProperties>\n\u00a0\u00a0</modelObjectStylesheetResource>\n</modelObjectStylesheetResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of models.", 3 );
                append( sb, "Expression: ${jomc.modelProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "modelResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of model resources.", 3 );
                append( sb, "Expression: ${jomc.modelResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletLocation", 2 );
                append( sb, "The location to search for modlets.", 3 );
                append( sb, "Expression: ${jomc.modletLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "modletResourceValidationEnabled (Default: true)", 2 );
                append( sb, "Flag controlling JAXP schema validation of modlet resources.", 3 );
                append( sb, "Expression: ${jomc.modletResourceValidationEnabled}", 3 );
                append( sb, "", 0 );

                append( sb, "modletSchemaSystemId", 2 );
                append( sb, "The http://jomc.org/modlet namespace schema system id.", 3 );
                append( sb, "Expression: ${jomc.modletSchemaSystemId}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleLocation", 2 );
                append( sb, "The location to search for modules.", 3 );
                append( sb, "Expression: ${jomc.moduleLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "moduleName (Default: ${project.name})", 2 );
                append( sb, "Name of the module to process.", 3 );
                append( sb, "Expression: ${jomc.moduleName}", 3 );
                append( sb, "", 0 );

                append( sb, "outputDirectory (Default: ${project.build.outputDirectory})", 2 );
                append( sb, "Output directory of the project.", 3 );
                append( sb, "Expression: ${jomc.outputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "platformProviderLocation", 2 );
                append( sb, "The location to search for platform providers.", 3 );
                append( sb, "Expression: ${jomc.platformProviderLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "providerLocation", 2 );
                append( sb, "The location to search for providers.", 3 );
                append( sb, "Expression: ${jomc.providerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "reportOutputDirectory (Default: ${project.reporting.outputDirectory})", 2 );
                append( sb, "Directory holding the reports of the project.", 3 );
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
FileLine
org/jomc/mojo/JomcContainerDescriptorHandler.java340
org/jomc/mojo/JomcResourceTransformer.java489
                archiver.addFile( moduleFile, normalizeResourceName( this.moduleResource ) );
            }

            if ( !this.modlets.getModlet().isEmpty() )
            {
                if ( this.modletIncludes != null )
                {
                    for ( final Iterator<Modlet> it = this.modlets.getModlet().iterator(); it.hasNext(); )
                    {
                        final Modlet m = it.next();

                        if ( !this.modletIncludes.contains( m.getName() ) )
                        {
                            it.remove();

                            if ( this.getLogger() != null && this.getLogger().isInfoEnabled() )
                            {
                                this.getLogger().info( LOG_PREFIX + Messages.getMessage(
                                    "excludingModlet", m.getName() ) );

                            }
                        }
                    }
                }

                if ( this.modletExcludes != null )
                {
                    for ( String exclude : this.modletExcludes )
                    {
                        final Modlet excluded = this.modlets.getModlet( exclude );

                        if ( excluded != null )
                        {
                            this.modlets.getModlet().remove( excluded );

                            if ( this.getLogger() != null && this.getLogger().isInfoEnabled() )
                            {
                                this.getLogger().info( LOG_PREFIX + Messages.getMessage(
                                    "excludingModlet", excluded.getName() ) );

                            }
                        }
                    }
                }

                if ( this.getLogger() != null && this.getLogger().isInfoEnabled() )
                {
                    for ( Modlet m : this.modlets.getModlet() )
                    {
                        this.getLogger().info( LOG_PREFIX + Messages.getMessage( "includingModlet", m.getName() ) );
                    }
                }

                final Modlet mergedModlet = this.modlets.getMergedModlet( this.modletName, this.model );
                mergedModlet.setVendor( this.modletVendor );
                mergedModlet.setVersion( this.modletVersion );

                final JAXBElement<Modlet> transformedModlet = this.transformModletObject(
                    new org.jomc.modlet.ObjectFactory().createModlet( mergedModlet ), Modlet.class );
FileLine
org/jomc/mojo/JomcContainerDescriptorHandler.java278
org/jomc/mojo/JomcResourceTransformer.java431
            if ( !this.modules.getModule().isEmpty() )
            {
                if ( this.moduleIncludes != null )
                {
                    for ( final Iterator<Module> it = this.modules.getModule().iterator(); it.hasNext(); )
                    {
                        final Module m = it.next();

                        if ( !this.moduleIncludes.contains( m.getName() ) )
                        {
                            it.remove();

                            if ( this.getLogger() != null && this.getLogger().isInfoEnabled() )
                            {
                                this.getLogger().info( LOG_PREFIX + Messages.getMessage(
                                    "excludingModule", m.getName() ) );

                            }
                        }
                    }
                }

                if ( this.moduleExcludes != null )
                {
                    for ( String exclude : this.moduleExcludes )
                    {
                        final Module excluded = this.modules.getModule( exclude );

                        if ( excluded != null )
                        {
                            this.modules.getModule().remove( excluded );

                            if ( this.getLogger() != null && this.getLogger().isInfoEnabled() )
                            {
                                this.getLogger().info( LOG_PREFIX + Messages.getMessage(
                                    "excludingModule", excluded.getName() ) );

                            }
                        }
                    }
                }

                if ( this.getLogger() != null && this.getLogger().isInfoEnabled() )
                {
                    for ( Module m : this.modules.getModule() )
                    {
                        this.getLogger().info( LOG_PREFIX + Messages.getMessage( "includingModule", m.getName() ) );
                    }
                }

                final Module mergedModule = this.modules.getMergedModule( this.moduleName );
                mergedModule.setVersion( this.moduleVersion );
                mergedModule.setVendor( this.moduleVendor );

                final JAXBElement<Module> transformedModule = this.transformModelObject(
                    new org.jomc.model.ObjectFactory().createModule( mergedModule ), Module.class );
FileLine
org/jomc/mojo/JomcContainerDescriptorHandler.java594
org/jomc/mojo/JomcResourceTransformer.java609
        }
    }

    /**
     * Creates an {@code URL} for a given resource location.
     * <p>This method first searches the class loader of the class for a single resource matching {@code location}. If
     * such a resource is found, the URL of that resource is returned. If no such resource is found, an attempt is made
     * to parse the given location to an URL. On successful parsing, that URL is returned. Failing that, the given
     * location is interpreted as a file name. If that file is found, the URL of that file is returned. Otherwise an
     * {@code IOException} is thrown.</p>
     *
     * @param location The location to create an {@code URL} from.
     *
     * @return An {@code URL} for {@code location}.
     *
     * @throws NullPointerException if {@code location} is {@code null}.
     * @throws IOException if creating an URL fails.
     */
    protected URL getResource( final String location ) throws IOException
    {
        if ( location == null )
        {
            throw new NullPointerException( "location" );
        }

        try
        {
            String absolute = location;
            if ( !absolute.startsWith( "/" ) )
            {
                absolute = "/" + location;
            }

            URL resource = this.getClass().getResource( absolute );
            if ( resource == null )
            {
                try
                {
                    resource = new URL( location );
                }
                catch ( final MalformedURLException e )
                {
                    if ( this.getLogger() != null && this.getLogger().isDebugEnabled() )
                    {
                        this.getLogger().debug( Messages.getMessage( e ), e );
                    }

                    resource = null;
                }
            }

            if ( resource == null )
            {
                final File f = new File( location );

                if ( f.isFile() )
                {
                    resource = f.toURI().toURL();
                }
            }

            if ( resource == null )
            {
                throw new IOException( Messages.getMessage( "resourceNotFound", location ) );
            }

            return resource;
        }
        catch ( final MalformedURLException e )
        {
            String m = Messages.getMessage( e );
            m = m == null ? "" : " " + m;

            // JDK: As of JDK 6, "new IOException( message, cause )".
            throw (IOException) new IOException( Messages.getMessage(
                "malformedLocation", location, m ) ).initCause( e );

        }
    }

    private Object unmarshalModelObject( final InputStream in )
        throws ModelException, JAXBException, InstantiationException
    {
        if ( in == null )
        {
            throw new NullPointerException( "in" );
        }

        if ( this.jomcUnmarshaller == null )
        {
            this.jomcUnmarshaller = this.createModelContext().createUnmarshaller( this.model );
        }

        return this.jomcUnmarshaller.unmarshal( in );
    }

    private void marshalModelObject( final JAXBElement<? extends ModelObject> element, final File file )
FileLine
org/jomc/mojo/HelpMojo.java192
org/jomc/mojo/HelpMojo.java431
org/jomc/mojo/HelpMojo.java2629
org/jomc/mojo/HelpMojo.java2860
org/jomc/mojo/HelpMojo.java3091
org/jomc/mojo/HelpMojo.java3322
org/jomc/mojo/HelpMojo.java3553
org/jomc/mojo/HelpMojo.java3784
org/jomc/mojo/HelpMojo.java4256
                append( sb, "Expression: ${jomc.commitMainClassesExecutionStrategy}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectStylesheet", 2 );
FileLine
org/jomc/mojo/HelpMojo.java679
org/jomc/mojo/HelpMojo.java910
org/jomc/mojo/HelpMojo.java2611
org/jomc/mojo/HelpMojo.java2842
org/jomc/mojo/HelpMojo.java3073
org/jomc/mojo/HelpMojo.java3304
org/jomc/mojo/HelpMojo.java3535
org/jomc/mojo/HelpMojo.java3766
org/jomc/mojo/HelpMojo.java3997
org/jomc/mojo/HelpMojo.java4238
            append( sb, "Manages a projects\' main source files.", 1 );
            append( sb, "", 0 );
            if ( detail )
            {
                append( sb, "Available parameters:", 1 );
                append( sb, "", 0 );

                append( sb, "classesDirectory", 2 );
                append( sb, "Directory holding the compiled class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'outputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "classFileProcessorClassName (Default: org.jomc.tools.ClassFileProcessor)", 2 );
                append( sb, "Class name of the ClassFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.classFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "classProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of class files.", 3 );
                append( sb, "Expression: ${jomc.classProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "manageMainSourcesExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java4190
org/jomc/mojo/HelpMojo.java4431
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
                append( sb, "Velocity runtime properties.\n<velocityProperties>\n\u00a0\u00a0<velocityProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</velocityProperty>\n</velocityProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "velocityPropertyResources", 2 );
                append( sb, "Velocity runtime property resources.\n<velocityPropertyResources>\n\u00a0\u00a0<velocityPropertyResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</velocityPropertyResource>\n</velocityPropertyResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "verbose (Default: false)", 2 );
                append( sb, "Controls verbosity of the plugin.", 3 );
                append( sb, "Expression: ${jomc.verbose}", 3 );
                append( sb, "", 0 );

                append( sb, "writeMainResourcesExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java1141
org/jomc/mojo/HelpMojo.java1629
org/jomc/mojo/HelpMojo.java1876
org/jomc/mojo/HelpMojo.java2364
            append( sb, "Displays a project\'s main instance.", 1 );
            append( sb, "", 0 );
            if ( detail )
            {
                append( sb, "Available parameters:", 1 );
                append( sb, "", 0 );

                append( sb, "classesDirectory", 2 );
                append( sb, "Directory holding the compiled class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'outputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "classFileProcessorClassName (Default: org.jomc.tools.ClassFileProcessor)", 2 );
                append( sb, "Class name of the ClassFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.classFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "classProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of class files.", 3 );
                append( sb, "Expression: ${jomc.classProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "document", 2 );
                append( sb, "File to write the model to.", 3 );
                append( sb, "Expression: ${jomc.document}", 3 );
                append( sb, "", 0 );

                append( sb, "documentEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "Encoding of the document to write.", 3 );
                append( sb, "Expression: ${jomc.documentEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "identifier", 2 );
                append( sb, "Identifier of the instance to show.", 3 );
FileLine
org/jomc/mojo/HelpMojo.java365
org/jomc/mojo/HelpMojo.java604
org/jomc/mojo/HelpMojo.java867
org/jomc/mojo/HelpMojo.java1098
org/jomc/mojo/HelpMojo.java1345
org/jomc/mojo/HelpMojo.java1586
org/jomc/mojo/HelpMojo.java1833
org/jomc/mojo/HelpMojo.java2080
org/jomc/mojo/HelpMojo.java2321
org/jomc/mojo/HelpMojo.java2568
org/jomc/mojo/HelpMojo.java4431
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
                append( sb, "Velocity runtime properties.\n<velocityProperties>\n\u00a0\u00a0<velocityProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</velocityProperty>\n</velocityProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "velocityPropertyResources", 2 );
                append( sb, "Velocity runtime property resources.\n<velocityPropertyResources>\n\u00a0\u00a0<velocityPropertyResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</velocityPropertyResource>\n</velocityPropertyResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "verbose (Default: false)", 2 );
                append( sb, "Controls verbosity of the plugin.", 3 );
                append( sb, "Expression: ${jomc.verbose}", 3 );
                append( sb, "", 0 );
FileLine
org/jomc/mojo/HelpMojo.java197
org/jomc/mojo/HelpMojo.java436
org/jomc/mojo/HelpMojo.java1180
org/jomc/mojo/HelpMojo.java1421
org/jomc/mojo/HelpMojo.java1668
org/jomc/mojo/HelpMojo.java1915
org/jomc/mojo/HelpMojo.java2156
org/jomc/mojo/HelpMojo.java2403
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectStylesheet", 2 );
FileLine
org/jomc/mojo/HelpMojo.java1141
org/jomc/mojo/HelpMojo.java1388
org/jomc/mojo/HelpMojo.java1629
org/jomc/mojo/HelpMojo.java1876
org/jomc/mojo/HelpMojo.java2123
org/jomc/mojo/HelpMojo.java2364
            append( sb, "Displays a project\'s main instance.", 1 );
            append( sb, "", 0 );
            if ( detail )
            {
                append( sb, "Available parameters:", 1 );
                append( sb, "", 0 );

                append( sb, "classesDirectory", 2 );
                append( sb, "Directory holding the compiled class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'outputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "classFileProcessorClassName (Default: org.jomc.tools.ClassFileProcessor)", 2 );
                append( sb, "Class name of the ClassFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.classFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "classProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of class files.", 3 );
                append( sb, "Expression: ${jomc.classProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "document", 2 );
                append( sb, "File to write the model to.", 3 );
                append( sb, "Expression: ${jomc.document}", 3 );
                append( sb, "", 0 );

                append( sb, "documentEncoding (Default: ${project.build.sourceEncoding})", 2 );
                append( sb, "Encoding of the document to write.", 3 );
                append( sb, "Expression: ${jomc.documentEncoding}", 3 );
                append( sb, "", 0 );

                append( sb, "identifier", 2 );
FileLine
org/jomc/mojo/AbstractJomcMojo.java1120
org/jomc/mojo/AbstractJomcMojo.java1168
        for ( final Iterator<?> it = compileArtifacts.iterator(); it.hasNext(); )
        {
            final Artifact a = (Artifact) it.next();
            final Artifact pluginArtifact = this.getPluginArtifact( a );

            if ( a.getFile() == null )
            {
                if ( this.isLoggable( Level.WARNING ) )
                {
                    this.log( Level.WARNING, Messages.getMessage( "ignoringArtifact", a.toString() ), null );
                }

                continue;
            }

            if ( pluginArtifact != null )
            {
                if ( this.isLoggable( Level.FINER ) )
                {
                    this.log( Level.FINER, Messages.getMessage(
                        "ignoringPluginArtifact", a.toString(), pluginArtifact.toString() ), null );

                }

                continue;
            }

            final String element = a.getFile().getAbsolutePath();
            elements.add( element );
        }

        return elements;
    }

    /**
     * Gets the project's test class path elements.
     *
     * @return A set of class path element strings.
     *
     * @throws MojoExecutionException if getting the class path elements fails.
     */
    protected Set<String> getTestClasspathElements() throws MojoExecutionException
FileLine
org/jomc/mojo/HelpMojo.java679
org/jomc/mojo/HelpMojo.java910
org/jomc/mojo/HelpMojo.java1141
org/jomc/mojo/HelpMojo.java1388
org/jomc/mojo/HelpMojo.java1629
org/jomc/mojo/HelpMojo.java1876
org/jomc/mojo/HelpMojo.java2123
org/jomc/mojo/HelpMojo.java2364
org/jomc/mojo/HelpMojo.java2611
org/jomc/mojo/HelpMojo.java2842
org/jomc/mojo/HelpMojo.java3073
org/jomc/mojo/HelpMojo.java3304
org/jomc/mojo/HelpMojo.java3535
org/jomc/mojo/HelpMojo.java3766
org/jomc/mojo/HelpMojo.java3997
org/jomc/mojo/HelpMojo.java4238
            append( sb, "Manages a projects\' main source files.", 1 );
            append( sb, "", 0 );
            if ( detail )
            {
                append( sb, "Available parameters:", 1 );
                append( sb, "", 0 );

                append( sb, "classesDirectory", 2 );
                append( sb, "Directory holding the compiled class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'outputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "classFileProcessorClassName (Default: org.jomc.tools.ClassFileProcessor)", 2 );
                append( sb, "Class name of the ClassFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.classFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "classProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of class files.", 3 );
                append( sb, "Expression: ${jomc.classProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
FileLine
org/jomc/mojo/AbstractJomcMojo.java1089
org/jomc/mojo/AbstractJomcMojo.java1120
org/jomc/mojo/AbstractJomcMojo.java1168
        for ( final Iterator<?> it = runtimeArtifacts.iterator(); it.hasNext(); )
        {
            final Artifact a = (Artifact) it.next();
            final Artifact pluginArtifact = this.getPluginArtifact( a );

            if ( a.getFile() == null )
            {
                if ( this.isLoggable( Level.WARNING ) )
                {
                    this.log( Level.WARNING, Messages.getMessage( "ignoringArtifact", a.toString() ), null );
                }

                continue;
            }

            if ( pluginArtifact != null )
            {
                if ( this.isLoggable( Level.FINER ) )
                {
                    this.log( Level.FINER, Messages.getMessage(
                        "ignoringPluginArtifact", a.toString(), pluginArtifact.toString() ), null );

                }

                continue;
            }

            final String element = a.getFile().getAbsolutePath();
            elements.add( element );
        }
FileLine
org/jomc/mojo/HelpMojo.java2794
org/jomc/mojo/HelpMojo.java3025
org/jomc/mojo/HelpMojo.java3256
org/jomc/mojo/HelpMojo.java3487
org/jomc/mojo/HelpMojo.java3718
org/jomc/mojo/HelpMojo.java3949
org/jomc/mojo/HelpMojo.java4431
                append( sb, "Expression: ${jomc.testOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "testSourceDirectory (Default: ${project.build.testSourceDirectory})", 2 );
                append( sb, "Directory holding the test source files of the project.", 3 );
                append( sb, "Expression: ${jomc.testSourceDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "transformationOutputProperties", 2 );
                append( sb, "Global transformation output properties.\n<transformationOutputProperties>\n\u00a0\u00a0<transformationOutputProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</transformationOutputProperty>\n</transformationOutputProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameterResources", 2 );
                append( sb, "Global transformation parameter resources.\n<transformationParameterResources>\n\u00a0\u00a0<transformationParameterResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</transformationParameterResource>\n</transformationParameterResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformationParameters", 2 );
                append( sb, "Global transformation parameters.\n<transformationParameters>\n\u00a0\u00a0<transformationParameter>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0parameter.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0parameter.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0parameter\'s\u00a0object.</type>\n\u00a0\u00a0</transformationParameter>\n</transformationParameters>\n", 3 );
                append( sb, "", 0 );

                append( sb, "transformerLocation", 2 );
                append( sb, "The location to search for transformers.", 3 );
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "validateMainClassesExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/JomcContainerDescriptorHandler.java140
org/jomc/mojo/JomcResourceTransformer.java143
    private static final String LOG_PREFIX = "[JOMC] ";

    /** The identifier of the model to process. */
    private String model = ModelObject.MODEL_PUBLIC_ID;

    /** The encoding of the assembled module. */
    private String moduleEncoding;

    /** The name of the assembled module. */
    private String moduleName;

    /** The version of the assembled module. */
    private String moduleVersion;

    /** The vendor of the assembled module. */
    private String moduleVendor;

    /** The resource name of the assembled module. */
    private String moduleResource = DefaultModelProvider.getDefaultModuleLocation();

    /** Names of resources to process. */
    private String[] moduleResources =
    {
        DefaultModelProvider.getDefaultModuleLocation()
    };

    /** Included modules. */
    private List<String> moduleIncludes;

    /** Excluded modules. */
    private List<String> moduleExcludes;

    /** The encoding of the assembled modlet. */
    private String modletEncoding;

    /** The name of the assembled modlet. */
    private String modletName;

    /** The version of the assembled modlet. */
    private String modletVersion;

    /** The vendor of the assembled modlet. */
    private String modletVendor;

    /** The resource name of the assembled modlet resources. */
    private String modletResource = DefaultModletProvider.getDefaultModletLocation();

    /** Names of modlet resources to process. */
    private String[] modletResources =
    {
        DefaultModletProvider.getDefaultModletLocation()
    };

    /** Included modlets. */
    private List<String> modletIncludes;

    /** Excluded modlets. */
    private List<String> modletExcludes;

    /** Location of a XSLT document to use for transforming the merged model document. */
    private String modelObjectStylesheet;

    /** Location of a XSLT document to use for transforming the merged modlet document. */
    private String modletObjectStylesheet;

    /** The location to search for providers. */
    private String providerLocation;

    /** The location to search for platform providers. */
    private String platformProviderLocation;

    /** The system id of the modlet schema. */
    private String modletSchemaSystemId;

    /** The location to search for modlets. */
    private String modletLocation;

    /** Name of the {@code ModelContextFactory} implementation class. */
    private String modelContextFactoryClassName;

    /** {@code ModelContext} attributes to apply. */
    private List<ModelContextAttribute> modelContextAttributes;

    /** Modlet resources. */
    private Modlets modlets = new Modlets();

    /** Model resources. */
    private Modules modules = new Modules();

    /** The JOMC JAXB marshaller of the instance. */
    private Marshaller jomcMarshaller;
FileLine
org/jomc/mojo/JomcContainerDescriptorHandler.java742
org/jomc/mojo/JomcContainerDescriptorHandler.java838
org/jomc/mojo/JomcResourceTransformer.java759
org/jomc/mojo/JomcResourceTransformer.java855
            final Unmarshaller unmarshaller = modelContext.createUnmarshaller( this.model );
            final JAXBSource source = new JAXBSource( marshaller, element );
            final JAXBResult result = new JAXBResult( unmarshaller );

            for ( Map.Entry<Object, Object> e : System.getProperties().entrySet() )
            {
                transformer.setParameter( e.getKey().toString(), e.getValue() );
            }

            transformer.transform( source, result );

            if ( result.getResult() instanceof JAXBElement<?>
                 && boundType.isInstance( ( (JAXBElement<?>) result.getResult() ).getValue() ) )
            {
                @SuppressWarnings( "unchecked" ) final JAXBElement<T> e = (JAXBElement<T>) result.getResult();
                transformed = e;
            }
            else
            {
                throw new ModelException( Messages.getMessage(
FileLine
org/jomc/mojo/HelpMojo.java192
org/jomc/mojo/HelpMojo.java431
org/jomc/mojo/HelpMojo.java697
org/jomc/mojo/HelpMojo.java928
org/jomc/mojo/HelpMojo.java4015
                append( sb, "Expression: ${jomc.commitMainClassesExecutionStrategy}", 3 );
                append( sb, "", 0 );

                append( sb, "defaultTemplateProfile", 2 );
                append( sb, "The default template profile to use when accessing templates.", 3 );
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java211
org/jomc/mojo/HelpMojo.java450
org/jomc/mojo/HelpMojo.java721
org/jomc/mojo/HelpMojo.java952
org/jomc/mojo/HelpMojo.java4039
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "model (Default: http://jomc.org/model)", 2 );
                append( sb, "The identifier of the model to process.", 3 );
                append( sb, "Expression: ${jomc.model}", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextAttributes", 2 );
                append( sb, "ModelContext attributes.\n<modelContextAttributes>\n\u00a0\u00a0<modelContextAttribute>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0attribute.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0attribute.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0attributes\'s\u00a0object.</type>\n\u00a0\u00a0</modelContextAttribute>\n</modelContextAttributes>\n", 3 );
                append( sb, "", 0 );

                append( sb, "modelContextFactoryClassName", 2 );
                append( sb, "The name of the ModelContextFactory implementation class backing the task.", 3 );
                append( sb, "Expression: ${jomc.modelContextFactoryClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectClasspathResolutionEnabled (Default: true)", 2 );
                append( sb, "Controls model object class path resolution.", 3 );
                append( sb, "Expression: ${jomc.modelObjectClasspathResolution}", 3 );
                append( sb, "", 0 );

                append( sb, "modelObjectStylesheet", 2 );
FileLine
org/jomc/mojo/HelpMojo.java169
org/jomc/mojo/HelpMojo.java408
org/jomc/mojo/HelpMojo.java679
org/jomc/mojo/HelpMojo.java910
org/jomc/mojo/HelpMojo.java1141
org/jomc/mojo/HelpMojo.java1388
org/jomc/mojo/HelpMojo.java1629
org/jomc/mojo/HelpMojo.java1876
org/jomc/mojo/HelpMojo.java2123
org/jomc/mojo/HelpMojo.java2364
org/jomc/mojo/HelpMojo.java2611
org/jomc/mojo/HelpMojo.java2842
org/jomc/mojo/HelpMojo.java3073
org/jomc/mojo/HelpMojo.java3304
org/jomc/mojo/HelpMojo.java3535
org/jomc/mojo/HelpMojo.java3766
org/jomc/mojo/HelpMojo.java3997
org/jomc/mojo/HelpMojo.java4238
            append( sb, "Commits model objects to a projects\' main classes.", 1 );
            append( sb, "", 0 );
            if ( detail )
            {
                append( sb, "Available parameters:", 1 );
                append( sb, "", 0 );

                append( sb, "classesDirectory", 2 );
                append( sb, "Directory holding the compiled class files of the project.\nDeprecated: As of JOMC 1.1, please use the \'outputDirectory\' parameter. This parameter will be removed in version 2.0.\n", 3 );
                append( sb, "", 0 );

                append( sb, "classFileProcessorClassName (Default: org.jomc.tools.ClassFileProcessor)", 2 );
                append( sb, "Class name of the ClassFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.classFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "classProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of class files.", 3 );
                append( sb, "Expression: ${jomc.classProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "commitMainClassesExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/AbstractJomcMojo.java1004
org/jomc/mojo/AbstractJomcMojo.java1052
                this.log( Level.FINEST, Messages.getMessage( "mainClasspathInfo" ), null );
            }

            int i = 0;
            final URL[] urls = new URL[ uris.size() ];
            for ( URI uri : uris )
            {
                urls[i++] = uri.toURL();

                if ( this.isLoggable( Level.FINEST ) )
                {
                    this.log( Level.FINEST, "\t" + urls[i - 1].toExternalForm(), null );
                }
            }

            return new URLClassLoader( urls, Thread.currentThread().getContextClassLoader() );
        }
        catch ( final IOException e )
        {
            throw new MojoExecutionException( Messages.getMessage( e ), e );
        }
    }

    /**
     * Gets the project's test class loader of the instance.
     *
     * @return The project's test class loader of the instance.
     *
     * @throws MojoExecutionException if getting the class loader fails.
     */
    protected ClassLoader getTestClassLoader() throws MojoExecutionException
FileLine
org/jomc/mojo/MainInstanceShowMojo.java71
org/jomc/mojo/TestInstanceShowMojo.java71
    public MainInstanceShowMojo()
    {
        super();
    }

    @Override
    protected Model getDisplayModel( final ModelContext modelContext ) throws MojoExecutionException
    {
        final Model model = this.getModel( modelContext );
        final Modules modules = ModelHelper.getModules( model );
        final Instance instance = modules != null ? modules.getInstance( this.identifier ) : null;
        Model displayModel = null;

        if ( instance != null )
        {
            displayModel = new Model();
            displayModel.setIdentifier( model.getIdentifier() );
            displayModel.getAny().add( new ObjectFactory().createInstance( instance ) );
        }

        return displayModel;
    }

    @Override
    protected ClassLoader getDisplayClassLoader() throws MojoExecutionException
    {
        return this.getMainClassLoader();
FileLine
org/jomc/mojo/MainSpecificationShowMojo.java71
org/jomc/mojo/TestSpecificationShowMojo.java71
    public MainSpecificationShowMojo()
    {
        super();
    }

    @Override
    protected Model getDisplayModel( final ModelContext modelContext ) throws MojoExecutionException
    {
        final Model model = this.getModel( modelContext );
        final Modules modules = ModelHelper.getModules( model );
        final Specification specification = modules != null ? modules.getSpecification( this.identifier ) : null;
        Model displayModel = null;

        if ( specification != null )
        {
            displayModel = new Model();
            displayModel.setIdentifier( model.getIdentifier() );
            displayModel.getAny().add( new ObjectFactory().createSpecification( specification ) );
        }

        return displayModel;
    }

    @Override
    protected ClassLoader getDisplayClassLoader() throws MojoExecutionException
    {
        return this.getMainClassLoader();
FileLine
org/jomc/mojo/JomcContainerDescriptorHandler.java573
org/jomc/mojo/JomcResourceTransformer.java372
        }
        catch ( final InstantiationException e )
        {
            // JDK: As of JDK 6, "new IOException( message, cause )".
            throw (IOException) new IOException( Messages.getMessage( e ) ).initCause( e );
        }
        catch ( final JAXBException e )
        {
            String message = Messages.getMessage( e );
            if ( message == null && e.getLinkedException() != null )
            {
                message = Messages.getMessage( e.getLinkedException() );
            }

            // JDK: As of JDK 6, "new IOException( message, cause )".
            throw (IOException) new IOException( message ).initCause( e );
        }
        catch ( final ModelException e )
        {
            // JDK: As of JDK 6, "new IOException( message, cause )".
            throw (IOException) new IOException( Messages.getMessage( e ) ).initCause( e );
        }
    }
FileLine
org/jomc/mojo/HelpMojo.java1268
org/jomc/mojo/HelpMojo.java1509
org/jomc/mojo/HelpMojo.java1756
org/jomc/mojo/HelpMojo.java2003
org/jomc/mojo/HelpMojo.java2244
org/jomc/mojo/HelpMojo.java2491
org/jomc/mojo/HelpMojo.java4118
org/jomc/mojo/HelpMojo.java4354
                append( sb, "Expression: ${jomc.reportOutputDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceFileProcessorClassName (Default: org.jomc.tools.ResourceFileProcessor)", 2 );
                append( sb, "Class name of the ResourceFileProcessor backing the goal.", 3 );
                append( sb, "Expression: ${jomc.resourceFileProcessorClassName}", 3 );
                append( sb, "", 0 );

                append( sb, "resourceProcessingEnabled (Default: true)", 2 );
                append( sb, "Controls processing of resource files.", 3 );
                append( sb, "Expression: ${jomc.resourceProcessing}", 3 );
                append( sb, "", 0 );

                append( sb, "sessionDirectory (Default: ${project.build.directory}/jomc-sessions)", 2 );
                append( sb, "Directory holding the session related files of the project.", 3 );
                append( sb, "Expression: ${jomc.sessionDirectory}", 3 );
                append( sb, "", 0 );

                append( sb, "showMainInstanceExecutionStrategy (Default: once-per-session)", 2 );
FileLine
org/jomc/mojo/HelpMojo.java387
org/jomc/mojo/HelpMojo.java626
org/jomc/mojo/HelpMojo.java889
org/jomc/mojo/HelpMojo.java1120
org/jomc/mojo/HelpMojo.java1367
org/jomc/mojo/HelpMojo.java1608
org/jomc/mojo/HelpMojo.java1855
org/jomc/mojo/HelpMojo.java2102
org/jomc/mojo/HelpMojo.java2343
org/jomc/mojo/HelpMojo.java2590
org/jomc/mojo/HelpMojo.java2821
org/jomc/mojo/HelpMojo.java3052
org/jomc/mojo/HelpMojo.java3283
org/jomc/mojo/HelpMojo.java3514
org/jomc/mojo/HelpMojo.java3745
org/jomc/mojo/HelpMojo.java3976
                append( sb, "Expression: ${jomc.transformerLocation}", 3 );
                append( sb, "", 0 );

                append( sb, "velocityProperties", 2 );
                append( sb, "Velocity runtime properties.\n<velocityProperties>\n\u00a0\u00a0<velocityProperty>\n\u00a0\u00a0\u00a0\u00a0<key>The\u00a0name\u00a0of\u00a0the\u00a0property.</key>\n\u00a0\u00a0\u00a0\u00a0<value>The\u00a0value\u00a0of\u00a0the\u00a0property.</value>\n\u00a0\u00a0\u00a0\u00a0<type>The\u00a0name\u00a0of\u00a0the\u00a0class\u00a0of\u00a0the\u00a0properties\u00a0object.</type>\n\u00a0\u00a0</velocityProperty>\n</velocityProperties>\n", 3 );
                append( sb, "", 0 );

                append( sb, "velocityPropertyResources", 2 );
                append( sb, "Velocity runtime property resources.\n<velocityPropertyResources>\n\u00a0\u00a0<velocityPropertyResource>\n\u00a0\u00a0\u00a0\u00a0<location>The\u00a0location\u00a0of\u00a0the\u00a0properties\u00a0resource.</location>\n\u00a0\u00a0\u00a0\u00a0<optional>Flag\u00a0indicating\u00a0the\u00a0properties\u00a0resource\u00a0is\u00a0optional.</optional>\n\u00a0\u00a0\u00a0\u00a0<format>The\u00a0format\u00a0of\u00a0the\u00a0properties\u00a0resource.</format>\n\u00a0\u00a0\u00a0\u00a0<connectTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</connectTimeout>\n\u00a0\u00a0\u00a0\u00a0<readTimeout>Timeout\u00a0value,\u00a0in\u00a0milliseconds.</readTimeout>\n\u00a0\u00a0</velocityPropertyResource>\n</velocityPropertyResources>\n\nThe location value is used to first search the class path of the plugin. If a class path resource is found, that resource is used. If no class path resource is found, an attempt is made to parse the location value to an URL. On successful parsing, that URL is used. Otherwise the location value is interpreted as a file name relative to the base directory of the project. If that file exists, that file is used. If nothing is found at the given location, depending on the optional flag, a warning message is logged or a build failure is produced.\n\nThe optional flag is used to flag the resource optional. When an optional resource is not found, a warning message is logged instead of producing a build failure.\nDefault value is: false\n\nThe format value is used to specify the format of the properties resource. Supported values are plain and xml.\nDefault value is: plain\n\nThe connectTimeout value is used to specify the timeout, in milliseconds, to be used when opening communications links to the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n\nThe readTimeout value is used to specify the timeout, in milliseconds, to be used when reading the resource. A timeout of zero is interpreted as an infinite timeout.\nDefault value is: 60000\n", 3 );
                append( sb, "", 0 );

                append( sb, "verbose (Default: false)", 2 );
                append( sb, "Controls verbosity of the plugin.", 3 );
                append( sb, "Expression: ${jomc.verbose}", 3 );
                append( sb, "", 0 );
            }
        }

        if ( goal == null || goal.length() <= 0 || "commit-test-classes".equals( goal ) )
FileLine
org/jomc/mojo/HelpMojo.java702
org/jomc/mojo/HelpMojo.java933
org/jomc/mojo/HelpMojo.java1180
org/jomc/mojo/HelpMojo.java1421
org/jomc/mojo/HelpMojo.java1668
org/jomc/mojo/HelpMojo.java1915
org/jomc/mojo/HelpMojo.java2156
org/jomc/mojo/HelpMojo.java2403
org/jomc/mojo/HelpMojo.java4020
                append( sb, "Expression: ${jomc.defaultTemplateProfile}", 3 );
                append( sb, "", 0 );

                append( sb, "indentation", 2 );
                append( sb, "The indentation string (\'\\t\' for tab).", 3 );
                append( sb, "Expression: ${jomc.indentation}", 3 );
                append( sb, "", 0 );

                append( sb, "lineSeparator", 2 );
                append( sb, "The line separator (\'\\r\\n\' for DOS, \'\\r\' for Mac, \'\\n\' for Unix).", 3 );
                append( sb, "Expression: ${jomc.lineSeparator}", 3 );
                append( sb, "", 0 );

                append( sb, "locale", 2 );
                append( sb, "The locale.\n<locale>\n\u00a0\u00a0<language>Lowercase\u00a0two-letter\u00a0ISO-639\u00a0code.</language>\n\u00a0\u00a0<country>Uppercase\u00a0two-letter\u00a0ISO-3166\u00a0code.</country>\n\u00a0\u00a0<variant>Vendor\u00a0and\u00a0browser\u00a0specific\u00a0code.</variant>\n</locale>\n", 3 );
                append( sb, "", 0 );

                append( sb, "manageMainSourcesExecutionStrategy (Default: once-per-session)", 2 );