001    // SECTION-START[License Header]
002    // <editor-fold defaultstate="collapsed" desc=" Generated License ">
003    /*
004     *   Copyright (c) 2009 The JOMC Project
005     *   Copyright (c) 2005 Christian Schulte <cs@jomc.org>
006     *   All rights reserved.
007     *
008     *   Redistribution and use in source and binary forms, with or without
009     *   modification, are permitted provided that the following conditions
010     *   are met:
011     *
012     *     o Redistributions of source code must retain the above copyright
013     *       notice, this list of conditions and the following disclaimer.
014     *
015     *     o Redistributions in binary form must reproduce the above copyright
016     *       notice, this list of conditions and the following disclaimer in
017     *       the documentation and/or other materials provided with the
018     *       distribution.
019     *
020     *   THIS SOFTWARE IS PROVIDED BY THE JOMC PROJECT AND CONTRIBUTORS "AS IS"
021     *   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
022     *   THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
023     *   PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE JOMC PROJECT OR
024     *   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
025     *   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
026     *   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
027     *   OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
028     *   WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
029     *   OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
030     *   ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
031     *
032     *   $Id: GenerateJavaBundlesCommand.java 1102 2009-12-07 03:01:58Z schulte2005 $
033     *
034     */
035    // </editor-fold>
036    // SECTION-END
037    package org.jomc.cli.commands;
038    
039    import java.io.File;
040    import java.util.Locale;
041    import java.util.logging.Level;
042    import javax.xml.bind.JAXBContext;
043    import javax.xml.bind.Marshaller;
044    import javax.xml.validation.Schema;
045    import org.apache.commons.cli.CommandLine;
046    import org.apache.commons.cli.Option;
047    import org.apache.commons.cli.Options;
048    import org.jomc.model.ModelObjectValidationReport;
049    import org.jomc.model.Module;
050    import org.jomc.model.Modules;
051    import org.jomc.model.ObjectFactory;
052    import org.jomc.tools.JavaBundles;
053    
054    // SECTION-START[Documentation]
055    // <editor-fold defaultstate="collapsed" desc=" Generated Documentation ">
056    /**
057     * Command line interface for the {@code JavaBundles} tool.
058     *
059     * <p><b>Specifications</b><ul>
060     * <li>{@code org.jomc.cli.Command} {@code 1.0} {@code Multiton}</li>
061     * </ul></p>
062     * <p><b>Properties</b><ul>
063     * <li>"{@link #getAbbreviatedCommandName abbreviatedCommandName}"
064     * <blockquote>Property of type {@code java.lang.String}.
065     * <p>Abbreviated name of the command.</p>
066     * </blockquote></li>
067     * <li>"{@link #getClasspathOptionLongName classpathOptionLongName}"
068     * <blockquote>Property of type {@code java.lang.String}.
069     * <p>Long name of the 'classpath' option.</p>
070     * </blockquote></li>
071     * <li>"{@link #getClasspathOptionShortName classpathOptionShortName}"
072     * <blockquote>Property of type {@code java.lang.String}.
073     * <p>Name of the 'classpath' option.</p>
074     * </blockquote></li>
075     * <li>"{@link #getCommandName commandName}"
076     * <blockquote>Property of type {@code java.lang.String}.
077     * <p>Name of the command.</p>
078     * </blockquote></li>
079     * <li>"{@link #getDocumentsOptionLongName documentsOptionLongName}"
080     * <blockquote>Property of type {@code java.lang.String}.
081     * <p>Long name of the 'documents' option.</p>
082     * </blockquote></li>
083     * <li>"{@link #getDocumentsOptionShortName documentsOptionShortName}"
084     * <blockquote>Property of type {@code java.lang.String}.
085     * <p>Name of the 'documents' option.</p>
086     * </blockquote></li>
087     * <li>"{@link #getLanguageOptionLongName languageOptionLongName}"
088     * <blockquote>Property of type {@code java.lang.String}.
089     * <p>Long name of the 'language' option.</p>
090     * </blockquote></li>
091     * <li>"{@link #getLanguageOptionShortName languageOptionShortName}"
092     * <blockquote>Property of type {@code java.lang.String}.
093     * <p>Name of the 'language' option.</p>
094     * </blockquote></li>
095     * <li>"{@link #getModuleLocationOptionLongName moduleLocationOptionLongName}"
096     * <blockquote>Property of type {@code java.lang.String}.
097     * <p>Long name of the 'module-location' option.</p>
098     * </blockquote></li>
099     * <li>"{@link #getModuleLocationOptionShortName moduleLocationOptionShortName}"
100     * <blockquote>Property of type {@code java.lang.String}.
101     * <p>Name of the 'module-location' option.</p>
102     * </blockquote></li>
103     * <li>"{@link #getModuleNameOptionLongName moduleNameOptionLongName}"
104     * <blockquote>Property of type {@code java.lang.String}.
105     * <p>Long name of the 'module' option.</p>
106     * </blockquote></li>
107     * <li>"{@link #getModuleNameOptionShortName moduleNameOptionShortName}"
108     * <blockquote>Property of type {@code java.lang.String}.
109     * <p>Name of the 'module' option.</p>
110     * </blockquote></li>
111     * <li>"{@link #getNoClasspathResolutionOptionLongName noClasspathResolutionOptionLongName}"
112     * <blockquote>Property of type {@code java.lang.String}.
113     * <p>Long name of the 'no-classpath-resolution' option.</p>
114     * </blockquote></li>
115     * <li>"{@link #getNoClasspathResolutionOptionShortName noClasspathResolutionOptionShortName}"
116     * <blockquote>Property of type {@code java.lang.String}.
117     * <p>Name of the 'no-classpath-resolution' option.</p>
118     * </blockquote></li>
119     * <li>"{@link #getOutputEncodingOptionLongName outputEncodingOptionLongName}"
120     * <blockquote>Property of type {@code java.lang.String}.
121     * <p>Long name of the 'output-encoding' option.</p>
122     * </blockquote></li>
123     * <li>"{@link #getOutputEncodingOptionShortName outputEncodingOptionShortName}"
124     * <blockquote>Property of type {@code java.lang.String}.
125     * <p>Name of the 'output-encoding' option.</p>
126     * </blockquote></li>
127     * <li>"{@link #getProfileOptionLongName profileOptionLongName}"
128     * <blockquote>Property of type {@code java.lang.String}.
129     * <p>Long name of the 'profile' option.</p>
130     * </blockquote></li>
131     * <li>"{@link #getProfileOptionShortName profileOptionShortName}"
132     * <blockquote>Property of type {@code java.lang.String}.
133     * <p>Name of the 'profile' option.</p>
134     * </blockquote></li>
135     * <li>"{@link #getResourceDirectoryOptionLongName resourceDirectoryOptionLongName}"
136     * <blockquote>Property of type {@code java.lang.String}.
137     * <p>Long name of the 'resource-dir' option.</p>
138     * </blockquote></li>
139     * <li>"{@link #getResourceDirectoryOptionShortName resourceDirectoryOptionShortName}"
140     * <blockquote>Property of type {@code java.lang.String}.
141     * <p>Name of the 'resource-dir' option.</p>
142     * </blockquote></li>
143     * <li>"{@link #getSourceDirectoryOptionLongName sourceDirectoryOptionLongName}"
144     * <blockquote>Property of type {@code java.lang.String}.
145     * <p>Long name of the 'source-dir' option.</p>
146     * </blockquote></li>
147     * <li>"{@link #getSourceDirectoryOptionShortName sourceDirectoryOptionShortName}"
148     * <blockquote>Property of type {@code java.lang.String}.
149     * <p>Name of the 'source-dir' option.</p>
150     * </blockquote></li>
151     * <li>"{@link #getTemplateEncodingOptionLongName templateEncodingOptionLongName}"
152     * <blockquote>Property of type {@code java.lang.String}.
153     * <p>Long name of the 'template-encoding' option.</p>
154     * </blockquote></li>
155     * <li>"{@link #getTemplateEncodingOptionShortName templateEncodingOptionShortName}"
156     * <blockquote>Property of type {@code java.lang.String}.
157     * <p>Name of the 'template-encoding' option.</p>
158     * </blockquote></li>
159     * </ul></p>
160     * <p><b>Dependencies</b><ul>
161     * <li>"{@link #getLocale Locale}"<blockquote>
162     * Dependency on {@code java.util.Locale} at specification level 1.1 bound to an instance.</blockquote></li>
163     * </ul></p>
164     * <p><b>Messages</b><ul>
165     * <li>"{@link #getApplicationTitleMessage applicationTitle}"<table>
166     * <tr><td valign="top">English:</td><td valign="top"><pre>JOMC Version 1.0-alpha-11 Build 2009-12-07T02:58:52+0000</pre></td></tr>
167     * </table>
168     * <li>"{@link #getCannotProcessMessage cannotProcess}"<table>
169     * <tr><td valign="top">English:</td><td valign="top"><pre>Cannot process ''{0}'': {1}</pre></td></tr>
170     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Kann ''{0}'' nicht verarbeiten: {1}</pre></td></tr>
171     * </table>
172     * <li>"{@link #getClasspathElementMessage classpathElement}"<table>
173     * <tr><td valign="top">English:</td><td valign="top"><pre>Classpath element: ''{0}''</pre></td></tr>
174     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Klassenpfad-Element: ''{0}''</pre></td></tr>
175     * </table>
176     * <li>"{@link #getClasspathOptionMessage classpathOption}"<table>
177     * <tr><td valign="top">English:</td><td valign="top"><pre>Classpath elements separated by ''{0}''. If starting with a ''@'' character, a file name of a file holding classpath elements.</pre></td></tr>
178     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Klassenpfad-Elemente mit ''{0}'' getrennt. Wenn mit ''@'' beginnend, Dateiname einer Textdatei mit Klassenpfad-Elementen.</pre></td></tr>
179     * </table>
180     * <li>"{@link #getClasspathOptionArgNameMessage classpathOptionArgName}"<table>
181     * <tr><td valign="top">English:</td><td valign="top"><pre>elements</pre></td></tr>
182     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Elemente</pre></td></tr>
183     * </table>
184     * <li>"{@link #getDefaultLogLevelInfoMessage defaultLogLevelInfo}"<table>
185     * <tr><td valign="top">English:</td><td valign="top"><pre>Default log level: ''{0}''</pre></td></tr>
186     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Standard-Protokollierungsstufe: ''{0}''</pre></td></tr>
187     * </table>
188     * <li>"{@link #getDocumentFileMessage documentFile}"<table>
189     * <tr><td valign="top">English:</td><td valign="top"><pre>Document file: ''{0}''</pre></td></tr>
190     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Dokument-Datei: ''{0}''</pre></td></tr>
191     * </table>
192     * <li>"{@link #getDocumentsOptionMessage documentsOption}"<table>
193     * <tr><td valign="top">English:</td><td valign="top"><pre>Document filenames separated by ''{0}''. If starting with a ''@'' character, a file name of a file holding document filenames.</pre></td></tr>
194     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Dokument-Dateinamen mit ''{0}'' getrennt. Wenn mit ''@'' beginnend, Dateiname einer Textdatei mit Dokument-Dateinamen.</pre></td></tr>
195     * </table>
196     * <li>"{@link #getDocumentsOptionArgNameMessage documentsOptionArgName}"<table>
197     * <tr><td valign="top">English:</td><td valign="top"><pre>files</pre></td></tr>
198     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Dateien</pre></td></tr>
199     * </table>
200     * <li>"{@link #getInvalidModelMessage invalidModel}"<table>
201     * <tr><td valign="top">English:</td><td valign="top"><pre>Invalid model.</pre></td></tr>
202     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ung&uuml;ltiges Modell.</pre></td></tr>
203     * </table>
204     * <li>"{@link #getLanguageOptionMessage languageOption}"<table>
205     * <tr><td valign="top">English:</td><td valign="top"><pre>Default language (defaults to ''{0}'').</pre></td></tr>
206     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Standard-Sprache (Standard ''{0}'').</pre></td></tr>
207     * </table>
208     * <li>"{@link #getLanguageOptionArgNameMessage languageOptionArgName}"<table>
209     * <tr><td valign="top">English:</td><td valign="top"><pre>language</pre></td></tr>
210     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Sprache</pre></td></tr>
211     * </table>
212     * <li>"{@link #getLongDescriptionMessage longDescription}"<table>
213     * <tr><td valign="top">English:</td><td valign="top"><pre>Example:
214     *   jomc generate-java-bundles -sd /tmp/src  -rd /tmp/rsrc \
215     *                              -df examples/xml/jomc-cli.xml \
216     *                              -mn &quot;JOMC CLI&quot; -v</pre></td></tr>
217     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Beispiel:
218     *   jomc generate-java-bundles -sd /tmp/src -rd /tmp/rsrc \
219     *                              -df examples/xml/jomc-cli.xml \
220     *                              -mn &quot;JOMC CLI&quot; -v</pre></td></tr>
221     * </table>
222     * <li>"{@link #getMissingModuleMessage missingModule}"<table>
223     * <tr><td valign="top">English:</td><td valign="top"><pre>Module ''{0}'' not found.</pre></td></tr>
224     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Modul ''{0}'' nicht gefunden.</pre></td></tr>
225     * </table>
226     * <li>"{@link #getModuleLocationOptionMessage moduleLocationOption}"<table>
227     * <tr><td valign="top">English:</td><td valign="top"><pre>Location of classpath modules.</pre></td></tr>
228     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ort der Klassenpfad-Module.</pre></td></tr>
229     * </table>
230     * <li>"{@link #getModuleLocationOptionArgNameMessage moduleLocationOptionArgName}"<table>
231     * <tr><td valign="top">English:</td><td valign="top"><pre>location</pre></td></tr>
232     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ort</pre></td></tr>
233     * </table>
234     * <li>"{@link #getModuleNameOptionMessage moduleNameOption}"<table>
235     * <tr><td valign="top">English:</td><td valign="top"><pre>Name of the module to process.</pre></td></tr>
236     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name des zu verarbeitenden Moduls.</pre></td></tr>
237     * </table>
238     * <li>"{@link #getModuleNameOptionArgNameMessage moduleNameOptionArgName}"<table>
239     * <tr><td valign="top">English:</td><td valign="top"><pre>name</pre></td></tr>
240     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name</pre></td></tr>
241     * </table>
242     * <li>"{@link #getModulesReportMessage modulesReport}"<table>
243     * <tr><td valign="top">English:</td><td valign="top"><pre>Modules</pre></td></tr>
244     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Module</pre></td></tr>
245     * </table>
246     * <li>"{@link #getNoClasspathResolutionOptionMessage noClasspathResolutionOption}"<table>
247     * <tr><td valign="top">English:</td><td valign="top"><pre>Do not perform classpath resolution.</pre></td></tr>
248     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Keine Klassenpfad-Aufl&ouml;sung durchf&uuml;hren.</pre></td></tr>
249     * </table>
250     * <li>"{@link #getOutputEncodingOptionMessage outputEncodingOption}"<table>
251     * <tr><td valign="top">English:</td><td valign="top"><pre>Output encoding.</pre></td></tr>
252     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ausgabekodierung.</pre></td></tr>
253     * </table>
254     * <li>"{@link #getOutputEncodingOptionArgNameMessage outputEncodingOptionArgName}"<table>
255     * <tr><td valign="top">English:</td><td valign="top"><pre>encoding</pre></td></tr>
256     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Kodierung</pre></td></tr>
257     * </table>
258     * <li>"{@link #getProfileOptionMessage profileOption}"<table>
259     * <tr><td valign="top">English:</td><td valign="top"><pre>Templates profile to use.</pre></td></tr>
260     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Zu verwendendes Vorlagen-Profil.</pre></td></tr>
261     * </table>
262     * <li>"{@link #getProfileOptionArgNameMessage profileOptionArgName}"<table>
263     * <tr><td valign="top">English:</td><td valign="top"><pre>profile</pre></td></tr>
264     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Profil</pre></td></tr>
265     * </table>
266     * <li>"{@link #getResourceDirectoryOptionMessage resourceDirectoryOption}"<table>
267     * <tr><td valign="top">English:</td><td valign="top"><pre>Directory to write resource files to.</pre></td></tr>
268     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Verzeichnis in das Ressource-Dateien geschrieben werden sollen.</pre></td></tr>
269     * </table>
270     * <li>"{@link #getResourceDirectoryOptionArgNameMessage resourceDirectoryOptionArgName}"<table>
271     * <tr><td valign="top">English:</td><td valign="top"><pre>directory</pre></td></tr>
272     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Verzeichnis</pre></td></tr>
273     * </table>
274     * <li>"{@link #getSeparatorMessage separator}"<table>
275     * <tr><td valign="top">English:</td><td valign="top"><pre>--------------------------------------------------------------------------------</pre></td></tr>
276     * </table>
277     * <li>"{@link #getShortDescriptionMessage shortDescription}"<table>
278     * <tr><td valign="top">English:</td><td valign="top"><pre>Generates Java resource bundles.</pre></td></tr>
279     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Generiert Java Ressource-B&uuml;ndel.</pre></td></tr>
280     * </table>
281     * <li>"{@link #getSourceDirectoryOptionMessage sourceDirectoryOption}"<table>
282     * <tr><td valign="top">English:</td><td valign="top"><pre>Directory to write source files to.</pre></td></tr>
283     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Verzeichnis in das Quelltext-Dateien geschrieben werden sollen.</pre></td></tr>
284     * </table>
285     * <li>"{@link #getSourceDirectoryOptionArgNameMessage sourceDirectoryOptionArgName}"<table>
286     * <tr><td valign="top">English:</td><td valign="top"><pre>directory</pre></td></tr>
287     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Verzeichnis</pre></td></tr>
288     * </table>
289     * <li>"{@link #getStartingModuleProcessingMessage startingModuleProcessing}"<table>
290     * <tr><td valign="top">English:</td><td valign="top"><pre>Executing command {0} with module ''{1}'' ...</pre></td></tr>
291     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>F&uuml;hrt Befehl {0} mit Modul ''{1}'' aus ... </pre></td></tr>
292     * </table>
293     * <li>"{@link #getStartingProcessingMessage startingProcessing}"<table>
294     * <tr><td valign="top">English:</td><td valign="top"><pre>Executing command {0} ...</pre></td></tr>
295     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>F&uuml;hrt Befehl {0} aus ... </pre></td></tr>
296     * </table>
297     * <li>"{@link #getTemplateEncodingOptionMessage templateEncodingOption}"<table>
298     * <tr><td valign="top">English:</td><td valign="top"><pre>Template encoding.</pre></td></tr>
299     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Vorlagenkodierung.</pre></td></tr>
300     * </table>
301     * <li>"{@link #getTemplateEncodingOptionArgNameMessage templateEncodingOptionArgName}"<table>
302     * <tr><td valign="top">English:</td><td valign="top"><pre>encoding</pre></td></tr>
303     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Kodierung</pre></td></tr>
304     * </table>
305     * <li>"{@link #getToolFailureMessage toolFailure}"<table>
306     * <tr><td valign="top">English:</td><td valign="top"><pre>{0} failure.</pre></td></tr>
307     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>{0} fehlgeschlagen.</pre></td></tr>
308     * </table>
309     * <li>"{@link #getToolSuccessMessage toolSuccess}"<table>
310     * <tr><td valign="top">English:</td><td valign="top"><pre>{0} successful.</pre></td></tr>
311     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>{0} erfolgreich.</pre></td></tr>
312     * </table>
313     * </ul></p>
314     *
315     * @author <a href="mailto:cs@jomc.org">Christian Schulte</a> 1.0
316     * @version $Id: GenerateJavaBundlesCommand.java 1102 2009-12-07 03:01:58Z schulte2005 $
317     */
318    // </editor-fold>
319    // SECTION-END
320    // SECTION-START[Annotations]
321    // <editor-fold defaultstate="collapsed" desc=" Generated Annotations ">
322    @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
323                                 comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
324    // </editor-fold>
325    // SECTION-END
326    public final class GenerateJavaBundlesCommand extends AbstractJomcCommand
327    {
328        // SECTION-START[Command]
329    
330        private Options options;
331    
332        @Override
333        public Options getOptions()
334        {
335            if ( this.options == null )
336            {
337                this.options = super.getOptions();
338                this.options.addOption( this.getSourceDirectoryOption() );
339                this.options.addOption( this.getResourceDirectoryOption() );
340                this.options.addOption( this.getLanguageOption() );
341                this.options.addOption( this.getProfileOption() );
342                this.options.addOption( this.getTemplateEncodingOption() );
343                this.options.addOption( this.getOutputEncodingOption() );
344            }
345    
346            return this.options;
347        }
348    
349        public int executeCommand( final CommandLine commandLine ) throws Exception
350        {
351            final Modules modules = this.getModules( commandLine );
352            final ClassLoader classLoader = this.getClassLoader( commandLine );
353            final JAXBContext context = this.getModelManager().getContext( classLoader );
354            final Marshaller marshaller = this.getModelManager().getMarshaller( classLoader );
355            final Schema schema = this.getModelManager().getSchema( classLoader );
356            final ModelObjectValidationReport validationReport = this.getModelObjectValidator().validateModelObject(
357                new ObjectFactory().createModules( modules ), context, schema );
358    
359            this.log( validationReport, marshaller );
360    
361            if ( validationReport.isModelObjectValid() )
362            {
363                final JavaBundles tool = this.getJavaBundles();
364                tool.setModules( modules );
365    
366                if ( commandLine.hasOption( this.getLanguageOption().getOpt() ) )
367                {
368                    tool.setDefaultLocale( new Locale( commandLine.getOptionValue( this.getLanguageOption().getOpt() ) ) );
369                }
370                if ( commandLine.hasOption( this.getProfileOption().getOpt() ) )
371                {
372                    tool.setProfile( commandLine.getOptionValue( this.getProfileOption().getOpt() ) );
373                }
374                if ( commandLine.hasOption( this.getTemplateEncodingOption().getOpt() ) )
375                {
376                    tool.setTemplateEncoding( commandLine.getOptionValue( this.getTemplateEncodingOption().getOpt() ) );
377                }
378                if ( commandLine.hasOption( this.getOutputEncodingOption().getOpt() ) )
379                {
380                    tool.setOutputEncoding( commandLine.getOptionValue( this.getOutputEncodingOption().getOpt() ) );
381                }
382    
383                final File sourcesDirectory =
384                    new File( commandLine.getOptionValue( this.getSourceDirectoryOption().getOpt() ) );
385    
386                final File resourcesDirectory =
387                    new File( commandLine.getOptionValue( this.getResourceDirectoryOption().getOpt() ) );
388    
389                if ( commandLine.hasOption( this.getModuleNameOption().getOpt() ) )
390                {
391                    final String moduleName = commandLine.getOptionValue( this.getModuleNameOption().getOpt() );
392                    final Module module = tool.getModules().getModule( moduleName );
393    
394                    if ( module != null )
395                    {
396                        if ( this.isLoggable( Level.INFO ) )
397                        {
398                            this.log( Level.INFO, this.getStartingModuleProcessingMessage(
399                                this.getLocale(), this.getCommandName(), module.getName() ), null );
400    
401                        }
402    
403                        tool.writeBundleSources( module, sourcesDirectory );
404                        tool.writeBundleResources( module, resourcesDirectory );
405                    }
406                    else if ( this.isLoggable( Level.WARNING ) )
407                    {
408                        this.log( Level.WARNING, this.getMissingModuleMessage( this.getLocale(), moduleName ), null );
409                    }
410                }
411                else
412                {
413                    if ( this.isLoggable( Level.INFO ) )
414                    {
415                        this.log( Level.INFO, this.getStartingProcessingMessage(
416                            this.getLocale(), this.getCommandName() ), null );
417    
418                    }
419    
420                    tool.writeBundleSources( sourcesDirectory );
421                    tool.writeBundleResources( resourcesDirectory );
422                }
423    
424                return STATUS_SUCCESS;
425            }
426    
427            return STATUS_FAILURE;
428        }
429    
430        // SECTION-END
431        // SECTION-START[GenerateJavaBundlesCommand]
432        private Option sourceDirectoryOption;
433    
434        private Option resourceDirectoryOption;
435    
436        private Option languageOption;
437    
438        private Option profileOption;
439    
440        private Option templateEncodingOption;
441    
442        private Option outputEncodingOption;
443    
444        protected Option getSourceDirectoryOption()
445        {
446            if ( this.sourceDirectoryOption == null )
447            {
448                this.sourceDirectoryOption = new Option( this.getSourceDirectoryOptionShortName(),
449                                                         this.getSourceDirectoryOptionLongName(), true,
450                                                         this.getSourceDirectoryOptionMessage( this.getLocale() ) );
451    
452                this.sourceDirectoryOption.setRequired( true );
453                this.sourceDirectoryOption.setArgName( this.getSourceDirectoryOptionArgNameMessage( this.getLocale() ) );
454            }
455    
456            return this.sourceDirectoryOption;
457        }
458    
459        protected Option getResourceDirectoryOption()
460        {
461            if ( this.resourceDirectoryOption == null )
462            {
463                this.resourceDirectoryOption = new Option( this.getResourceDirectoryOptionShortName(),
464                                                           this.getResourceDirectoryOptionLongName(), true,
465                                                           this.getResourceDirectoryOptionMessage( this.getLocale() ) );
466    
467                this.resourceDirectoryOption.setRequired( true );
468                this.resourceDirectoryOption.setArgName( this.getResourceDirectoryOptionArgNameMessage( this.getLocale() ) );
469            }
470    
471            return this.resourceDirectoryOption;
472        }
473    
474        protected Option getLanguageOption()
475        {
476            if ( this.languageOption == null )
477            {
478                this.languageOption = new Option( this.getLanguageOptionShortName(), this.getLanguageOptionLongName(),
479                                                  true, this.getLanguageOptionMessage( this.getLocale(),
480                                                                                       this.getLocale().getLanguage() ) );
481    
482                this.languageOption.setArgName( this.getLanguageOptionArgNameMessage( this.getLocale(), null ) );
483            }
484    
485            return this.languageOption;
486        }
487    
488        protected Option getProfileOption()
489        {
490            if ( this.profileOption == null )
491            {
492                this.profileOption = new Option( this.getProfileOptionShortName(), this.getProfileOptionLongName(),
493                                                 true, this.getProfileOptionMessage( this.getLocale() ) );
494    
495                this.profileOption.setArgName( this.getProfileOptionArgNameMessage( this.getLocale() ) );
496            }
497    
498            return this.profileOption;
499        }
500    
501        protected Option getTemplateEncodingOption()
502        {
503            if ( this.templateEncodingOption == null )
504            {
505                this.templateEncodingOption = new Option( this.getTemplateEncodingOptionShortName(),
506                                                          this.getTemplateEncodingOptionLongName(), true,
507                                                          this.getTemplateEncodingOptionMessage( this.getLocale() ) );
508    
509                this.templateEncodingOption.setArgName( this.getTemplateEncodingOptionArgNameMessage( this.getLocale() ) );
510            }
511    
512            return this.templateEncodingOption;
513        }
514    
515        protected Option getOutputEncodingOption()
516        {
517            if ( this.outputEncodingOption == null )
518            {
519                this.outputEncodingOption = new Option( this.getOutputEncodingOptionShortName(),
520                                                        this.getOutputEncodingOptionLongName(), true,
521                                                        this.getOutputEncodingOptionMessage( this.getLocale() ) );
522    
523                this.outputEncodingOption.setArgName( this.getOutputEncodingOptionArgNameMessage( this.getLocale() ) );
524            }
525    
526            return this.outputEncodingOption;
527        }
528    
529        // SECTION-END
530        // SECTION-START[Constructors]
531        // <editor-fold defaultstate="collapsed" desc=" Generated Constructors ">
532    
533        /** Creates a new {@code GenerateJavaBundlesCommand} instance. */
534        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
535                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
536        public GenerateJavaBundlesCommand()
537        {
538            // SECTION-START[Default Constructor]
539            super();
540            // SECTION-END
541        }
542        // </editor-fold>
543        // SECTION-END
544        // SECTION-START[Dependencies]
545        // <editor-fold defaultstate="collapsed" desc=" Generated Dependencies ">
546    
547        /**
548         * Gets the {@code Locale} dependency.
549         * <p>This method returns the "{@code default}" object of the {@code java.util.Locale} specification at specification level 1.1.</p>
550         * <p>That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.</p>
551         * @return The {@code Locale} dependency.
552         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
553         */
554        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
555                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
556        private java.util.Locale getLocale()
557        {
558            final java.util.Locale _d = (java.util.Locale) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Locale" );
559            assert _d != null : "'Locale' dependency not found.";
560            return _d;
561        }
562        // </editor-fold>
563        // SECTION-END
564        // SECTION-START[Properties]
565        // <editor-fold defaultstate="collapsed" desc=" Generated Properties ">
566    
567        /**
568         * Gets the value of the {@code abbreviatedCommandName} property.
569         * @return Abbreviated name of the command.
570         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
571         */
572        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
573                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
574        private java.lang.String getAbbreviatedCommandName()
575        {
576            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "abbreviatedCommandName" );
577            assert _p != null : "'abbreviatedCommandName' property not found.";
578            return _p;
579        }
580    
581        /**
582         * Gets the value of the {@code classpathOptionLongName} property.
583         * @return Long name of the 'classpath' option.
584         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
585         */
586        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
587                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
588        private java.lang.String getClasspathOptionLongName()
589        {
590            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "classpathOptionLongName" );
591            assert _p != null : "'classpathOptionLongName' property not found.";
592            return _p;
593        }
594    
595        /**
596         * Gets the value of the {@code classpathOptionShortName} property.
597         * @return Name of the 'classpath' option.
598         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
599         */
600        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
601                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
602        private java.lang.String getClasspathOptionShortName()
603        {
604            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "classpathOptionShortName" );
605            assert _p != null : "'classpathOptionShortName' property not found.";
606            return _p;
607        }
608    
609        /**
610         * Gets the value of the {@code commandName} property.
611         * @return Name of the command.
612         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
613         */
614        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
615                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
616        private java.lang.String getCommandName()
617        {
618            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "commandName" );
619            assert _p != null : "'commandName' property not found.";
620            return _p;
621        }
622    
623        /**
624         * Gets the value of the {@code documentsOptionLongName} property.
625         * @return Long name of the 'documents' option.
626         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
627         */
628        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
629                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
630        private java.lang.String getDocumentsOptionLongName()
631        {
632            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "documentsOptionLongName" );
633            assert _p != null : "'documentsOptionLongName' property not found.";
634            return _p;
635        }
636    
637        /**
638         * Gets the value of the {@code documentsOptionShortName} property.
639         * @return Name of the 'documents' option.
640         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
641         */
642        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
643                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
644        private java.lang.String getDocumentsOptionShortName()
645        {
646            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "documentsOptionShortName" );
647            assert _p != null : "'documentsOptionShortName' property not found.";
648            return _p;
649        }
650    
651        /**
652         * Gets the value of the {@code languageOptionLongName} property.
653         * @return Long name of the 'language' option.
654         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
655         */
656        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
657                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
658        private java.lang.String getLanguageOptionLongName()
659        {
660            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "languageOptionLongName" );
661            assert _p != null : "'languageOptionLongName' property not found.";
662            return _p;
663        }
664    
665        /**
666         * Gets the value of the {@code languageOptionShortName} property.
667         * @return Name of the 'language' option.
668         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
669         */
670        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
671                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
672        private java.lang.String getLanguageOptionShortName()
673        {
674            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "languageOptionShortName" );
675            assert _p != null : "'languageOptionShortName' property not found.";
676            return _p;
677        }
678    
679        /**
680         * Gets the value of the {@code moduleLocationOptionLongName} property.
681         * @return Long name of the 'module-location' option.
682         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
683         */
684        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
685                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
686        private java.lang.String getModuleLocationOptionLongName()
687        {
688            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleLocationOptionLongName" );
689            assert _p != null : "'moduleLocationOptionLongName' property not found.";
690            return _p;
691        }
692    
693        /**
694         * Gets the value of the {@code moduleLocationOptionShortName} property.
695         * @return Name of the 'module-location' option.
696         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
697         */
698        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
699                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
700        private java.lang.String getModuleLocationOptionShortName()
701        {
702            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleLocationOptionShortName" );
703            assert _p != null : "'moduleLocationOptionShortName' property not found.";
704            return _p;
705        }
706    
707        /**
708         * Gets the value of the {@code moduleNameOptionLongName} property.
709         * @return Long name of the 'module' option.
710         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
711         */
712        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
713                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
714        private java.lang.String getModuleNameOptionLongName()
715        {
716            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleNameOptionLongName" );
717            assert _p != null : "'moduleNameOptionLongName' property not found.";
718            return _p;
719        }
720    
721        /**
722         * Gets the value of the {@code moduleNameOptionShortName} property.
723         * @return Name of the 'module' option.
724         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
725         */
726        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
727                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
728        private java.lang.String getModuleNameOptionShortName()
729        {
730            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleNameOptionShortName" );
731            assert _p != null : "'moduleNameOptionShortName' property not found.";
732            return _p;
733        }
734    
735        /**
736         * Gets the value of the {@code noClasspathResolutionOptionLongName} property.
737         * @return Long name of the 'no-classpath-resolution' option.
738         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
739         */
740        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
741                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
742        private java.lang.String getNoClasspathResolutionOptionLongName()
743        {
744            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "noClasspathResolutionOptionLongName" );
745            assert _p != null : "'noClasspathResolutionOptionLongName' property not found.";
746            return _p;
747        }
748    
749        /**
750         * Gets the value of the {@code noClasspathResolutionOptionShortName} property.
751         * @return Name of the 'no-classpath-resolution' option.
752         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
753         */
754        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
755                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
756        private java.lang.String getNoClasspathResolutionOptionShortName()
757        {
758            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "noClasspathResolutionOptionShortName" );
759            assert _p != null : "'noClasspathResolutionOptionShortName' property not found.";
760            return _p;
761        }
762    
763        /**
764         * Gets the value of the {@code outputEncodingOptionLongName} property.
765         * @return Long name of the 'output-encoding' option.
766         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
767         */
768        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
769                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
770        private java.lang.String getOutputEncodingOptionLongName()
771        {
772            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "outputEncodingOptionLongName" );
773            assert _p != null : "'outputEncodingOptionLongName' property not found.";
774            return _p;
775        }
776    
777        /**
778         * Gets the value of the {@code outputEncodingOptionShortName} property.
779         * @return Name of the 'output-encoding' option.
780         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
781         */
782        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
783                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
784        private java.lang.String getOutputEncodingOptionShortName()
785        {
786            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "outputEncodingOptionShortName" );
787            assert _p != null : "'outputEncodingOptionShortName' property not found.";
788            return _p;
789        }
790    
791        /**
792         * Gets the value of the {@code profileOptionLongName} property.
793         * @return Long name of the 'profile' option.
794         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
795         */
796        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
797                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
798        private java.lang.String getProfileOptionLongName()
799        {
800            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "profileOptionLongName" );
801            assert _p != null : "'profileOptionLongName' property not found.";
802            return _p;
803        }
804    
805        /**
806         * Gets the value of the {@code profileOptionShortName} property.
807         * @return Name of the 'profile' option.
808         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
809         */
810        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
811                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
812        private java.lang.String getProfileOptionShortName()
813        {
814            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "profileOptionShortName" );
815            assert _p != null : "'profileOptionShortName' property not found.";
816            return _p;
817        }
818    
819        /**
820         * Gets the value of the {@code resourceDirectoryOptionLongName} property.
821         * @return Long name of the 'resource-dir' option.
822         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
823         */
824        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
825                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
826        private java.lang.String getResourceDirectoryOptionLongName()
827        {
828            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "resourceDirectoryOptionLongName" );
829            assert _p != null : "'resourceDirectoryOptionLongName' property not found.";
830            return _p;
831        }
832    
833        /**
834         * Gets the value of the {@code resourceDirectoryOptionShortName} property.
835         * @return Name of the 'resource-dir' option.
836         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
837         */
838        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
839                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
840        private java.lang.String getResourceDirectoryOptionShortName()
841        {
842            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "resourceDirectoryOptionShortName" );
843            assert _p != null : "'resourceDirectoryOptionShortName' property not found.";
844            return _p;
845        }
846    
847        /**
848         * Gets the value of the {@code sourceDirectoryOptionLongName} property.
849         * @return Long name of the 'source-dir' option.
850         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
851         */
852        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
853                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
854        private java.lang.String getSourceDirectoryOptionLongName()
855        {
856            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "sourceDirectoryOptionLongName" );
857            assert _p != null : "'sourceDirectoryOptionLongName' property not found.";
858            return _p;
859        }
860    
861        /**
862         * Gets the value of the {@code sourceDirectoryOptionShortName} property.
863         * @return Name of the 'source-dir' option.
864         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
865         */
866        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
867                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
868        private java.lang.String getSourceDirectoryOptionShortName()
869        {
870            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "sourceDirectoryOptionShortName" );
871            assert _p != null : "'sourceDirectoryOptionShortName' property not found.";
872            return _p;
873        }
874    
875        /**
876         * Gets the value of the {@code templateEncodingOptionLongName} property.
877         * @return Long name of the 'template-encoding' option.
878         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
879         */
880        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
881                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
882        private java.lang.String getTemplateEncodingOptionLongName()
883        {
884            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "templateEncodingOptionLongName" );
885            assert _p != null : "'templateEncodingOptionLongName' property not found.";
886            return _p;
887        }
888    
889        /**
890         * Gets the value of the {@code templateEncodingOptionShortName} property.
891         * @return Name of the 'template-encoding' option.
892         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
893         */
894        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
895                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
896        private java.lang.String getTemplateEncodingOptionShortName()
897        {
898            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "templateEncodingOptionShortName" );
899            assert _p != null : "'templateEncodingOptionShortName' property not found.";
900            return _p;
901        }
902        // </editor-fold>
903        // SECTION-END
904        // SECTION-START[Messages]
905        // <editor-fold defaultstate="collapsed" desc=" Generated Messages ">
906    
907        /**
908         * Gets the text of the {@code applicationTitle} message.
909         * <p><b>Templates</b><br/><table>
910         * <tr><td valign="top">English:</td><td valign="top"><pre>JOMC Version 1.0-alpha-11 Build 2009-12-07T02:58:52+0000</pre></td></tr>
911         * </table></p>
912         * @param locale The locale of the message to return.
913         * @return The text of the {@code applicationTitle} message.
914         *
915         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
916         */
917        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
918                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
919        private String getApplicationTitleMessage( final java.util.Locale locale )
920        {
921            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "applicationTitle", locale,  null );
922            assert _m != null : "'applicationTitle' message not found.";
923            return _m;
924        }
925    
926        /**
927         * Gets the text of the {@code cannotProcess} message.
928         * <p><b>Templates</b><br/><table>
929         * <tr><td valign="top">English:</td><td valign="top"><pre>Cannot process ''{0}'': {1}</pre></td></tr>
930         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Kann ''{0}'' nicht verarbeiten: {1}</pre></td></tr>
931         * </table></p>
932         * @param locale The locale of the message to return.
933         * @param itemInfo Format argument.
934         * @param detailMessage Format argument.
935         * @return The text of the {@code cannotProcess} message.
936         *
937         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
938         */
939        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
940                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
941        private String getCannotProcessMessage( final java.util.Locale locale, final java.lang.String itemInfo, final java.lang.String detailMessage )
942        {
943            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "cannotProcess", locale, new Object[] { itemInfo, detailMessage, null } );
944            assert _m != null : "'cannotProcess' message not found.";
945            return _m;
946        }
947    
948        /**
949         * Gets the text of the {@code classpathElement} message.
950         * <p><b>Templates</b><br/><table>
951         * <tr><td valign="top">English:</td><td valign="top"><pre>Classpath element: ''{0}''</pre></td></tr>
952         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Klassenpfad-Element: ''{0}''</pre></td></tr>
953         * </table></p>
954         * @param locale The locale of the message to return.
955         * @param classpathElement Format argument.
956         * @return The text of the {@code classpathElement} message.
957         *
958         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
959         */
960        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
961                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
962        private String getClasspathElementMessage( final java.util.Locale locale, final java.lang.String classpathElement )
963        {
964            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "classpathElement", locale, new Object[] { classpathElement, null } );
965            assert _m != null : "'classpathElement' message not found.";
966            return _m;
967        }
968    
969        /**
970         * Gets the text of the {@code classpathOption} message.
971         * <p><b>Templates</b><br/><table>
972         * <tr><td valign="top">English:</td><td valign="top"><pre>Classpath elements separated by ''{0}''. If starting with a ''@'' character, a file name of a file holding classpath elements.</pre></td></tr>
973         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Klassenpfad-Elemente mit ''{0}'' getrennt. Wenn mit ''@'' beginnend, Dateiname einer Textdatei mit Klassenpfad-Elementen.</pre></td></tr>
974         * </table></p>
975         * @param locale The locale of the message to return.
976         * @param pathSeparator Format argument.
977         * @return The text of the {@code classpathOption} message.
978         *
979         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
980         */
981        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
982                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
983        private String getClasspathOptionMessage( final java.util.Locale locale, final java.lang.String pathSeparator )
984        {
985            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "classpathOption", locale, new Object[] { pathSeparator, null } );
986            assert _m != null : "'classpathOption' message not found.";
987            return _m;
988        }
989    
990        /**
991         * Gets the text of the {@code classpathOptionArgName} message.
992         * <p><b>Templates</b><br/><table>
993         * <tr><td valign="top">English:</td><td valign="top"><pre>elements</pre></td></tr>
994         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Elemente</pre></td></tr>
995         * </table></p>
996         * @param locale The locale of the message to return.
997         * @return The text of the {@code classpathOptionArgName} message.
998         *
999         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1000         */
1001        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1002                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1003        private String getClasspathOptionArgNameMessage( final java.util.Locale locale )
1004        {
1005            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "classpathOptionArgName", locale,  null );
1006            assert _m != null : "'classpathOptionArgName' message not found.";
1007            return _m;
1008        }
1009    
1010        /**
1011         * Gets the text of the {@code defaultLogLevelInfo} message.
1012         * <p><b>Templates</b><br/><table>
1013         * <tr><td valign="top">English:</td><td valign="top"><pre>Default log level: ''{0}''</pre></td></tr>
1014         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Standard-Protokollierungsstufe: ''{0}''</pre></td></tr>
1015         * </table></p>
1016         * @param locale The locale of the message to return.
1017         * @param defaultLogLevel Format argument.
1018         * @return The text of the {@code defaultLogLevelInfo} message.
1019         *
1020         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1021         */
1022        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1023                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1024        private String getDefaultLogLevelInfoMessage( final java.util.Locale locale, final java.lang.String defaultLogLevel )
1025        {
1026            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "defaultLogLevelInfo", locale, new Object[] { defaultLogLevel, null } );
1027            assert _m != null : "'defaultLogLevelInfo' message not found.";
1028            return _m;
1029        }
1030    
1031        /**
1032         * Gets the text of the {@code documentFile} message.
1033         * <p><b>Templates</b><br/><table>
1034         * <tr><td valign="top">English:</td><td valign="top"><pre>Document file: ''{0}''</pre></td></tr>
1035         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Dokument-Datei: ''{0}''</pre></td></tr>
1036         * </table></p>
1037         * @param locale The locale of the message to return.
1038         * @param documentFile Format argument.
1039         * @return The text of the {@code documentFile} message.
1040         *
1041         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1042         */
1043        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1044                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1045        private String getDocumentFileMessage( final java.util.Locale locale, final java.lang.String documentFile )
1046        {
1047            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "documentFile", locale, new Object[] { documentFile, null } );
1048            assert _m != null : "'documentFile' message not found.";
1049            return _m;
1050        }
1051    
1052        /**
1053         * Gets the text of the {@code documentsOption} message.
1054         * <p><b>Templates</b><br/><table>
1055         * <tr><td valign="top">English:</td><td valign="top"><pre>Document filenames separated by ''{0}''. If starting with a ''@'' character, a file name of a file holding document filenames.</pre></td></tr>
1056         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Dokument-Dateinamen mit ''{0}'' getrennt. Wenn mit ''@'' beginnend, Dateiname einer Textdatei mit Dokument-Dateinamen.</pre></td></tr>
1057         * </table></p>
1058         * @param locale The locale of the message to return.
1059         * @param pathSeparator Format argument.
1060         * @return The text of the {@code documentsOption} message.
1061         *
1062         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1063         */
1064        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1065                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1066        private String getDocumentsOptionMessage( final java.util.Locale locale, final java.lang.String pathSeparator )
1067        {
1068            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "documentsOption", locale, new Object[] { pathSeparator, null } );
1069            assert _m != null : "'documentsOption' message not found.";
1070            return _m;
1071        }
1072    
1073        /**
1074         * Gets the text of the {@code documentsOptionArgName} message.
1075         * <p><b>Templates</b><br/><table>
1076         * <tr><td valign="top">English:</td><td valign="top"><pre>files</pre></td></tr>
1077         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Dateien</pre></td></tr>
1078         * </table></p>
1079         * @param locale The locale of the message to return.
1080         * @return The text of the {@code documentsOptionArgName} message.
1081         *
1082         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1083         */
1084        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1085                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1086        private String getDocumentsOptionArgNameMessage( final java.util.Locale locale )
1087        {
1088            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "documentsOptionArgName", locale,  null );
1089            assert _m != null : "'documentsOptionArgName' message not found.";
1090            return _m;
1091        }
1092    
1093        /**
1094         * Gets the text of the {@code invalidModel} message.
1095         * <p><b>Templates</b><br/><table>
1096         * <tr><td valign="top">English:</td><td valign="top"><pre>Invalid model.</pre></td></tr>
1097         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ung&uuml;ltiges Modell.</pre></td></tr>
1098         * </table></p>
1099         * @param locale The locale of the message to return.
1100         * @return The text of the {@code invalidModel} message.
1101         *
1102         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1103         */
1104        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1105                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1106        private String getInvalidModelMessage( final java.util.Locale locale )
1107        {
1108            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "invalidModel", locale,  null );
1109            assert _m != null : "'invalidModel' message not found.";
1110            return _m;
1111        }
1112    
1113        /**
1114         * Gets the text of the {@code languageOption} message.
1115         * <p><b>Templates</b><br/><table>
1116         * <tr><td valign="top">English:</td><td valign="top"><pre>Default language (defaults to ''{0}'').</pre></td></tr>
1117         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Standard-Sprache (Standard ''{0}'').</pre></td></tr>
1118         * </table></p>
1119         * @param locale The locale of the message to return.
1120         * @param defaultLanguage Format argument.
1121         * @return The text of the {@code languageOption} message.
1122         *
1123         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1124         */
1125        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1126                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1127        private String getLanguageOptionMessage( final java.util.Locale locale, final java.lang.String defaultLanguage )
1128        {
1129            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "languageOption", locale, new Object[] { defaultLanguage, null } );
1130            assert _m != null : "'languageOption' message not found.";
1131            return _m;
1132        }
1133    
1134        /**
1135         * Gets the text of the {@code languageOptionArgName} message.
1136         * <p><b>Templates</b><br/><table>
1137         * <tr><td valign="top">English:</td><td valign="top"><pre>language</pre></td></tr>
1138         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Sprache</pre></td></tr>
1139         * </table></p>
1140         * @param locale The locale of the message to return.
1141         * @param defaultLanguage Format argument.
1142         * @return The text of the {@code languageOptionArgName} message.
1143         *
1144         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1145         */
1146        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1147                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1148        private String getLanguageOptionArgNameMessage( final java.util.Locale locale, final java.lang.String defaultLanguage )
1149        {
1150            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "languageOptionArgName", locale, new Object[] { defaultLanguage, null } );
1151            assert _m != null : "'languageOptionArgName' message not found.";
1152            return _m;
1153        }
1154    
1155        /**
1156         * Gets the text of the {@code longDescription} message.
1157         * <p><b>Templates</b><br/><table>
1158         * <tr><td valign="top">English:</td><td valign="top"><pre>Example:
1159         *   jomc generate-java-bundles -sd /tmp/src  -rd /tmp/rsrc \
1160         *                              -df examples/xml/jomc-cli.xml \
1161         *                              -mn &quot;JOMC CLI&quot; -v</pre></td></tr>
1162         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Beispiel:
1163         *   jomc generate-java-bundles -sd /tmp/src -rd /tmp/rsrc \
1164         *                              -df examples/xml/jomc-cli.xml \
1165         *                              -mn &quot;JOMC CLI&quot; -v</pre></td></tr>
1166         * </table></p>
1167         * @param locale The locale of the message to return.
1168         * @return The text of the {@code longDescription} message.
1169         *
1170         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1171         */
1172        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1173                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1174        private String getLongDescriptionMessage( final java.util.Locale locale )
1175        {
1176            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "longDescription", locale,  null );
1177            assert _m != null : "'longDescription' message not found.";
1178            return _m;
1179        }
1180    
1181        /**
1182         * Gets the text of the {@code missingModule} message.
1183         * <p><b>Templates</b><br/><table>
1184         * <tr><td valign="top">English:</td><td valign="top"><pre>Module ''{0}'' not found.</pre></td></tr>
1185         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Modul ''{0}'' nicht gefunden.</pre></td></tr>
1186         * </table></p>
1187         * @param locale The locale of the message to return.
1188         * @param moduleName Format argument.
1189         * @return The text of the {@code missingModule} message.
1190         *
1191         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1192         */
1193        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1194                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1195        private String getMissingModuleMessage( final java.util.Locale locale, final java.lang.String moduleName )
1196        {
1197            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "missingModule", locale, new Object[] { moduleName, null } );
1198            assert _m != null : "'missingModule' message not found.";
1199            return _m;
1200        }
1201    
1202        /**
1203         * Gets the text of the {@code moduleLocationOption} message.
1204         * <p><b>Templates</b><br/><table>
1205         * <tr><td valign="top">English:</td><td valign="top"><pre>Location of classpath modules.</pre></td></tr>
1206         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ort der Klassenpfad-Module.</pre></td></tr>
1207         * </table></p>
1208         * @param locale The locale of the message to return.
1209         * @return The text of the {@code moduleLocationOption} message.
1210         *
1211         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1212         */
1213        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1214                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1215        private String getModuleLocationOptionMessage( final java.util.Locale locale )
1216        {
1217            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleLocationOption", locale,  null );
1218            assert _m != null : "'moduleLocationOption' message not found.";
1219            return _m;
1220        }
1221    
1222        /**
1223         * Gets the text of the {@code moduleLocationOptionArgName} message.
1224         * <p><b>Templates</b><br/><table>
1225         * <tr><td valign="top">English:</td><td valign="top"><pre>location</pre></td></tr>
1226         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ort</pre></td></tr>
1227         * </table></p>
1228         * @param locale The locale of the message to return.
1229         * @return The text of the {@code moduleLocationOptionArgName} message.
1230         *
1231         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1232         */
1233        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1234                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1235        private String getModuleLocationOptionArgNameMessage( final java.util.Locale locale )
1236        {
1237            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleLocationOptionArgName", locale,  null );
1238            assert _m != null : "'moduleLocationOptionArgName' message not found.";
1239            return _m;
1240        }
1241    
1242        /**
1243         * Gets the text of the {@code moduleNameOption} message.
1244         * <p><b>Templates</b><br/><table>
1245         * <tr><td valign="top">English:</td><td valign="top"><pre>Name of the module to process.</pre></td></tr>
1246         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name des zu verarbeitenden Moduls.</pre></td></tr>
1247         * </table></p>
1248         * @param locale The locale of the message to return.
1249         * @return The text of the {@code moduleNameOption} message.
1250         *
1251         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1252         */
1253        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1254                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1255        private String getModuleNameOptionMessage( final java.util.Locale locale )
1256        {
1257            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleNameOption", locale,  null );
1258            assert _m != null : "'moduleNameOption' message not found.";
1259            return _m;
1260        }
1261    
1262        /**
1263         * Gets the text of the {@code moduleNameOptionArgName} message.
1264         * <p><b>Templates</b><br/><table>
1265         * <tr><td valign="top">English:</td><td valign="top"><pre>name</pre></td></tr>
1266         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name</pre></td></tr>
1267         * </table></p>
1268         * @param locale The locale of the message to return.
1269         * @return The text of the {@code moduleNameOptionArgName} message.
1270         *
1271         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1272         */
1273        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1274                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1275        private String getModuleNameOptionArgNameMessage( final java.util.Locale locale )
1276        {
1277            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleNameOptionArgName", locale,  null );
1278            assert _m != null : "'moduleNameOptionArgName' message not found.";
1279            return _m;
1280        }
1281    
1282        /**
1283         * Gets the text of the {@code modulesReport} message.
1284         * <p><b>Templates</b><br/><table>
1285         * <tr><td valign="top">English:</td><td valign="top"><pre>Modules</pre></td></tr>
1286         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Module</pre></td></tr>
1287         * </table></p>
1288         * @param locale The locale of the message to return.
1289         * @return The text of the {@code modulesReport} message.
1290         *
1291         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1292         */
1293        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1294                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1295        private String getModulesReportMessage( final java.util.Locale locale )
1296        {
1297            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "modulesReport", locale,  null );
1298            assert _m != null : "'modulesReport' message not found.";
1299            return _m;
1300        }
1301    
1302        /**
1303         * Gets the text of the {@code noClasspathResolutionOption} message.
1304         * <p><b>Templates</b><br/><table>
1305         * <tr><td valign="top">English:</td><td valign="top"><pre>Do not perform classpath resolution.</pre></td></tr>
1306         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Keine Klassenpfad-Aufl&ouml;sung durchf&uuml;hren.</pre></td></tr>
1307         * </table></p>
1308         * @param locale The locale of the message to return.
1309         * @return The text of the {@code noClasspathResolutionOption} message.
1310         *
1311         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1312         */
1313        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1314                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1315        private String getNoClasspathResolutionOptionMessage( final java.util.Locale locale )
1316        {
1317            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "noClasspathResolutionOption", locale,  null );
1318            assert _m != null : "'noClasspathResolutionOption' message not found.";
1319            return _m;
1320        }
1321    
1322        /**
1323         * Gets the text of the {@code outputEncodingOption} message.
1324         * <p><b>Templates</b><br/><table>
1325         * <tr><td valign="top">English:</td><td valign="top"><pre>Output encoding.</pre></td></tr>
1326         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ausgabekodierung.</pre></td></tr>
1327         * </table></p>
1328         * @param locale The locale of the message to return.
1329         * @return The text of the {@code outputEncodingOption} message.
1330         *
1331         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1332         */
1333        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1334                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1335        private String getOutputEncodingOptionMessage( final java.util.Locale locale )
1336        {
1337            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "outputEncodingOption", locale,  null );
1338            assert _m != null : "'outputEncodingOption' message not found.";
1339            return _m;
1340        }
1341    
1342        /**
1343         * Gets the text of the {@code outputEncodingOptionArgName} message.
1344         * <p><b>Templates</b><br/><table>
1345         * <tr><td valign="top">English:</td><td valign="top"><pre>encoding</pre></td></tr>
1346         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Kodierung</pre></td></tr>
1347         * </table></p>
1348         * @param locale The locale of the message to return.
1349         * @return The text of the {@code outputEncodingOptionArgName} message.
1350         *
1351         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1352         */
1353        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1354                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1355        private String getOutputEncodingOptionArgNameMessage( final java.util.Locale locale )
1356        {
1357            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "outputEncodingOptionArgName", locale,  null );
1358            assert _m != null : "'outputEncodingOptionArgName' message not found.";
1359            return _m;
1360        }
1361    
1362        /**
1363         * Gets the text of the {@code profileOption} message.
1364         * <p><b>Templates</b><br/><table>
1365         * <tr><td valign="top">English:</td><td valign="top"><pre>Templates profile to use.</pre></td></tr>
1366         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Zu verwendendes Vorlagen-Profil.</pre></td></tr>
1367         * </table></p>
1368         * @param locale The locale of the message to return.
1369         * @return The text of the {@code profileOption} message.
1370         *
1371         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1372         */
1373        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1374                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1375        private String getProfileOptionMessage( final java.util.Locale locale )
1376        {
1377            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "profileOption", locale,  null );
1378            assert _m != null : "'profileOption' message not found.";
1379            return _m;
1380        }
1381    
1382        /**
1383         * Gets the text of the {@code profileOptionArgName} message.
1384         * <p><b>Templates</b><br/><table>
1385         * <tr><td valign="top">English:</td><td valign="top"><pre>profile</pre></td></tr>
1386         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Profil</pre></td></tr>
1387         * </table></p>
1388         * @param locale The locale of the message to return.
1389         * @return The text of the {@code profileOptionArgName} message.
1390         *
1391         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1392         */
1393        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1394                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1395        private String getProfileOptionArgNameMessage( final java.util.Locale locale )
1396        {
1397            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "profileOptionArgName", locale,  null );
1398            assert _m != null : "'profileOptionArgName' message not found.";
1399            return _m;
1400        }
1401    
1402        /**
1403         * Gets the text of the {@code resourceDirectoryOption} message.
1404         * <p><b>Templates</b><br/><table>
1405         * <tr><td valign="top">English:</td><td valign="top"><pre>Directory to write resource files to.</pre></td></tr>
1406         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Verzeichnis in das Ressource-Dateien geschrieben werden sollen.</pre></td></tr>
1407         * </table></p>
1408         * @param locale The locale of the message to return.
1409         * @return The text of the {@code resourceDirectoryOption} message.
1410         *
1411         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1412         */
1413        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1414                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1415        private String getResourceDirectoryOptionMessage( final java.util.Locale locale )
1416        {
1417            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "resourceDirectoryOption", locale,  null );
1418            assert _m != null : "'resourceDirectoryOption' message not found.";
1419            return _m;
1420        }
1421    
1422        /**
1423         * Gets the text of the {@code resourceDirectoryOptionArgName} message.
1424         * <p><b>Templates</b><br/><table>
1425         * <tr><td valign="top">English:</td><td valign="top"><pre>directory</pre></td></tr>
1426         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Verzeichnis</pre></td></tr>
1427         * </table></p>
1428         * @param locale The locale of the message to return.
1429         * @return The text of the {@code resourceDirectoryOptionArgName} message.
1430         *
1431         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1432         */
1433        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1434                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1435        private String getResourceDirectoryOptionArgNameMessage( final java.util.Locale locale )
1436        {
1437            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "resourceDirectoryOptionArgName", locale,  null );
1438            assert _m != null : "'resourceDirectoryOptionArgName' message not found.";
1439            return _m;
1440        }
1441    
1442        /**
1443         * Gets the text of the {@code separator} message.
1444         * <p><b>Templates</b><br/><table>
1445         * <tr><td valign="top">English:</td><td valign="top"><pre>--------------------------------------------------------------------------------</pre></td></tr>
1446         * </table></p>
1447         * @param locale The locale of the message to return.
1448         * @return The text of the {@code separator} message.
1449         *
1450         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1451         */
1452        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1453                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1454        private String getSeparatorMessage( final java.util.Locale locale )
1455        {
1456            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "separator", locale,  null );
1457            assert _m != null : "'separator' message not found.";
1458            return _m;
1459        }
1460    
1461        /**
1462         * Gets the text of the {@code shortDescription} message.
1463         * <p><b>Templates</b><br/><table>
1464         * <tr><td valign="top">English:</td><td valign="top"><pre>Generates Java resource bundles.</pre></td></tr>
1465         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Generiert Java Ressource-B&uuml;ndel.</pre></td></tr>
1466         * </table></p>
1467         * @param locale The locale of the message to return.
1468         * @return The text of the {@code shortDescription} message.
1469         *
1470         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1471         */
1472        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1473                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1474        private String getShortDescriptionMessage( final java.util.Locale locale )
1475        {
1476            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "shortDescription", locale,  null );
1477            assert _m != null : "'shortDescription' message not found.";
1478            return _m;
1479        }
1480    
1481        /**
1482         * Gets the text of the {@code sourceDirectoryOption} message.
1483         * <p><b>Templates</b><br/><table>
1484         * <tr><td valign="top">English:</td><td valign="top"><pre>Directory to write source files to.</pre></td></tr>
1485         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Verzeichnis in das Quelltext-Dateien geschrieben werden sollen.</pre></td></tr>
1486         * </table></p>
1487         * @param locale The locale of the message to return.
1488         * @return The text of the {@code sourceDirectoryOption} message.
1489         *
1490         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1491         */
1492        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1493                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1494        private String getSourceDirectoryOptionMessage( final java.util.Locale locale )
1495        {
1496            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "sourceDirectoryOption", locale,  null );
1497            assert _m != null : "'sourceDirectoryOption' message not found.";
1498            return _m;
1499        }
1500    
1501        /**
1502         * Gets the text of the {@code sourceDirectoryOptionArgName} message.
1503         * <p><b>Templates</b><br/><table>
1504         * <tr><td valign="top">English:</td><td valign="top"><pre>directory</pre></td></tr>
1505         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Verzeichnis</pre></td></tr>
1506         * </table></p>
1507         * @param locale The locale of the message to return.
1508         * @return The text of the {@code sourceDirectoryOptionArgName} message.
1509         *
1510         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1511         */
1512        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1513                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1514        private String getSourceDirectoryOptionArgNameMessage( final java.util.Locale locale )
1515        {
1516            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "sourceDirectoryOptionArgName", locale,  null );
1517            assert _m != null : "'sourceDirectoryOptionArgName' message not found.";
1518            return _m;
1519        }
1520    
1521        /**
1522         * Gets the text of the {@code startingModuleProcessing} message.
1523         * <p><b>Templates</b><br/><table>
1524         * <tr><td valign="top">English:</td><td valign="top"><pre>Executing command {0} with module ''{1}'' ...</pre></td></tr>
1525         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>F&uuml;hrt Befehl {0} mit Modul ''{1}'' aus ... </pre></td></tr>
1526         * </table></p>
1527         * @param locale The locale of the message to return.
1528         * @param toolName Format argument.
1529         * @param moduleName Format argument.
1530         * @return The text of the {@code startingModuleProcessing} message.
1531         *
1532         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1533         */
1534        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1535                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1536        private String getStartingModuleProcessingMessage( final java.util.Locale locale, final java.lang.String toolName, final java.lang.String moduleName )
1537        {
1538            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "startingModuleProcessing", locale, new Object[] { toolName, moduleName, null } );
1539            assert _m != null : "'startingModuleProcessing' message not found.";
1540            return _m;
1541        }
1542    
1543        /**
1544         * Gets the text of the {@code startingProcessing} message.
1545         * <p><b>Templates</b><br/><table>
1546         * <tr><td valign="top">English:</td><td valign="top"><pre>Executing command {0} ...</pre></td></tr>
1547         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>F&uuml;hrt Befehl {0} aus ... </pre></td></tr>
1548         * </table></p>
1549         * @param locale The locale of the message to return.
1550         * @param toolName Format argument.
1551         * @return The text of the {@code startingProcessing} message.
1552         *
1553         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1554         */
1555        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1556                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1557        private String getStartingProcessingMessage( final java.util.Locale locale, final java.lang.String toolName )
1558        {
1559            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "startingProcessing", locale, new Object[] { toolName, null } );
1560            assert _m != null : "'startingProcessing' message not found.";
1561            return _m;
1562        }
1563    
1564        /**
1565         * Gets the text of the {@code templateEncodingOption} message.
1566         * <p><b>Templates</b><br/><table>
1567         * <tr><td valign="top">English:</td><td valign="top"><pre>Template encoding.</pre></td></tr>
1568         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Vorlagenkodierung.</pre></td></tr>
1569         * </table></p>
1570         * @param locale The locale of the message to return.
1571         * @return The text of the {@code templateEncodingOption} message.
1572         *
1573         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1574         */
1575        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1576                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1577        private String getTemplateEncodingOptionMessage( final java.util.Locale locale )
1578        {
1579            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "templateEncodingOption", locale,  null );
1580            assert _m != null : "'templateEncodingOption' message not found.";
1581            return _m;
1582        }
1583    
1584        /**
1585         * Gets the text of the {@code templateEncodingOptionArgName} message.
1586         * <p><b>Templates</b><br/><table>
1587         * <tr><td valign="top">English:</td><td valign="top"><pre>encoding</pre></td></tr>
1588         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Kodierung</pre></td></tr>
1589         * </table></p>
1590         * @param locale The locale of the message to return.
1591         * @return The text of the {@code templateEncodingOptionArgName} message.
1592         *
1593         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1594         */
1595        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1596                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1597        private String getTemplateEncodingOptionArgNameMessage( final java.util.Locale locale )
1598        {
1599            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "templateEncodingOptionArgName", locale,  null );
1600            assert _m != null : "'templateEncodingOptionArgName' message not found.";
1601            return _m;
1602        }
1603    
1604        /**
1605         * Gets the text of the {@code toolFailure} message.
1606         * <p><b>Templates</b><br/><table>
1607         * <tr><td valign="top">English:</td><td valign="top"><pre>{0} failure.</pre></td></tr>
1608         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>{0} fehlgeschlagen.</pre></td></tr>
1609         * </table></p>
1610         * @param locale The locale of the message to return.
1611         * @param toolName Format argument.
1612         * @return The text of the {@code toolFailure} message.
1613         *
1614         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1615         */
1616        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1617                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1618        private String getToolFailureMessage( final java.util.Locale locale, final java.lang.String toolName )
1619        {
1620            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "toolFailure", locale, new Object[] { toolName, null } );
1621            assert _m != null : "'toolFailure' message not found.";
1622            return _m;
1623        }
1624    
1625        /**
1626         * Gets the text of the {@code toolSuccess} message.
1627         * <p><b>Templates</b><br/><table>
1628         * <tr><td valign="top">English:</td><td valign="top"><pre>{0} successful.</pre></td></tr>
1629         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>{0} erfolgreich.</pre></td></tr>
1630         * </table></p>
1631         * @param locale The locale of the message to return.
1632         * @param toolName Format argument.
1633         * @return The text of the {@code toolSuccess} message.
1634         *
1635         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1636         */
1637        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1638                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1639        private String getToolSuccessMessage( final java.util.Locale locale, final java.lang.String toolName )
1640        {
1641            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "toolSuccess", locale, new Object[] { toolName, null } );
1642            assert _m != null : "'toolSuccess' message not found.";
1643            return _m;
1644        }
1645        // </editor-fold>
1646        // SECTION-END
1647    }