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: MergeModulesCommand.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.Arrays;
041    import java.util.Iterator;
042    import java.util.List;
043    import java.util.logging.Level;
044    import javax.xml.bind.JAXBContext;
045    import javax.xml.bind.JAXBElement;
046    import javax.xml.bind.Marshaller;
047    import javax.xml.bind.util.JAXBResult;
048    import javax.xml.bind.util.JAXBSource;
049    import javax.xml.transform.Transformer;
050    import javax.xml.transform.TransformerFactory;
051    import javax.xml.transform.stream.StreamSource;
052    import javax.xml.validation.Schema;
053    import org.apache.commons.cli.CommandLine;
054    import org.apache.commons.cli.Option;
055    import org.apache.commons.cli.Options;
056    import org.jomc.model.ModelObjectValidationReport;
057    import org.jomc.model.Module;
058    import org.jomc.model.Modules;
059    import org.jomc.model.ObjectFactory;
060    
061    // SECTION-START[Documentation]
062    // <editor-fold defaultstate="collapsed" desc=" Generated Documentation ">
063    /**
064     * Command line interface for merging modules.
065     * <p><b>Specifications</b><ul>
066     * <li>{@code org.jomc.cli.Command} {@code 1.0} {@code Multiton}</li>
067     * </ul></p>
068     * <p><b>Properties</b><ul>
069     * <li>"{@link #getAbbreviatedCommandName abbreviatedCommandName}"
070     * <blockquote>Property of type {@code java.lang.String}.
071     * <p>Abbreviated name of the command.</p>
072     * </blockquote></li>
073     * <li>"{@link #getClasspathOptionLongName classpathOptionLongName}"
074     * <blockquote>Property of type {@code java.lang.String}.
075     * <p>Long name of the 'classpath' option.</p>
076     * </blockquote></li>
077     * <li>"{@link #getClasspathOptionShortName classpathOptionShortName}"
078     * <blockquote>Property of type {@code java.lang.String}.
079     * <p>Name of the 'classpath' option.</p>
080     * </blockquote></li>
081     * <li>"{@link #getCommandName commandName}"
082     * <blockquote>Property of type {@code java.lang.String}.
083     * <p>Name of the command.</p>
084     * </blockquote></li>
085     * <li>"{@link #getDocumentOptionLongName documentOptionLongName}"
086     * <blockquote>Property of type {@code java.lang.String}.
087     * <p>Long name of the 'document' option.</p>
088     * </blockquote></li>
089     * <li>"{@link #getDocumentOptionShortName documentOptionShortName}"
090     * <blockquote>Property of type {@code java.lang.String}.
091     * <p>Name of the 'document' option.</p>
092     * </blockquote></li>
093     * <li>"{@link #getDocumentsOptionLongName documentsOptionLongName}"
094     * <blockquote>Property of type {@code java.lang.String}.
095     * <p>Long name of the 'documents' option.</p>
096     * </blockquote></li>
097     * <li>"{@link #getDocumentsOptionShortName documentsOptionShortName}"
098     * <blockquote>Property of type {@code java.lang.String}.
099     * <p>Name of the 'documents' option.</p>
100     * </blockquote></li>
101     * <li>"{@link #getModuleExcludesOptionLongName moduleExcludesOptionLongName}"
102     * <blockquote>Property of type {@code java.lang.String}.
103     * <p>Long name of the 'module-excludes' option.</p>
104     * </blockquote></li>
105     * <li>"{@link #getModuleExcludesOptionShortName moduleExcludesOptionShortName}"
106     * <blockquote>Property of type {@code java.lang.String}.
107     * <p>Name of the 'module-excludes' option.</p>
108     * </blockquote></li>
109     * <li>"{@link #getModuleIncludesOptionLongName moduleIncludesOptionLongName}"
110     * <blockquote>Property of type {@code java.lang.String}.
111     * <p>Long name of the 'module-includes' option.</p>
112     * </blockquote></li>
113     * <li>"{@link #getModuleIncludesOptionShortName moduleIncludesOptionShortName}"
114     * <blockquote>Property of type {@code java.lang.String}.
115     * <p>Name of the 'module-includes' option.</p>
116     * </blockquote></li>
117     * <li>"{@link #getModuleLocationOptionLongName moduleLocationOptionLongName}"
118     * <blockquote>Property of type {@code java.lang.String}.
119     * <p>Long name of the 'module-location' option.</p>
120     * </blockquote></li>
121     * <li>"{@link #getModuleLocationOptionShortName moduleLocationOptionShortName}"
122     * <blockquote>Property of type {@code java.lang.String}.
123     * <p>Name of the 'module-location' option.</p>
124     * </blockquote></li>
125     * <li>"{@link #getModuleNameOptionLongName moduleNameOptionLongName}"
126     * <blockquote>Property of type {@code java.lang.String}.
127     * <p>Long name of the 'module' option.</p>
128     * </blockquote></li>
129     * <li>"{@link #getModuleNameOptionShortName moduleNameOptionShortName}"
130     * <blockquote>Property of type {@code java.lang.String}.
131     * <p>Name of the 'module' option.</p>
132     * </blockquote></li>
133     * <li>"{@link #getModuleVendorOptionLongName moduleVendorOptionLongName}"
134     * <blockquote>Property of type {@code java.lang.String}.
135     * <p>Long name of the 'module-vendor' option.</p>
136     * </blockquote></li>
137     * <li>"{@link #getModuleVendorOptionShortName moduleVendorOptionShortName}"
138     * <blockquote>Property of type {@code java.lang.String}.
139     * <p>Name of the 'module-vendor' option.</p>
140     * </blockquote></li>
141     * <li>"{@link #getModuleVersionOptionLongName moduleVersionOptionLongName}"
142     * <blockquote>Property of type {@code java.lang.String}.
143     * <p>Long name of the 'module-version' option.</p>
144     * </blockquote></li>
145     * <li>"{@link #getModuleVersionOptionShortName moduleVersionOptionShortName}"
146     * <blockquote>Property of type {@code java.lang.String}.
147     * <p>Name of the 'module-version' option.</p>
148     * </blockquote></li>
149     * <li>"{@link #getNoClasspathResolutionOptionLongName noClasspathResolutionOptionLongName}"
150     * <blockquote>Property of type {@code java.lang.String}.
151     * <p>Long name of the 'no-classpath-resolution' option.</p>
152     * </blockquote></li>
153     * <li>"{@link #getNoClasspathResolutionOptionShortName noClasspathResolutionOptionShortName}"
154     * <blockquote>Property of type {@code java.lang.String}.
155     * <p>Name of the 'no-classpath-resolution' option.</p>
156     * </blockquote></li>
157     * <li>"{@link #getStylesheetOptionLongName stylesheetOptionLongName}"
158     * <blockquote>Property of type {@code java.lang.String}.
159     * <p>Long name of the 'xslt' option.</p>
160     * </blockquote></li>
161     * <li>"{@link #getStylesheetOptionShortName stylesheetOptionShortName}"
162     * <blockquote>Property of type {@code java.lang.String}.
163     * <p>Name of the 'xslt' option.</p>
164     * </blockquote></li>
165     * </ul></p>
166     * <p><b>Dependencies</b><ul>
167     * <li>"{@link #getLocale Locale}"<blockquote>
168     * Dependency on {@code java.util.Locale} at specification level 1.1 bound to an instance.</blockquote></li>
169     * </ul></p>
170     * <p><b>Messages</b><ul>
171     * <li>"{@link #getApplicationTitleMessage applicationTitle}"<table>
172     * <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>
173     * </table>
174     * <li>"{@link #getCannotProcessMessage cannotProcess}"<table>
175     * <tr><td valign="top">English:</td><td valign="top"><pre>Cannot process ''{0}'': {1}</pre></td></tr>
176     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Kann ''{0}'' nicht verarbeiten: {1}</pre></td></tr>
177     * </table>
178     * <li>"{@link #getClasspathElementMessage classpathElement}"<table>
179     * <tr><td valign="top">English:</td><td valign="top"><pre>Classpath element: ''{0}''</pre></td></tr>
180     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Klassenpfad-Element: ''{0}''</pre></td></tr>
181     * </table>
182     * <li>"{@link #getClasspathOptionMessage classpathOption}"<table>
183     * <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>
184     * <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>
185     * </table>
186     * <li>"{@link #getClasspathOptionArgNameMessage classpathOptionArgName}"<table>
187     * <tr><td valign="top">English:</td><td valign="top"><pre>elements</pre></td></tr>
188     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Elemente</pre></td></tr>
189     * </table>
190     * <li>"{@link #getDefaultLogLevelInfoMessage defaultLogLevelInfo}"<table>
191     * <tr><td valign="top">English:</td><td valign="top"><pre>Default log level: ''{0}''</pre></td></tr>
192     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Standard-Protokollierungsstufe: ''{0}''</pre></td></tr>
193     * </table>
194     * <li>"{@link #getDocumentFileMessage documentFile}"<table>
195     * <tr><td valign="top">English:</td><td valign="top"><pre>Document file: ''{0}''</pre></td></tr>
196     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Dokument-Datei: ''{0}''</pre></td></tr>
197     * </table>
198     * <li>"{@link #getDocumentOptionMessage documentOption}"<table>
199     * <tr><td valign="top">English:</td><td valign="top"><pre>Name of the file to write the merged module to.</pre></td></tr>
200     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name der Datei in die das zusammengef&uuml;gte Modul geschrieben werden soll.</pre></td></tr>
201     * </table>
202     * <li>"{@link #getDocumentOptionArgNameMessage documentOptionArgName}"<table>
203     * <tr><td valign="top">English:</td><td valign="top"><pre>file</pre></td></tr>
204     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Datei</pre></td></tr>
205     * </table>
206     * <li>"{@link #getDocumentsOptionMessage documentsOption}"<table>
207     * <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>
208     * <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>
209     * </table>
210     * <li>"{@link #getDocumentsOptionArgNameMessage documentsOptionArgName}"<table>
211     * <tr><td valign="top">English:</td><td valign="top"><pre>files</pre></td></tr>
212     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Dateien</pre></td></tr>
213     * </table>
214     * <li>"{@link #getExcludingModuleMessage excludingModule}"<table>
215     * <tr><td valign="top">English:</td><td valign="top"><pre>Excluding module ''{0}''.</pre></td></tr>
216     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Schlie&szlig;t Modul ''{0}'' aus.</pre></td></tr>
217     * </table>
218     * <li>"{@link #getIncludingModuleMessage includingModule}"<table>
219     * <tr><td valign="top">English:</td><td valign="top"><pre>Including module ''{0}''.</pre></td></tr>
220     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Schlie&szlig;t Modul ''{0}'' ein.</pre></td></tr>
221     * </table>
222     * <li>"{@link #getInvalidModelMessage invalidModel}"<table>
223     * <tr><td valign="top">English:</td><td valign="top"><pre>Invalid model.</pre></td></tr>
224     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ung&uuml;ltiges Modell.</pre></td></tr>
225     * </table>
226     * <li>"{@link #getLongDescriptionMessage longDescription}"<table>
227     * <tr><td valign="top">English:</td><td valign="top"><pre>Example:
228     *   jomc merge-modules -df examples/xml/jomc-cli.xml \
229     *                      -xs examples/xslt/relocate-classes.xslt \
230     *                      -mn &quot;Merged Name&quot; -d /tmp/jomc.xml -v</pre></td></tr>
231     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Beispiel:
232     *   jomc merge-modules -df examples/xml/jomc-cli.xml \
233     *                      -xs examples/xslt/relocate-classes.xslt \
234     *                      -mn &quot;Merged Name&quot; -d /tmp/jomc.xml -v</pre></td></tr>
235     * </table>
236     * <li>"{@link #getMissingModuleMessage missingModule}"<table>
237     * <tr><td valign="top">English:</td><td valign="top"><pre>Module ''{0}'' not found.</pre></td></tr>
238     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Modul ''{0}'' nicht gefunden.</pre></td></tr>
239     * </table>
240     * <li>"{@link #getModuleExcludesOptionMessage moduleExcludesOption}"<table>
241     * <tr><td valign="top">English:</td><td valign="top"><pre>Module names separated by '':'' of modules to exclude.</pre></td></tr>
242     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Modul-Namen auszuschlie&szlig;ender Module mit '':'' getrennt.</pre></td></tr>
243     * </table>
244     * <li>"{@link #getModuleExcludesOptionArgNameMessage moduleExcludesOptionArgName}"<table>
245     * <tr><td valign="top">English:</td><td valign="top"><pre>names</pre></td></tr>
246     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Namen</pre></td></tr>
247     * </table>
248     * <li>"{@link #getModuleIncludesOptionMessage moduleIncludesOption}"<table>
249     * <tr><td valign="top">English:</td><td valign="top"><pre>Module names separated by '':'' of modules to include.</pre></td></tr>
250     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Modul-Namen einzuschlie&szlig;ender Module mit '':'' getrennt.</pre></td></tr>
251     * </table>
252     * <li>"{@link #getModuleIncludesOptionArgNameMessage moduleIncludesOptionArgName}"<table>
253     * <tr><td valign="top">English:</td><td valign="top"><pre>names</pre></td></tr>
254     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Namen</pre></td></tr>
255     * </table>
256     * <li>"{@link #getModuleLocationOptionMessage moduleLocationOption}"<table>
257     * <tr><td valign="top">English:</td><td valign="top"><pre>Location of classpath modules.</pre></td></tr>
258     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ort der Klassenpfad-Module.</pre></td></tr>
259     * </table>
260     * <li>"{@link #getModuleLocationOptionArgNameMessage moduleLocationOptionArgName}"<table>
261     * <tr><td valign="top">English:</td><td valign="top"><pre>location</pre></td></tr>
262     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ort</pre></td></tr>
263     * </table>
264     * <li>"{@link #getModuleNameOptionMessage moduleNameOption}"<table>
265     * <tr><td valign="top">English:</td><td valign="top"><pre>Name of the module to process.</pre></td></tr>
266     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name des zu verarbeitenden Moduls.</pre></td></tr>
267     * </table>
268     * <li>"{@link #getModuleNameOptionArgNameMessage moduleNameOptionArgName}"<table>
269     * <tr><td valign="top">English:</td><td valign="top"><pre>name</pre></td></tr>
270     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name</pre></td></tr>
271     * </table>
272     * <li>"{@link #getModuleVendorOptionMessage moduleVendorOption}"<table>
273     * <tr><td valign="top">English:</td><td valign="top"><pre>Vendor of the merged module.</pre></td></tr>
274     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Hersteller des Ergebnis-Moduls.</pre></td></tr>
275     * </table>
276     * <li>"{@link #getModuleVendorOptionArgNameMessage moduleVendorOptionArgName}"<table>
277     * <tr><td valign="top">English:</td><td valign="top"><pre>vendor</pre></td></tr>
278     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Hersteller</pre></td></tr>
279     * </table>
280     * <li>"{@link #getModuleVersionOptionMessage moduleVersionOption}"<table>
281     * <tr><td valign="top">English:</td><td valign="top"><pre>Version of the merged module.</pre></td></tr>
282     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Version des Ergebnis-Moduls.</pre></td></tr>
283     * </table>
284     * <li>"{@link #getModuleVersionOptionArgNameMessage moduleVersionOptionArgName}"<table>
285     * <tr><td valign="top">English:</td><td valign="top"><pre>version</pre></td></tr>
286     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Version</pre></td></tr>
287     * </table>
288     * <li>"{@link #getModulesReportMessage modulesReport}"<table>
289     * <tr><td valign="top">English:</td><td valign="top"><pre>Modules</pre></td></tr>
290     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Module</pre></td></tr>
291     * </table>
292     * <li>"{@link #getNoClasspathResolutionOptionMessage noClasspathResolutionOption}"<table>
293     * <tr><td valign="top">English:</td><td valign="top"><pre>Do not perform classpath resolution.</pre></td></tr>
294     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Keine Klassenpfad-Aufl&ouml;sung durchf&uuml;hren.</pre></td></tr>
295     * </table>
296     * <li>"{@link #getSeparatorMessage separator}"<table>
297     * <tr><td valign="top">English:</td><td valign="top"><pre>--------------------------------------------------------------------------------</pre></td></tr>
298     * </table>
299     * <li>"{@link #getShortDescriptionMessage shortDescription}"<table>
300     * <tr><td valign="top">English:</td><td valign="top"><pre>Merges modules.</pre></td></tr>
301     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>F&uuml;gt Module zusammen.</pre></td></tr>
302     * </table>
303     * <li>"{@link #getStartingModuleProcessingMessage startingModuleProcessing}"<table>
304     * <tr><td valign="top">English:</td><td valign="top"><pre>Executing command {0} with module ''{1}'' ...</pre></td></tr>
305     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>F&uuml;hrt Befehl {0} mit Modul ''{1}'' aus ... </pre></td></tr>
306     * </table>
307     * <li>"{@link #getStartingProcessingMessage startingProcessing}"<table>
308     * <tr><td valign="top">English:</td><td valign="top"><pre>Executing command {0} ...</pre></td></tr>
309     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>F&uuml;hrt Befehl {0} aus ... </pre></td></tr>
310     * </table>
311     * <li>"{@link #getStylesheetOptionMessage stylesheetOption}"<table>
312     * <tr><td valign="top">English:</td><td valign="top"><pre>Name of a XSLT file to use for transforming the merged module.</pre></td></tr>
313     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name einer XSLT Datei mit der das zusammengef&uuml;gte Modul transformiert werden soll.</pre></td></tr>
314     * </table>
315     * <li>"{@link #getStylesheetOptionArgNameMessage stylesheetOptionArgName}"<table>
316     * <tr><td valign="top">English:</td><td valign="top"><pre>XSLT file</pre></td></tr>
317     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>XSLT-Datei</pre></td></tr>
318     * </table>
319     * <li>"{@link #getToolFailureMessage toolFailure}"<table>
320     * <tr><td valign="top">English:</td><td valign="top"><pre>{0} failure.</pre></td></tr>
321     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>{0} fehlgeschlagen.</pre></td></tr>
322     * </table>
323     * <li>"{@link #getToolSuccessMessage toolSuccess}"<table>
324     * <tr><td valign="top">English:</td><td valign="top"><pre>{0} successful.</pre></td></tr>
325     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>{0} erfolgreich.</pre></td></tr>
326     * </table>
327     * <li>"{@link #getWritingMessage writing}"<table>
328     * <tr><td valign="top">English:</td><td valign="top"><pre>Writing ''{0}''.</pre></td></tr>
329     * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Schreibt ''{0}''.</pre></td></tr>
330     * </table>
331     * </ul></p>
332     *
333     * @author <a href="mailto:cs@jomc.org">Christian Schulte</a> 1.0
334     * @version $Id: MergeModulesCommand.java 1102 2009-12-07 03:01:58Z schulte2005 $
335     */
336    // </editor-fold>
337    // SECTION-END
338    // SECTION-START[Annotations]
339    // <editor-fold defaultstate="collapsed" desc=" Generated Annotations ">
340    @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
341                                 comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
342    // </editor-fold>
343    // SECTION-END
344    public final class MergeModulesCommand extends AbstractJomcCommand
345    {
346        // SECTION-START[Command]
347    
348        /** Options of the instance. */
349        private Options options;
350    
351        @Override
352        public Options getOptions()
353        {
354            if ( this.options == null )
355            {
356                this.getModuleNameOption().setRequired( true );
357    
358                this.options = super.getOptions();
359                this.options.addOption( this.getDocumentOption() );
360                this.options.addOption( this.getStylesheetOption() );
361                this.options.addOption( this.getModuleVendorOption() );
362                this.options.addOption( this.getModuleVersionOption() );
363                this.options.addOption( this.getModuleIncludesOption() );
364                this.options.addOption( this.getModuleExcludesOption() );
365            }
366    
367            return this.options;
368        }
369    
370        public int executeCommand( final CommandLine commandLine ) throws Exception
371        {
372            if ( this.isLoggable( Level.INFO ) )
373            {
374                this.log( Level.INFO, this.getStartingProcessingMessage( this.getLocale(), this.getCommandName() ), null );
375            }
376    
377            final Modules modules = this.getModules( commandLine );
378            final ClassLoader classLoader = this.getClassLoader( commandLine );
379            final JAXBContext context = this.getModelManager().getContext( classLoader );
380            final Marshaller marshaller = this.getModelManager().getMarshaller( classLoader );
381            final Schema schema = this.getModelManager().getSchema( classLoader );
382            final ModelObjectValidationReport validationReport = this.getModelObjectValidator().validateModules(
383                new ObjectFactory().createModules( modules ), context, schema );
384    
385            this.log( validationReport, marshaller );
386    
387            if ( validationReport.isModelObjectValid() )
388            {
389                modules.getModule().remove( modules.getModule( Modules.getDefaultClasspathModuleName() ) );
390    
391                File stylesheetFile = null;
392                if ( commandLine.hasOption( this.getStylesheetOption().getOpt() ) )
393                {
394                    stylesheetFile = new File( commandLine.getOptionValue( this.getStylesheetOption().getOpt() ) );
395                }
396    
397                String moduleVersion = null;
398                if ( commandLine.hasOption( this.getModuleVersionOption().getOpt() ) )
399                {
400                    moduleVersion = commandLine.getOptionValue( this.getModuleVersionOption().getOpt() );
401                }
402    
403                String moduleVendor = null;
404                if ( commandLine.hasOption( this.getModuleVendorOption().getOpt() ) )
405                {
406                    moduleVendor = commandLine.getOptionValue( this.getModuleVendorOption().getOpt() );
407                }
408    
409                if ( commandLine.hasOption( this.getModuleIncludesOption().getOpt() ) )
410                {
411                    final String[] values = commandLine.getOptionValues( this.getModuleIncludesOption().getOpt() );
412    
413                    if ( values != null )
414                    {
415                        final List<String> includes = Arrays.asList( values );
416    
417                        for ( final Iterator<Module> it = modules.getModule().iterator(); it.hasNext(); )
418                        {
419                            final Module m = it.next();
420                            if ( !includes.contains( m.getName() ) )
421                            {
422                                this.log( Level.INFO, this.getExcludingModuleMessage(
423                                    this.getLocale(), m.getName() ), null );
424    
425                                it.remove();
426                            }
427                            else
428                            {
429                                this.log( Level.INFO, this.getIncludingModuleMessage(
430                                    this.getLocale(), m.getName() ), null );
431    
432                            }
433                        }
434                    }
435                }
436    
437                if ( commandLine.hasOption( this.getModuleExcludesOption().getOpt() ) )
438                {
439                    final String[] values = commandLine.getOptionValues( this.getModuleExcludesOption().getOpt() );
440    
441                    if ( values != null )
442                    {
443                        for ( String exclude : values )
444                        {
445                            final Module m = modules.getModule( exclude );
446    
447                            if ( m != null )
448                            {
449                                this.log( Level.INFO, this.getExcludingModuleMessage(
450                                    this.getLocale(), m.getName() ), null );
451    
452                                modules.getModule().remove( m );
453                            }
454                        }
455                    }
456                }
457    
458                Module mergedModule = modules.getMergedModule();
459                mergedModule.setName( commandLine.getOptionValue( this.getModuleNameOption().getOpt() ) );
460                mergedModule.setVersion( moduleVersion );
461                mergedModule.setVendor( moduleVendor );
462    
463                final File moduleFile = new File( commandLine.getOptionValue( this.getDocumentOption().getOpt() ) );
464    
465                if ( stylesheetFile != null )
466                {
467                    final Transformer transformer =
468                        TransformerFactory.newInstance().newTransformer( new StreamSource( stylesheetFile ) );
469    
470                    final JAXBSource source =
471                        new JAXBSource( this.getModelManager().getMarshaller( classLoader ),
472                                        new ObjectFactory().createModule( mergedModule ) );
473    
474                    final JAXBResult result = new JAXBResult( this.getModelManager().getUnmarshaller( classLoader ) );
475                    transformer.transform( source, result );
476                    mergedModule = ( (JAXBElement<Module>) result.getResult() ).getValue();
477                }
478    
479                marshaller.setSchema( schema );
480                marshaller.marshal( new ObjectFactory().createModule( mergedModule ), moduleFile );
481    
482                if ( this.isLoggable( Level.INFO ) )
483                {
484                    this.log( Level.INFO, this.getWritingMessage( this.getLocale(), moduleFile.getAbsolutePath() ), null );
485                }
486    
487                return STATUS_SUCCESS;
488            }
489    
490            return STATUS_FAILURE;
491        }
492    
493        // SECTION-END
494        // SECTION-START[AssembleModulesCommand]
495        private Option stylesheetOption;
496    
497        private Option documentOption;
498    
499        private Option moduleVersionOption;
500    
501        private Option moduleVendorOption;
502    
503        private Option moduleIncludesOption;
504    
505        private Option moduleExcludesOption;
506    
507        protected Option getStylesheetOption()
508        {
509            if ( this.stylesheetOption == null )
510            {
511                this.stylesheetOption = new Option( this.getStylesheetOptionShortName(),
512                                                    this.getStylesheetOptionLongName(), true,
513                                                    this.getStylesheetOptionMessage( this.getLocale() ) );
514    
515                this.stylesheetOption.setArgName( this.getStylesheetOptionArgNameMessage( this.getLocale() ) );
516            }
517    
518            return this.stylesheetOption;
519        }
520    
521        protected Option getDocumentOption()
522        {
523            if ( this.documentOption == null )
524            {
525                this.documentOption = new Option( this.getDocumentOptionShortName(),
526                                                  this.getDocumentOptionLongName(), true,
527                                                  this.getDocumentOptionMessage( this.getLocale() ) );
528    
529                this.documentOption.setRequired( true );
530                this.documentOption.setArgName( this.getDocumentOptionArgNameMessage( this.getLocale() ) );
531            }
532    
533            return this.documentOption;
534        }
535    
536        protected Option getModuleVersionOption()
537        {
538            if ( this.moduleVersionOption == null )
539            {
540                this.moduleVersionOption = new Option( this.getModuleVersionOptionShortName(),
541                                                       this.getModuleVersionOptionLongName(), true,
542                                                       this.getModuleVersionOptionMessage( this.getLocale() ) );
543    
544                this.moduleVersionOption.setArgName( this.getModuleVersionOptionArgNameMessage( this.getLocale() ) );
545            }
546    
547            return this.moduleVersionOption;
548        }
549    
550        protected Option getModuleVendorOption()
551        {
552            if ( this.moduleVendorOption == null )
553            {
554                this.moduleVendorOption = new Option( this.getModuleVendorOptionShortName(),
555                                                      this.getModuleVendorOptionLongName(), true,
556                                                      this.getModuleVendorOptionMessage( this.getLocale() ) );
557    
558                this.moduleVendorOption.setArgName( this.getModuleVendorOptionArgNameMessage( this.getLocale() ) );
559            }
560    
561            return this.moduleVendorOption;
562        }
563    
564        protected Option getModuleIncludesOption()
565        {
566            if ( this.moduleIncludesOption == null )
567            {
568                this.moduleIncludesOption = new Option( this.getModuleIncludesOptionShortName(),
569                                                        this.getModuleIncludesOptionLongName(), false,
570                                                        this.getModuleIncludesOptionMessage( this.getLocale() ) );
571    
572                this.moduleIncludesOption.setArgName( this.getModuleIncludesOptionArgNameMessage( this.getLocale() ) );
573                this.moduleIncludesOption.setValueSeparator( ':' );
574                this.moduleIncludesOption.setArgs( Option.UNLIMITED_VALUES );
575            }
576    
577            return this.moduleIncludesOption;
578        }
579    
580        protected Option getModuleExcludesOption()
581        {
582            if ( this.moduleExcludesOption == null )
583            {
584                this.moduleExcludesOption = new Option( this.getModuleExcludesOptionShortName(),
585                                                        this.getModuleExcludesOptionLongName(), false,
586                                                        this.getModuleExcludesOptionMessage( this.getLocale() ) );
587    
588                this.moduleExcludesOption.setArgName( this.getModuleExcludesOptionArgNameMessage( this.getLocale() ) );
589                this.moduleExcludesOption.setValueSeparator( ':' );
590                this.moduleExcludesOption.setArgs( Option.UNLIMITED_VALUES );
591            }
592    
593            return this.moduleExcludesOption;
594        }
595    
596        // SECTION-END
597        // SECTION-START[Constructors]
598        // <editor-fold defaultstate="collapsed" desc=" Generated Constructors ">
599    
600        /** Creates a new {@code MergeModulesCommand} instance. */
601        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
602                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
603        public MergeModulesCommand()
604        {
605            // SECTION-START[Default Constructor]
606            super();
607            // SECTION-END
608        }
609        // </editor-fold>
610        // SECTION-END
611        // SECTION-START[Dependencies]
612        // <editor-fold defaultstate="collapsed" desc=" Generated Dependencies ">
613    
614        /**
615         * Gets the {@code Locale} dependency.
616         * <p>This method returns the "{@code default}" object of the {@code java.util.Locale} specification at specification level 1.1.</p>
617         * <p>That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.</p>
618         * @return The {@code Locale} dependency.
619         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
620         */
621        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
622                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
623        private java.util.Locale getLocale()
624        {
625            final java.util.Locale _d = (java.util.Locale) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Locale" );
626            assert _d != null : "'Locale' dependency not found.";
627            return _d;
628        }
629        // </editor-fold>
630        // SECTION-END
631        // SECTION-START[Properties]
632        // <editor-fold defaultstate="collapsed" desc=" Generated Properties ">
633    
634        /**
635         * Gets the value of the {@code abbreviatedCommandName} property.
636         * @return Abbreviated name of the command.
637         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
638         */
639        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
640                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
641        private java.lang.String getAbbreviatedCommandName()
642        {
643            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "abbreviatedCommandName" );
644            assert _p != null : "'abbreviatedCommandName' property not found.";
645            return _p;
646        }
647    
648        /**
649         * Gets the value of the {@code classpathOptionLongName} property.
650         * @return Long name of the 'classpath' option.
651         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
652         */
653        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
654                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
655        private java.lang.String getClasspathOptionLongName()
656        {
657            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "classpathOptionLongName" );
658            assert _p != null : "'classpathOptionLongName' property not found.";
659            return _p;
660        }
661    
662        /**
663         * Gets the value of the {@code classpathOptionShortName} property.
664         * @return Name of the 'classpath' option.
665         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
666         */
667        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
668                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
669        private java.lang.String getClasspathOptionShortName()
670        {
671            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "classpathOptionShortName" );
672            assert _p != null : "'classpathOptionShortName' property not found.";
673            return _p;
674        }
675    
676        /**
677         * Gets the value of the {@code commandName} property.
678         * @return Name of the command.
679         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
680         */
681        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
682                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
683        private java.lang.String getCommandName()
684        {
685            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "commandName" );
686            assert _p != null : "'commandName' property not found.";
687            return _p;
688        }
689    
690        /**
691         * Gets the value of the {@code documentOptionLongName} property.
692         * @return Long name of the 'document' option.
693         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
694         */
695        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
696                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
697        private java.lang.String getDocumentOptionLongName()
698        {
699            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "documentOptionLongName" );
700            assert _p != null : "'documentOptionLongName' property not found.";
701            return _p;
702        }
703    
704        /**
705         * Gets the value of the {@code documentOptionShortName} property.
706         * @return Name of the 'document' option.
707         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
708         */
709        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
710                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
711        private java.lang.String getDocumentOptionShortName()
712        {
713            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "documentOptionShortName" );
714            assert _p != null : "'documentOptionShortName' property not found.";
715            return _p;
716        }
717    
718        /**
719         * Gets the value of the {@code documentsOptionLongName} property.
720         * @return Long name of the 'documents' option.
721         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
722         */
723        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
724                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
725        private java.lang.String getDocumentsOptionLongName()
726        {
727            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "documentsOptionLongName" );
728            assert _p != null : "'documentsOptionLongName' property not found.";
729            return _p;
730        }
731    
732        /**
733         * Gets the value of the {@code documentsOptionShortName} property.
734         * @return Name of the 'documents' option.
735         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
736         */
737        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
738                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
739        private java.lang.String getDocumentsOptionShortName()
740        {
741            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "documentsOptionShortName" );
742            assert _p != null : "'documentsOptionShortName' property not found.";
743            return _p;
744        }
745    
746        /**
747         * Gets the value of the {@code moduleExcludesOptionLongName} property.
748         * @return Long name of the 'module-excludes' option.
749         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
750         */
751        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
752                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
753        private java.lang.String getModuleExcludesOptionLongName()
754        {
755            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleExcludesOptionLongName" );
756            assert _p != null : "'moduleExcludesOptionLongName' property not found.";
757            return _p;
758        }
759    
760        /**
761         * Gets the value of the {@code moduleExcludesOptionShortName} property.
762         * @return Name of the 'module-excludes' option.
763         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
764         */
765        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
766                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
767        private java.lang.String getModuleExcludesOptionShortName()
768        {
769            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleExcludesOptionShortName" );
770            assert _p != null : "'moduleExcludesOptionShortName' property not found.";
771            return _p;
772        }
773    
774        /**
775         * Gets the value of the {@code moduleIncludesOptionLongName} property.
776         * @return Long name of the 'module-includes' option.
777         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
778         */
779        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
780                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
781        private java.lang.String getModuleIncludesOptionLongName()
782        {
783            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleIncludesOptionLongName" );
784            assert _p != null : "'moduleIncludesOptionLongName' property not found.";
785            return _p;
786        }
787    
788        /**
789         * Gets the value of the {@code moduleIncludesOptionShortName} property.
790         * @return Name of the 'module-includes' option.
791         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
792         */
793        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
794                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
795        private java.lang.String getModuleIncludesOptionShortName()
796        {
797            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleIncludesOptionShortName" );
798            assert _p != null : "'moduleIncludesOptionShortName' property not found.";
799            return _p;
800        }
801    
802        /**
803         * Gets the value of the {@code moduleLocationOptionLongName} property.
804         * @return Long name of the 'module-location' option.
805         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
806         */
807        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
808                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
809        private java.lang.String getModuleLocationOptionLongName()
810        {
811            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleLocationOptionLongName" );
812            assert _p != null : "'moduleLocationOptionLongName' property not found.";
813            return _p;
814        }
815    
816        /**
817         * Gets the value of the {@code moduleLocationOptionShortName} property.
818         * @return Name of the 'module-location' option.
819         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
820         */
821        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
822                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
823        private java.lang.String getModuleLocationOptionShortName()
824        {
825            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleLocationOptionShortName" );
826            assert _p != null : "'moduleLocationOptionShortName' property not found.";
827            return _p;
828        }
829    
830        /**
831         * Gets the value of the {@code moduleNameOptionLongName} property.
832         * @return Long name of the 'module' option.
833         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
834         */
835        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
836                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
837        private java.lang.String getModuleNameOptionLongName()
838        {
839            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleNameOptionLongName" );
840            assert _p != null : "'moduleNameOptionLongName' property not found.";
841            return _p;
842        }
843    
844        /**
845         * Gets the value of the {@code moduleNameOptionShortName} property.
846         * @return Name of the 'module' option.
847         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
848         */
849        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
850                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
851        private java.lang.String getModuleNameOptionShortName()
852        {
853            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleNameOptionShortName" );
854            assert _p != null : "'moduleNameOptionShortName' property not found.";
855            return _p;
856        }
857    
858        /**
859         * Gets the value of the {@code moduleVendorOptionLongName} property.
860         * @return Long name of the 'module-vendor' option.
861         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
862         */
863        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
864                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
865        private java.lang.String getModuleVendorOptionLongName()
866        {
867            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleVendorOptionLongName" );
868            assert _p != null : "'moduleVendorOptionLongName' property not found.";
869            return _p;
870        }
871    
872        /**
873         * Gets the value of the {@code moduleVendorOptionShortName} property.
874         * @return Name of the 'module-vendor' option.
875         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
876         */
877        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
878                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
879        private java.lang.String getModuleVendorOptionShortName()
880        {
881            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleVendorOptionShortName" );
882            assert _p != null : "'moduleVendorOptionShortName' property not found.";
883            return _p;
884        }
885    
886        /**
887         * Gets the value of the {@code moduleVersionOptionLongName} property.
888         * @return Long name of the 'module-version' option.
889         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
890         */
891        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
892                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
893        private java.lang.String getModuleVersionOptionLongName()
894        {
895            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleVersionOptionLongName" );
896            assert _p != null : "'moduleVersionOptionLongName' property not found.";
897            return _p;
898        }
899    
900        /**
901         * Gets the value of the {@code moduleVersionOptionShortName} property.
902         * @return Name of the 'module-version' option.
903         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
904         */
905        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
906                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
907        private java.lang.String getModuleVersionOptionShortName()
908        {
909            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "moduleVersionOptionShortName" );
910            assert _p != null : "'moduleVersionOptionShortName' property not found.";
911            return _p;
912        }
913    
914        /**
915         * Gets the value of the {@code noClasspathResolutionOptionLongName} property.
916         * @return Long name of the 'no-classpath-resolution' option.
917         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
918         */
919        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
920                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
921        private java.lang.String getNoClasspathResolutionOptionLongName()
922        {
923            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "noClasspathResolutionOptionLongName" );
924            assert _p != null : "'noClasspathResolutionOptionLongName' property not found.";
925            return _p;
926        }
927    
928        /**
929         * Gets the value of the {@code noClasspathResolutionOptionShortName} property.
930         * @return Name of the 'no-classpath-resolution' option.
931         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
932         */
933        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
934                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
935        private java.lang.String getNoClasspathResolutionOptionShortName()
936        {
937            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "noClasspathResolutionOptionShortName" );
938            assert _p != null : "'noClasspathResolutionOptionShortName' property not found.";
939            return _p;
940        }
941    
942        /**
943         * Gets the value of the {@code stylesheetOptionLongName} property.
944         * @return Long name of the 'xslt' option.
945         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
946         */
947        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
948                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
949        private java.lang.String getStylesheetOptionLongName()
950        {
951            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "stylesheetOptionLongName" );
952            assert _p != null : "'stylesheetOptionLongName' property not found.";
953            return _p;
954        }
955    
956        /**
957         * Gets the value of the {@code stylesheetOptionShortName} property.
958         * @return Name of the 'xslt' option.
959         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
960         */
961        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
962                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
963        private java.lang.String getStylesheetOptionShortName()
964        {
965            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "stylesheetOptionShortName" );
966            assert _p != null : "'stylesheetOptionShortName' property not found.";
967            return _p;
968        }
969        // </editor-fold>
970        // SECTION-END
971        // SECTION-START[Messages]
972        // <editor-fold defaultstate="collapsed" desc=" Generated Messages ">
973    
974        /**
975         * Gets the text of the {@code applicationTitle} message.
976         * <p><b>Templates</b><br/><table>
977         * <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>
978         * </table></p>
979         * @param locale The locale of the message to return.
980         * @return The text of the {@code applicationTitle} message.
981         *
982         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
983         */
984        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
985                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
986        private String getApplicationTitleMessage( final java.util.Locale locale )
987        {
988            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "applicationTitle", locale,  null );
989            assert _m != null : "'applicationTitle' message not found.";
990            return _m;
991        }
992    
993        /**
994         * Gets the text of the {@code cannotProcess} message.
995         * <p><b>Templates</b><br/><table>
996         * <tr><td valign="top">English:</td><td valign="top"><pre>Cannot process ''{0}'': {1}</pre></td></tr>
997         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Kann ''{0}'' nicht verarbeiten: {1}</pre></td></tr>
998         * </table></p>
999         * @param locale The locale of the message to return.
1000         * @param itemInfo Format argument.
1001         * @param detailMessage Format argument.
1002         * @return The text of the {@code cannotProcess} message.
1003         *
1004         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1005         */
1006        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1007                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1008        private String getCannotProcessMessage( final java.util.Locale locale, final java.lang.String itemInfo, final java.lang.String detailMessage )
1009        {
1010            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "cannotProcess", locale, new Object[] { itemInfo, detailMessage, null } );
1011            assert _m != null : "'cannotProcess' message not found.";
1012            return _m;
1013        }
1014    
1015        /**
1016         * Gets the text of the {@code classpathElement} message.
1017         * <p><b>Templates</b><br/><table>
1018         * <tr><td valign="top">English:</td><td valign="top"><pre>Classpath element: ''{0}''</pre></td></tr>
1019         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Klassenpfad-Element: ''{0}''</pre></td></tr>
1020         * </table></p>
1021         * @param locale The locale of the message to return.
1022         * @param classpathElement Format argument.
1023         * @return The text of the {@code classpathElement} message.
1024         *
1025         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1026         */
1027        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1028                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1029        private String getClasspathElementMessage( final java.util.Locale locale, final java.lang.String classpathElement )
1030        {
1031            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "classpathElement", locale, new Object[] { classpathElement, null } );
1032            assert _m != null : "'classpathElement' message not found.";
1033            return _m;
1034        }
1035    
1036        /**
1037         * Gets the text of the {@code classpathOption} message.
1038         * <p><b>Templates</b><br/><table>
1039         * <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>
1040         * <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>
1041         * </table></p>
1042         * @param locale The locale of the message to return.
1043         * @param pathSeparator Format argument.
1044         * @return The text of the {@code classpathOption} message.
1045         *
1046         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1047         */
1048        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1049                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1050        private String getClasspathOptionMessage( final java.util.Locale locale, final java.lang.String pathSeparator )
1051        {
1052            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "classpathOption", locale, new Object[] { pathSeparator, null } );
1053            assert _m != null : "'classpathOption' message not found.";
1054            return _m;
1055        }
1056    
1057        /**
1058         * Gets the text of the {@code classpathOptionArgName} message.
1059         * <p><b>Templates</b><br/><table>
1060         * <tr><td valign="top">English:</td><td valign="top"><pre>elements</pre></td></tr>
1061         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Elemente</pre></td></tr>
1062         * </table></p>
1063         * @param locale The locale of the message to return.
1064         * @return The text of the {@code classpathOptionArgName} message.
1065         *
1066         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1067         */
1068        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1069                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1070        private String getClasspathOptionArgNameMessage( final java.util.Locale locale )
1071        {
1072            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "classpathOptionArgName", locale,  null );
1073            assert _m != null : "'classpathOptionArgName' message not found.";
1074            return _m;
1075        }
1076    
1077        /**
1078         * Gets the text of the {@code defaultLogLevelInfo} message.
1079         * <p><b>Templates</b><br/><table>
1080         * <tr><td valign="top">English:</td><td valign="top"><pre>Default log level: ''{0}''</pre></td></tr>
1081         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Standard-Protokollierungsstufe: ''{0}''</pre></td></tr>
1082         * </table></p>
1083         * @param locale The locale of the message to return.
1084         * @param defaultLogLevel Format argument.
1085         * @return The text of the {@code defaultLogLevelInfo} message.
1086         *
1087         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1088         */
1089        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1090                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1091        private String getDefaultLogLevelInfoMessage( final java.util.Locale locale, final java.lang.String defaultLogLevel )
1092        {
1093            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "defaultLogLevelInfo", locale, new Object[] { defaultLogLevel, null } );
1094            assert _m != null : "'defaultLogLevelInfo' message not found.";
1095            return _m;
1096        }
1097    
1098        /**
1099         * Gets the text of the {@code documentFile} message.
1100         * <p><b>Templates</b><br/><table>
1101         * <tr><td valign="top">English:</td><td valign="top"><pre>Document file: ''{0}''</pre></td></tr>
1102         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Dokument-Datei: ''{0}''</pre></td></tr>
1103         * </table></p>
1104         * @param locale The locale of the message to return.
1105         * @param documentFile Format argument.
1106         * @return The text of the {@code documentFile} message.
1107         *
1108         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1109         */
1110        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1111                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1112        private String getDocumentFileMessage( final java.util.Locale locale, final java.lang.String documentFile )
1113        {
1114            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "documentFile", locale, new Object[] { documentFile, null } );
1115            assert _m != null : "'documentFile' message not found.";
1116            return _m;
1117        }
1118    
1119        /**
1120         * Gets the text of the {@code documentOption} message.
1121         * <p><b>Templates</b><br/><table>
1122         * <tr><td valign="top">English:</td><td valign="top"><pre>Name of the file to write the merged module to.</pre></td></tr>
1123         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name der Datei in die das zusammengef&uuml;gte Modul geschrieben werden soll.</pre></td></tr>
1124         * </table></p>
1125         * @param locale The locale of the message to return.
1126         * @return The text of the {@code documentOption} message.
1127         *
1128         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1129         */
1130        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1131                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1132        private String getDocumentOptionMessage( final java.util.Locale locale )
1133        {
1134            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "documentOption", locale,  null );
1135            assert _m != null : "'documentOption' message not found.";
1136            return _m;
1137        }
1138    
1139        /**
1140         * Gets the text of the {@code documentOptionArgName} message.
1141         * <p><b>Templates</b><br/><table>
1142         * <tr><td valign="top">English:</td><td valign="top"><pre>file</pre></td></tr>
1143         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Datei</pre></td></tr>
1144         * </table></p>
1145         * @param locale The locale of the message to return.
1146         * @return The text of the {@code documentOptionArgName} message.
1147         *
1148         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1149         */
1150        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1151                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1152        private String getDocumentOptionArgNameMessage( final java.util.Locale locale )
1153        {
1154            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "documentOptionArgName", locale,  null );
1155            assert _m != null : "'documentOptionArgName' message not found.";
1156            return _m;
1157        }
1158    
1159        /**
1160         * Gets the text of the {@code documentsOption} message.
1161         * <p><b>Templates</b><br/><table>
1162         * <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>
1163         * <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>
1164         * </table></p>
1165         * @param locale The locale of the message to return.
1166         * @param pathSeparator Format argument.
1167         * @return The text of the {@code documentsOption} message.
1168         *
1169         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1170         */
1171        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1172                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1173        private String getDocumentsOptionMessage( final java.util.Locale locale, final java.lang.String pathSeparator )
1174        {
1175            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "documentsOption", locale, new Object[] { pathSeparator, null } );
1176            assert _m != null : "'documentsOption' message not found.";
1177            return _m;
1178        }
1179    
1180        /**
1181         * Gets the text of the {@code documentsOptionArgName} message.
1182         * <p><b>Templates</b><br/><table>
1183         * <tr><td valign="top">English:</td><td valign="top"><pre>files</pre></td></tr>
1184         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Dateien</pre></td></tr>
1185         * </table></p>
1186         * @param locale The locale of the message to return.
1187         * @return The text of the {@code documentsOptionArgName} message.
1188         *
1189         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1190         */
1191        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1192                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1193        private String getDocumentsOptionArgNameMessage( final java.util.Locale locale )
1194        {
1195            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "documentsOptionArgName", locale,  null );
1196            assert _m != null : "'documentsOptionArgName' message not found.";
1197            return _m;
1198        }
1199    
1200        /**
1201         * Gets the text of the {@code excludingModule} message.
1202         * <p><b>Templates</b><br/><table>
1203         * <tr><td valign="top">English:</td><td valign="top"><pre>Excluding module ''{0}''.</pre></td></tr>
1204         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Schlie&szlig;t Modul ''{0}'' aus.</pre></td></tr>
1205         * </table></p>
1206         * @param locale The locale of the message to return.
1207         * @param moduleName Format argument.
1208         * @return The text of the {@code excludingModule} message.
1209         *
1210         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1211         */
1212        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1213                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1214        private String getExcludingModuleMessage( final java.util.Locale locale, final java.lang.String moduleName )
1215        {
1216            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "excludingModule", locale, new Object[] { moduleName, null } );
1217            assert _m != null : "'excludingModule' message not found.";
1218            return _m;
1219        }
1220    
1221        /**
1222         * Gets the text of the {@code includingModule} message.
1223         * <p><b>Templates</b><br/><table>
1224         * <tr><td valign="top">English:</td><td valign="top"><pre>Including module ''{0}''.</pre></td></tr>
1225         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Schlie&szlig;t Modul ''{0}'' ein.</pre></td></tr>
1226         * </table></p>
1227         * @param locale The locale of the message to return.
1228         * @param moduleName Format argument.
1229         * @return The text of the {@code includingModule} 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 getIncludingModuleMessage( final java.util.Locale locale, final java.lang.String moduleName )
1236        {
1237            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "includingModule", locale, new Object[] { moduleName, null } );
1238            assert _m != null : "'includingModule' message not found.";
1239            return _m;
1240        }
1241    
1242        /**
1243         * Gets the text of the {@code invalidModel} message.
1244         * <p><b>Templates</b><br/><table>
1245         * <tr><td valign="top">English:</td><td valign="top"><pre>Invalid model.</pre></td></tr>
1246         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ung&uuml;ltiges Modell.</pre></td></tr>
1247         * </table></p>
1248         * @param locale The locale of the message to return.
1249         * @return The text of the {@code invalidModel} 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 getInvalidModelMessage( final java.util.Locale locale )
1256        {
1257            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "invalidModel", locale,  null );
1258            assert _m != null : "'invalidModel' message not found.";
1259            return _m;
1260        }
1261    
1262        /**
1263         * Gets the text of the {@code longDescription} message.
1264         * <p><b>Templates</b><br/><table>
1265         * <tr><td valign="top">English:</td><td valign="top"><pre>Example:
1266         *   jomc merge-modules -df examples/xml/jomc-cli.xml \
1267         *                      -xs examples/xslt/relocate-classes.xslt \
1268         *                      -mn &quot;Merged Name&quot; -d /tmp/jomc.xml -v</pre></td></tr>
1269         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Beispiel:
1270         *   jomc merge-modules -df examples/xml/jomc-cli.xml \
1271         *                      -xs examples/xslt/relocate-classes.xslt \
1272         *                      -mn &quot;Merged Name&quot; -d /tmp/jomc.xml -v</pre></td></tr>
1273         * </table></p>
1274         * @param locale The locale of the message to return.
1275         * @return The text of the {@code longDescription} message.
1276         *
1277         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1278         */
1279        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1280                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1281        private String getLongDescriptionMessage( final java.util.Locale locale )
1282        {
1283            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "longDescription", locale,  null );
1284            assert _m != null : "'longDescription' message not found.";
1285            return _m;
1286        }
1287    
1288        /**
1289         * Gets the text of the {@code missingModule} message.
1290         * <p><b>Templates</b><br/><table>
1291         * <tr><td valign="top">English:</td><td valign="top"><pre>Module ''{0}'' not found.</pre></td></tr>
1292         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Modul ''{0}'' nicht gefunden.</pre></td></tr>
1293         * </table></p>
1294         * @param locale The locale of the message to return.
1295         * @param moduleName Format argument.
1296         * @return The text of the {@code missingModule} message.
1297         *
1298         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1299         */
1300        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1301                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1302        private String getMissingModuleMessage( final java.util.Locale locale, final java.lang.String moduleName )
1303        {
1304            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "missingModule", locale, new Object[] { moduleName, null } );
1305            assert _m != null : "'missingModule' message not found.";
1306            return _m;
1307        }
1308    
1309        /**
1310         * Gets the text of the {@code moduleExcludesOption} message.
1311         * <p><b>Templates</b><br/><table>
1312         * <tr><td valign="top">English:</td><td valign="top"><pre>Module names separated by '':'' of modules to exclude.</pre></td></tr>
1313         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Modul-Namen auszuschlie&szlig;ender Module mit '':'' getrennt.</pre></td></tr>
1314         * </table></p>
1315         * @param locale The locale of the message to return.
1316         * @return The text of the {@code moduleExcludesOption} message.
1317         *
1318         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1319         */
1320        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1321                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1322        private String getModuleExcludesOptionMessage( final java.util.Locale locale )
1323        {
1324            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleExcludesOption", locale,  null );
1325            assert _m != null : "'moduleExcludesOption' message not found.";
1326            return _m;
1327        }
1328    
1329        /**
1330         * Gets the text of the {@code moduleExcludesOptionArgName} message.
1331         * <p><b>Templates</b><br/><table>
1332         * <tr><td valign="top">English:</td><td valign="top"><pre>names</pre></td></tr>
1333         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Namen</pre></td></tr>
1334         * </table></p>
1335         * @param locale The locale of the message to return.
1336         * @return The text of the {@code moduleExcludesOptionArgName} message.
1337         *
1338         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1339         */
1340        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1341                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1342        private String getModuleExcludesOptionArgNameMessage( final java.util.Locale locale )
1343        {
1344            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleExcludesOptionArgName", locale,  null );
1345            assert _m != null : "'moduleExcludesOptionArgName' message not found.";
1346            return _m;
1347        }
1348    
1349        /**
1350         * Gets the text of the {@code moduleIncludesOption} message.
1351         * <p><b>Templates</b><br/><table>
1352         * <tr><td valign="top">English:</td><td valign="top"><pre>Module names separated by '':'' of modules to include.</pre></td></tr>
1353         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Modul-Namen einzuschlie&szlig;ender Module mit '':'' getrennt.</pre></td></tr>
1354         * </table></p>
1355         * @param locale The locale of the message to return.
1356         * @return The text of the {@code moduleIncludesOption} message.
1357         *
1358         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1359         */
1360        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1361                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1362        private String getModuleIncludesOptionMessage( final java.util.Locale locale )
1363        {
1364            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleIncludesOption", locale,  null );
1365            assert _m != null : "'moduleIncludesOption' message not found.";
1366            return _m;
1367        }
1368    
1369        /**
1370         * Gets the text of the {@code moduleIncludesOptionArgName} message.
1371         * <p><b>Templates</b><br/><table>
1372         * <tr><td valign="top">English:</td><td valign="top"><pre>names</pre></td></tr>
1373         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Namen</pre></td></tr>
1374         * </table></p>
1375         * @param locale The locale of the message to return.
1376         * @return The text of the {@code moduleIncludesOptionArgName} message.
1377         *
1378         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1379         */
1380        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1381                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1382        private String getModuleIncludesOptionArgNameMessage( final java.util.Locale locale )
1383        {
1384            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleIncludesOptionArgName", locale,  null );
1385            assert _m != null : "'moduleIncludesOptionArgName' message not found.";
1386            return _m;
1387        }
1388    
1389        /**
1390         * Gets the text of the {@code moduleLocationOption} message.
1391         * <p><b>Templates</b><br/><table>
1392         * <tr><td valign="top">English:</td><td valign="top"><pre>Location of classpath modules.</pre></td></tr>
1393         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ort der Klassenpfad-Module.</pre></td></tr>
1394         * </table></p>
1395         * @param locale The locale of the message to return.
1396         * @return The text of the {@code moduleLocationOption} message.
1397         *
1398         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1399         */
1400        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1401                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1402        private String getModuleLocationOptionMessage( final java.util.Locale locale )
1403        {
1404            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleLocationOption", locale,  null );
1405            assert _m != null : "'moduleLocationOption' message not found.";
1406            return _m;
1407        }
1408    
1409        /**
1410         * Gets the text of the {@code moduleLocationOptionArgName} message.
1411         * <p><b>Templates</b><br/><table>
1412         * <tr><td valign="top">English:</td><td valign="top"><pre>location</pre></td></tr>
1413         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Ort</pre></td></tr>
1414         * </table></p>
1415         * @param locale The locale of the message to return.
1416         * @return The text of the {@code moduleLocationOptionArgName} message.
1417         *
1418         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1419         */
1420        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1421                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1422        private String getModuleLocationOptionArgNameMessage( final java.util.Locale locale )
1423        {
1424            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleLocationOptionArgName", locale,  null );
1425            assert _m != null : "'moduleLocationOptionArgName' message not found.";
1426            return _m;
1427        }
1428    
1429        /**
1430         * Gets the text of the {@code moduleNameOption} message.
1431         * <p><b>Templates</b><br/><table>
1432         * <tr><td valign="top">English:</td><td valign="top"><pre>Name of the module to process.</pre></td></tr>
1433         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name des zu verarbeitenden Moduls.</pre></td></tr>
1434         * </table></p>
1435         * @param locale The locale of the message to return.
1436         * @return The text of the {@code moduleNameOption} message.
1437         *
1438         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1439         */
1440        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1441                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1442        private String getModuleNameOptionMessage( final java.util.Locale locale )
1443        {
1444            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleNameOption", locale,  null );
1445            assert _m != null : "'moduleNameOption' message not found.";
1446            return _m;
1447        }
1448    
1449        /**
1450         * Gets the text of the {@code moduleNameOptionArgName} message.
1451         * <p><b>Templates</b><br/><table>
1452         * <tr><td valign="top">English:</td><td valign="top"><pre>name</pre></td></tr>
1453         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name</pre></td></tr>
1454         * </table></p>
1455         * @param locale The locale of the message to return.
1456         * @return The text of the {@code moduleNameOptionArgName} message.
1457         *
1458         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1459         */
1460        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1461                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1462        private String getModuleNameOptionArgNameMessage( final java.util.Locale locale )
1463        {
1464            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleNameOptionArgName", locale,  null );
1465            assert _m != null : "'moduleNameOptionArgName' message not found.";
1466            return _m;
1467        }
1468    
1469        /**
1470         * Gets the text of the {@code moduleVendorOption} message.
1471         * <p><b>Templates</b><br/><table>
1472         * <tr><td valign="top">English:</td><td valign="top"><pre>Vendor of the merged module.</pre></td></tr>
1473         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Hersteller des Ergebnis-Moduls.</pre></td></tr>
1474         * </table></p>
1475         * @param locale The locale of the message to return.
1476         * @return The text of the {@code moduleVendorOption} message.
1477         *
1478         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1479         */
1480        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1481                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1482        private String getModuleVendorOptionMessage( final java.util.Locale locale )
1483        {
1484            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleVendorOption", locale,  null );
1485            assert _m != null : "'moduleVendorOption' message not found.";
1486            return _m;
1487        }
1488    
1489        /**
1490         * Gets the text of the {@code moduleVendorOptionArgName} message.
1491         * <p><b>Templates</b><br/><table>
1492         * <tr><td valign="top">English:</td><td valign="top"><pre>vendor</pre></td></tr>
1493         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Hersteller</pre></td></tr>
1494         * </table></p>
1495         * @param locale The locale of the message to return.
1496         * @return The text of the {@code moduleVendorOptionArgName} message.
1497         *
1498         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1499         */
1500        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1501                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1502        private String getModuleVendorOptionArgNameMessage( final java.util.Locale locale )
1503        {
1504            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleVendorOptionArgName", locale,  null );
1505            assert _m != null : "'moduleVendorOptionArgName' message not found.";
1506            return _m;
1507        }
1508    
1509        /**
1510         * Gets the text of the {@code moduleVersionOption} message.
1511         * <p><b>Templates</b><br/><table>
1512         * <tr><td valign="top">English:</td><td valign="top"><pre>Version of the merged module.</pre></td></tr>
1513         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Version des Ergebnis-Moduls.</pre></td></tr>
1514         * </table></p>
1515         * @param locale The locale of the message to return.
1516         * @return The text of the {@code moduleVersionOption} message.
1517         *
1518         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1519         */
1520        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1521                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1522        private String getModuleVersionOptionMessage( final java.util.Locale locale )
1523        {
1524            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleVersionOption", locale,  null );
1525            assert _m != null : "'moduleVersionOption' message not found.";
1526            return _m;
1527        }
1528    
1529        /**
1530         * Gets the text of the {@code moduleVersionOptionArgName} message.
1531         * <p><b>Templates</b><br/><table>
1532         * <tr><td valign="top">English:</td><td valign="top"><pre>version</pre></td></tr>
1533         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Version</pre></td></tr>
1534         * </table></p>
1535         * @param locale The locale of the message to return.
1536         * @return The text of the {@code moduleVersionOptionArgName} message.
1537         *
1538         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1539         */
1540        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1541                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1542        private String getModuleVersionOptionArgNameMessage( final java.util.Locale locale )
1543        {
1544            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "moduleVersionOptionArgName", locale,  null );
1545            assert _m != null : "'moduleVersionOptionArgName' message not found.";
1546            return _m;
1547        }
1548    
1549        /**
1550         * Gets the text of the {@code modulesReport} message.
1551         * <p><b>Templates</b><br/><table>
1552         * <tr><td valign="top">English:</td><td valign="top"><pre>Modules</pre></td></tr>
1553         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Module</pre></td></tr>
1554         * </table></p>
1555         * @param locale The locale of the message to return.
1556         * @return The text of the {@code modulesReport} message.
1557         *
1558         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1559         */
1560        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1561                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1562        private String getModulesReportMessage( final java.util.Locale locale )
1563        {
1564            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "modulesReport", locale,  null );
1565            assert _m != null : "'modulesReport' message not found.";
1566            return _m;
1567        }
1568    
1569        /**
1570         * Gets the text of the {@code noClasspathResolutionOption} message.
1571         * <p><b>Templates</b><br/><table>
1572         * <tr><td valign="top">English:</td><td valign="top"><pre>Do not perform classpath resolution.</pre></td></tr>
1573         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Keine Klassenpfad-Aufl&ouml;sung durchf&uuml;hren.</pre></td></tr>
1574         * </table></p>
1575         * @param locale The locale of the message to return.
1576         * @return The text of the {@code noClasspathResolutionOption} message.
1577         *
1578         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1579         */
1580        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1581                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1582        private String getNoClasspathResolutionOptionMessage( final java.util.Locale locale )
1583        {
1584            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "noClasspathResolutionOption", locale,  null );
1585            assert _m != null : "'noClasspathResolutionOption' message not found.";
1586            return _m;
1587        }
1588    
1589        /**
1590         * Gets the text of the {@code separator} message.
1591         * <p><b>Templates</b><br/><table>
1592         * <tr><td valign="top">English:</td><td valign="top"><pre>--------------------------------------------------------------------------------</pre></td></tr>
1593         * </table></p>
1594         * @param locale The locale of the message to return.
1595         * @return The text of the {@code separator} message.
1596         *
1597         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1598         */
1599        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1600                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1601        private String getSeparatorMessage( final java.util.Locale locale )
1602        {
1603            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "separator", locale,  null );
1604            assert _m != null : "'separator' message not found.";
1605            return _m;
1606        }
1607    
1608        /**
1609         * Gets the text of the {@code shortDescription} message.
1610         * <p><b>Templates</b><br/><table>
1611         * <tr><td valign="top">English:</td><td valign="top"><pre>Merges modules.</pre></td></tr>
1612         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>F&uuml;gt Module zusammen.</pre></td></tr>
1613         * </table></p>
1614         * @param locale The locale of the message to return.
1615         * @return The text of the {@code shortDescription} message.
1616         *
1617         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1618         */
1619        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1620                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1621        private String getShortDescriptionMessage( final java.util.Locale locale )
1622        {
1623            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "shortDescription", locale,  null );
1624            assert _m != null : "'shortDescription' message not found.";
1625            return _m;
1626        }
1627    
1628        /**
1629         * Gets the text of the {@code startingModuleProcessing} message.
1630         * <p><b>Templates</b><br/><table>
1631         * <tr><td valign="top">English:</td><td valign="top"><pre>Executing command {0} with module ''{1}'' ...</pre></td></tr>
1632         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>F&uuml;hrt Befehl {0} mit Modul ''{1}'' aus ... </pre></td></tr>
1633         * </table></p>
1634         * @param locale The locale of the message to return.
1635         * @param toolName Format argument.
1636         * @param moduleName Format argument.
1637         * @return The text of the {@code startingModuleProcessing} message.
1638         *
1639         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1640         */
1641        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1642                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1643        private String getStartingModuleProcessingMessage( final java.util.Locale locale, final java.lang.String toolName, final java.lang.String moduleName )
1644        {
1645            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "startingModuleProcessing", locale, new Object[] { toolName, moduleName, null } );
1646            assert _m != null : "'startingModuleProcessing' message not found.";
1647            return _m;
1648        }
1649    
1650        /**
1651         * Gets the text of the {@code startingProcessing} message.
1652         * <p><b>Templates</b><br/><table>
1653         * <tr><td valign="top">English:</td><td valign="top"><pre>Executing command {0} ...</pre></td></tr>
1654         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>F&uuml;hrt Befehl {0} aus ... </pre></td></tr>
1655         * </table></p>
1656         * @param locale The locale of the message to return.
1657         * @param toolName Format argument.
1658         * @return The text of the {@code startingProcessing} message.
1659         *
1660         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1661         */
1662        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1663                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1664        private String getStartingProcessingMessage( final java.util.Locale locale, final java.lang.String toolName )
1665        {
1666            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "startingProcessing", locale, new Object[] { toolName, null } );
1667            assert _m != null : "'startingProcessing' message not found.";
1668            return _m;
1669        }
1670    
1671        /**
1672         * Gets the text of the {@code stylesheetOption} message.
1673         * <p><b>Templates</b><br/><table>
1674         * <tr><td valign="top">English:</td><td valign="top"><pre>Name of a XSLT file to use for transforming the merged module.</pre></td></tr>
1675         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Name einer XSLT Datei mit der das zusammengef&uuml;gte Modul transformiert werden soll.</pre></td></tr>
1676         * </table></p>
1677         * @param locale The locale of the message to return.
1678         * @return The text of the {@code stylesheetOption} message.
1679         *
1680         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1681         */
1682        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1683                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1684        private String getStylesheetOptionMessage( final java.util.Locale locale )
1685        {
1686            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "stylesheetOption", locale,  null );
1687            assert _m != null : "'stylesheetOption' message not found.";
1688            return _m;
1689        }
1690    
1691        /**
1692         * Gets the text of the {@code stylesheetOptionArgName} message.
1693         * <p><b>Templates</b><br/><table>
1694         * <tr><td valign="top">English:</td><td valign="top"><pre>XSLT file</pre></td></tr>
1695         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>XSLT-Datei</pre></td></tr>
1696         * </table></p>
1697         * @param locale The locale of the message to return.
1698         * @return The text of the {@code stylesheetOptionArgName} message.
1699         *
1700         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1701         */
1702        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1703                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1704        private String getStylesheetOptionArgNameMessage( final java.util.Locale locale )
1705        {
1706            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "stylesheetOptionArgName", locale,  null );
1707            assert _m != null : "'stylesheetOptionArgName' message not found.";
1708            return _m;
1709        }
1710    
1711        /**
1712         * Gets the text of the {@code toolFailure} message.
1713         * <p><b>Templates</b><br/><table>
1714         * <tr><td valign="top">English:</td><td valign="top"><pre>{0} failure.</pre></td></tr>
1715         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>{0} fehlgeschlagen.</pre></td></tr>
1716         * </table></p>
1717         * @param locale The locale of the message to return.
1718         * @param toolName Format argument.
1719         * @return The text of the {@code toolFailure} message.
1720         *
1721         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1722         */
1723        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1724                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1725        private String getToolFailureMessage( final java.util.Locale locale, final java.lang.String toolName )
1726        {
1727            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "toolFailure", locale, new Object[] { toolName, null } );
1728            assert _m != null : "'toolFailure' message not found.";
1729            return _m;
1730        }
1731    
1732        /**
1733         * Gets the text of the {@code toolSuccess} message.
1734         * <p><b>Templates</b><br/><table>
1735         * <tr><td valign="top">English:</td><td valign="top"><pre>{0} successful.</pre></td></tr>
1736         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>{0} erfolgreich.</pre></td></tr>
1737         * </table></p>
1738         * @param locale The locale of the message to return.
1739         * @param toolName Format argument.
1740         * @return The text of the {@code toolSuccess} message.
1741         *
1742         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1743         */
1744        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1745                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1746        private String getToolSuccessMessage( final java.util.Locale locale, final java.lang.String toolName )
1747        {
1748            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "toolSuccess", locale, new Object[] { toolName, null } );
1749            assert _m != null : "'toolSuccess' message not found.";
1750            return _m;
1751        }
1752    
1753        /**
1754         * Gets the text of the {@code writing} message.
1755         * <p><b>Templates</b><br/><table>
1756         * <tr><td valign="top">English:</td><td valign="top"><pre>Writing ''{0}''.</pre></td></tr>
1757         * <tr><td valign="top">Deutsch:</td><td valign="top"><pre>Schreibt ''{0}''.</pre></td></tr>
1758         * </table></p>
1759         * @param locale The locale of the message to return.
1760         * @param fileName Format argument.
1761         * @return The text of the {@code writing} message.
1762         *
1763         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1764         */
1765        @javax.annotation.Generated( value = "org.jomc.tools.JavaSources",
1766                                     comments = "See http://jomc.sourceforge.net/jomc/1.0-alpha-11/jomc-tools" )
1767        private String getWritingMessage( final java.util.Locale locale, final java.lang.String fileName )
1768        {
1769            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "writing", locale, new Object[] { fileName, null } );
1770            assert _m != null : "'writing' message not found.";
1771            return _m;
1772        }
1773        // </editor-fold>
1774        // SECTION-END
1775    }