View Javadoc
1   // SECTION-START[License Header]
2   // <editor-fold defaultstate="collapsed" desc=" Generated License ">
3   /*
4    * Java Object Management and Configuration
5    * Copyright (C) Christian Schulte <cs@schulte.it>, 2005-206
6    * All rights reserved.
7    *
8    * Redistribution and use in source and binary forms, with or without
9    * modification, are permitted provided that the following conditions
10   * are met:
11   *
12   *   o Redistributions of source code must retain the above copyright
13   *     notice, this list of conditions and the following disclaimer.
14   *
15   *   o Redistributions in binary form must reproduce the above copyright
16   *     notice, this list of conditions and the following disclaimer in
17   *     the documentation and/or other materials provided with the
18   *     distribution.
19   *
20   * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
21   * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
22   * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
23   * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY DIRECT, INDIRECT,
24   * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
25   * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26   * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27   * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28   * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
29   * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30   *
31   * $JOMC: MergeModulesCommand.java 5061 2015-05-31 13:20:40Z schulte $
32   *
33   */
34  // </editor-fold>
35  // SECTION-END
36  package org.jomc.cli.commands;
37  
38  import java.io.File;
39  import java.io.IOException;
40  import java.net.URL;
41  import java.util.Arrays;
42  import java.util.Enumeration;
43  import java.util.Iterator;
44  import java.util.List;
45  import java.util.logging.Level;
46  import javax.xml.bind.JAXBElement;
47  import javax.xml.bind.JAXBException;
48  import javax.xml.bind.Marshaller;
49  import javax.xml.bind.Unmarshaller;
50  import javax.xml.bind.util.JAXBResult;
51  import javax.xml.bind.util.JAXBSource;
52  import javax.xml.transform.Transformer;
53  import javax.xml.transform.TransformerException;
54  import javax.xml.transform.stream.StreamSource;
55  import org.apache.commons.cli.CommandLine;
56  import org.jomc.model.Module;
57  import org.jomc.model.Modules;
58  import org.jomc.model.ObjectFactory;
59  import org.jomc.model.modlet.DefaultModelProvider;
60  import org.jomc.modlet.ModelContext;
61  import org.jomc.modlet.ModelException;
62  import org.jomc.modlet.ModelValidationReport;
63  
64  // SECTION-START[Documentation]
65  // <editor-fold defaultstate="collapsed" desc=" Generated Documentation ">
66  /**
67   * JOMC ⁑ CLI ⁑ {@code merge-modules} command implementation.
68   *
69   * <dl>
70   *   <dt><b>Identifier:</b></dt><dd>JOMC ⁑ CLI ⁑ Default merge-modules Command</dd>
71   *   <dt><b>Name:</b></dt><dd>JOMC ⁑ CLI ⁑ Default merge-modules Command</dd>
72   *   <dt><b>Specifications:</b></dt>
73   *     <dd>JOMC ⁑ CLI ⁑ Command @ 1.0</dd>
74   *   <dt><b>Abstract:</b></dt><dd>No</dd>
75   *   <dt><b>Final:</b></dt><dd>No</dd>
76   *   <dt><b>Stateless:</b></dt><dd>No</dd>
77   * </dl>
78   *
79   * @author <a href="mailto:cs@schulte.it">Christian Schulte</a> 1.0
80   * @version 1.9
81   */
82  // </editor-fold>
83  // SECTION-END
84  // SECTION-START[Annotations]
85  // <editor-fold defaultstate="collapsed" desc=" Generated Annotations ">
86  @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
87  // </editor-fold>
88  // SECTION-END
89  public final class MergeModulesCommand extends AbstractModelCommand
90  {
91      // SECTION-START[Command]
92      // SECTION-END
93      // SECTION-START[MergeModulesCommand]
94  
95      protected void executeCommand( final CommandLine commandLine ) throws CommandExecutionException
96      {
97          if ( commandLine == null )
98          {
99              throw new NullPointerException( "commandLine" );
100         }
101 
102         CommandLineClassLoader classLoader = null;
103         boolean suppressExceptionOnClose = true;
104 
105         try
106         {
107             classLoader = new CommandLineClassLoader( commandLine );
108             final Modules modules = new Modules();
109             final ModelContext context = this.createModelContext( commandLine, classLoader );
110             final String model = this.getModel( commandLine );
111             final Marshaller marshaller = context.createMarshaller( model );
112             final Unmarshaller unmarshaller = context.createUnmarshaller( model );
113 
114             if ( !commandLine.hasOption( this.getNoModelResourceValidation().getOpt() ) )
115             {
116                 unmarshaller.setSchema( context.createSchema( model ) );
117             }
118 
119             File stylesheetFile = null;
120             if ( commandLine.hasOption( this.getStylesheetOption().getOpt() ) )
121             {
122                 stylesheetFile = new File( commandLine.getOptionValue( this.getStylesheetOption().getOpt() ) );
123             }
124 
125             String moduleVersion = null;
126             if ( commandLine.hasOption( this.getModuleVersionOption().getOpt() ) )
127             {
128                 moduleVersion = commandLine.getOptionValue( this.getModuleVersionOption().getOpt() );
129             }
130 
131             String moduleVendor = null;
132             if ( commandLine.hasOption( this.getModuleVendorOption().getOpt() ) )
133             {
134                 moduleVendor = commandLine.getOptionValue( this.getModuleVendorOption().getOpt() );
135             }
136 
137             if ( commandLine.hasOption( this.getDocumentsOption().getOpt() ) )
138             {
139                 for ( final File f : this.getDocumentFiles( commandLine ) )
140                 {
141                     if ( this.isLoggable( Level.FINEST ) )
142                     {
143                         this.log( Level.FINEST, this.getReadingMessage( this.getLocale(), f.getAbsolutePath() ), null );
144                     }
145 
146                     Object o = unmarshaller.unmarshal( f );
147                     if ( o instanceof JAXBElement<?> )
148                     {
149                         o = ( (JAXBElement<?>) o ).getValue();
150                     }
151 
152                     if ( o instanceof Module )
153                     {
154                         modules.getModule().add( (Module) o );
155                     }
156                     else if ( o instanceof Modules )
157                     {
158                         modules.getModule().addAll( ( (Modules) o ).getModule() );
159                     }
160                     else if ( this.isLoggable( Level.WARNING ) )
161                     {
162                         this.log( Level.WARNING, this.getCannotProcessMessage(
163                                   this.getLocale(), f.getAbsolutePath(), o.toString() ), null );
164 
165                     }
166                 }
167             }
168 
169             if ( commandLine.hasOption( this.getClasspathOption().getOpt() ) )
170             {
171                 String[] resourceNames = null;
172 
173                 if ( commandLine.hasOption( this.getResourcesOption().getOpt() ) )
174                 {
175                     resourceNames = commandLine.getOptionValues( this.getResourcesOption().getOpt() );
176                 }
177 
178                 if ( resourceNames == null )
179                 {
180                     resourceNames = new String[]
181                     {
182                         DefaultModelProvider.getDefaultModuleLocation()
183                     };
184                 }
185 
186                 for ( final String resource : resourceNames )
187                 {
188                     for ( final Enumeration<URL> e = classLoader.getResources( resource ); e.hasMoreElements(); )
189                     {
190                         final URL url = e.nextElement();
191 
192                         if ( this.isLoggable( Level.FINEST ) )
193                         {
194                             this.log( Level.FINEST, this.getReadingMessage( this.getLocale(), url.toExternalForm() ),
195                                       null );
196 
197                         }
198 
199                         Object o = unmarshaller.unmarshal( url );
200                         if ( o instanceof JAXBElement<?> )
201                         {
202                             o = ( (JAXBElement<?>) o ).getValue();
203                         }
204 
205                         if ( o instanceof Module )
206                         {
207                             modules.getModule().add( (Module) o );
208                         }
209                         else if ( o instanceof Modules )
210                         {
211                             modules.getModule().addAll( ( (Modules) o ).getModule() );
212                         }
213                         else if ( this.isLoggable( Level.WARNING ) )
214                         {
215                             this.log( Level.WARNING, this.getCannotProcessMessage(
216                                       this.getLocale(), url.toExternalForm(), o.toString() ), null );
217 
218                         }
219                     }
220                 }
221             }
222 
223             if ( commandLine.hasOption( this.getModuleIncludesOption().getOpt() ) )
224             {
225                 final String[] values = commandLine.getOptionValues( this.getModuleIncludesOption().getOpt() );
226 
227                 if ( values != null )
228                 {
229                     final List<String> includes = Arrays.asList( values );
230 
231                     for ( final Iterator<Module> it = modules.getModule().iterator(); it.hasNext(); )
232                     {
233                         final Module m = it.next();
234                         if ( !includes.contains( m.getName() ) )
235                         {
236                             this.log( Level.INFO, this.getExcludingModuleInfo( this.getLocale(), m.getName() ), null );
237                             it.remove();
238                         }
239                         else
240                         {
241                             this.log( Level.INFO, this.getIncludingModuleInfo( this.getLocale(), m.getName() ), null );
242                         }
243                     }
244                 }
245             }
246 
247             if ( commandLine.hasOption( this.getModuleExcludesOption().getOpt() ) )
248             {
249                 final String[] values = commandLine.getOptionValues( this.getModuleExcludesOption().getOpt() );
250 
251                 if ( values != null )
252                 {
253                     for ( final String exclude : values )
254                     {
255                         final Module m = modules.getModule( exclude );
256 
257                         if ( m != null )
258                         {
259                             this.log( Level.INFO, this.getExcludingModuleInfo( this.getLocale(), m.getName() ), null );
260                             modules.getModule().remove( m );
261                         }
262                     }
263                 }
264             }
265 
266             Module classpathModule = null;
267             if ( !commandLine.hasOption( this.getNoClasspathResolutionOption().getOpt() ) )
268             {
269                 classpathModule = modules.getClasspathModule( Modules.getDefaultClasspathModuleName(), classLoader );
270                 if ( classpathModule != null && modules.getModule( Modules.getDefaultClasspathModuleName() ) == null )
271                 {
272                     modules.getModule().add( classpathModule );
273                 }
274                 else
275                 {
276                     classpathModule = null;
277                 }
278             }
279 
280             final ModelValidationReport validationReport = context.validateModel(
281                 model, new JAXBSource( marshaller, new ObjectFactory().createModules( modules ) ) );
282 
283             this.log( validationReport, marshaller );
284 
285             if ( !validationReport.isModelValid() )
286             {
287                 throw new CommandExecutionException( this.getInvalidModelMessage( this.getLocale(), model ) );
288             }
289 
290             if ( classpathModule != null )
291             {
292                 modules.getModule().remove( classpathModule );
293             }
294 
295             Module mergedModule =
296                 modules.getMergedModule( commandLine.getOptionValue( this.getModuleNameOption().getOpt() ) );
297 
298             mergedModule.setVersion( moduleVersion );
299             mergedModule.setVendor( moduleVendor );
300 
301             final File moduleFile = new File( commandLine.getOptionValue( this.getDocumentOption().getOpt() ) );
302 
303             if ( stylesheetFile != null )
304             {
305                 final Transformer transformer = this.createTransformer( new StreamSource( stylesheetFile ) );
306                 final JAXBSource source =
307                     new JAXBSource( marshaller, new ObjectFactory().createModule( mergedModule ) );
308 
309                 final JAXBResult result = new JAXBResult( unmarshaller );
310                 unmarshaller.setSchema( null );
311                 transformer.transform( source, result );
312 
313                 if ( result.getResult() instanceof JAXBElement<?>
314                          && ( (JAXBElement<?>) result.getResult() ).getValue() instanceof Module )
315                 {
316                     mergedModule = (Module) ( (JAXBElement<?>) result.getResult() ).getValue();
317                 }
318                 else
319                 {
320                     throw new CommandExecutionException( this.getIllegalTransformationResultError(
321                         this.getLocale(), stylesheetFile.getAbsolutePath() ) );
322 
323                 }
324             }
325 
326             marshaller.setProperty( Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE );
327 
328             if ( commandLine.hasOption( this.getDocumentEncodingOption().getOpt() ) )
329             {
330                 marshaller.setProperty( Marshaller.JAXB_ENCODING,
331                                         commandLine.getOptionValue( this.getDocumentEncodingOption().getOpt() ) );
332 
333             }
334 
335             marshaller.setSchema( context.createSchema( model ) );
336             marshaller.marshal( new ObjectFactory().createModule( mergedModule ), moduleFile );
337 
338             if ( this.isLoggable( Level.INFO ) )
339             {
340                 this.log( Level.INFO, this.getWriteInfo( this.getLocale(), moduleFile.getAbsolutePath() ), null );
341             }
342 
343             suppressExceptionOnClose = false;
344         }
345         catch ( final IOException e )
346         {
347             throw new CommandExecutionException( getExceptionMessage( e ), e );
348         }
349         catch ( final TransformerException e )
350         {
351             String message = getExceptionMessage( e );
352             if ( message == null )
353             {
354                 message = getExceptionMessage( e.getException() );
355             }
356 
357             throw new CommandExecutionException( message, e );
358         }
359         catch ( final JAXBException e )
360         {
361             String message = getExceptionMessage( e );
362             if ( message == null )
363             {
364                 message = getExceptionMessage( e.getLinkedException() );
365             }
366 
367             throw new CommandExecutionException( message, e );
368         }
369         catch ( final ModelException e )
370         {
371             throw new CommandExecutionException( getExceptionMessage( e ), e );
372         }
373         finally
374         {
375             try
376             {
377                 if ( classLoader != null )
378                 {
379                     classLoader.close();
380                 }
381             }
382             catch ( final IOException e )
383             {
384                 if ( suppressExceptionOnClose )
385                 {
386                     this.log( Level.SEVERE, getExceptionMessage( e ), e );
387                 }
388                 else
389                 {
390                     throw new CommandExecutionException( getExceptionMessage( e ), e );
391                 }
392             }
393         }
394     }
395 
396     // SECTION-END
397     // SECTION-START[Constructors]
398     // <editor-fold defaultstate="collapsed" desc=" Generated Constructors ">
399     /** Creates a new {@code MergeModulesCommand} instance. */
400     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
401     public MergeModulesCommand()
402     {
403         // SECTION-START[Default Constructor]
404         super();
405         // SECTION-END
406     }
407     // </editor-fold>
408     // SECTION-END
409     // SECTION-START[Dependencies]
410     // <editor-fold defaultstate="collapsed" desc=" Generated Dependencies ">
411     /**
412      * Gets the {@code <Classpath Option>} dependency.
413      * <p>
414      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Classpath Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
415      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
416      * </p>
417      * <dl>
418      *   <dt><b>Final:</b></dt><dd>No</dd>
419      * </dl>
420      * @return The {@code <Classpath Option>} dependency.
421      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
422      */
423     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
424     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
425     private org.apache.commons.cli.Option getClasspathOption()
426     {
427         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Classpath Option" );
428         assert _d != null : "'Classpath Option' dependency not found.";
429         return _d;
430     }
431     /**
432      * Gets the {@code <Document Encoding Option>} dependency.
433      * <p>
434      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Document Encoding Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
435      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
436      * </p>
437      * <dl>
438      *   <dt><b>Final:</b></dt><dd>No</dd>
439      * </dl>
440      * @return The {@code <Document Encoding Option>} dependency.
441      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
442      */
443     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
444     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
445     private org.apache.commons.cli.Option getDocumentEncodingOption()
446     {
447         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Document Encoding Option" );
448         assert _d != null : "'Document Encoding Option' dependency not found.";
449         return _d;
450     }
451     /**
452      * Gets the {@code <Document Option>} dependency.
453      * <p>
454      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Document Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
455      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
456      * </p>
457      * <p><strong>Properties:</strong>
458      *   <table border="1" width="100%" cellpadding="3" cellspacing="0">
459      *     <tr class="TableSubHeadingColor">
460      *       <th align="left" scope="col" nowrap><b>Name</b></th>
461      *       <th align="left" scope="col" nowrap><b>Type</b></th>
462      *       <th align="left" scope="col" nowrap><b>Documentation</b></th>
463      *     </tr>
464      *     <tr class="TableRow">
465      *       <td align="left" valign="top" nowrap>{@code <Required>}</td>
466      *       <td align="left" valign="top" nowrap>{@code boolean}</td>
467      *       <td align="left" valign="top"></td>
468      *     </tr>
469      *   </table>
470      * </p>
471      * <dl>
472      *   <dt><b>Final:</b></dt><dd>No</dd>
473      * </dl>
474      * @return The {@code <Document Option>} dependency.
475      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
476      */
477     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
478     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
479     private org.apache.commons.cli.Option getDocumentOption()
480     {
481         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Document Option" );
482         assert _d != null : "'Document Option' dependency not found.";
483         return _d;
484     }
485     /**
486      * Gets the {@code <Documents Option>} dependency.
487      * <p>
488      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Documents Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
489      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
490      * </p>
491      * <dl>
492      *   <dt><b>Final:</b></dt><dd>No</dd>
493      * </dl>
494      * @return The {@code <Documents Option>} dependency.
495      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
496      */
497     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
498     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
499     private org.apache.commons.cli.Option getDocumentsOption()
500     {
501         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Documents Option" );
502         assert _d != null : "'Documents Option' dependency not found.";
503         return _d;
504     }
505     /**
506      * Gets the {@code <Locale>} dependency.
507      * <p>
508      *   This method returns the {@code <default>} object of the {@code <java.util.Locale>} specification at specification level 1.1.
509      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
510      * </p>
511      * <dl>
512      *   <dt><b>Final:</b></dt><dd>No</dd>
513      * </dl>
514      * @return The {@code <Locale>} dependency.
515      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
516      */
517     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
518     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
519     private java.util.Locale getLocale()
520     {
521         final java.util.Locale _d = (java.util.Locale) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Locale" );
522         assert _d != null : "'Locale' dependency not found.";
523         return _d;
524     }
525     /**
526      * Gets the {@code <Model Context Factory Option>} dependency.
527      * <p>
528      *   This method returns the {@code <JOMC ⁑ CLI ⁑ ModelContextFactory Class Name Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
529      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
530      * </p>
531      * <dl>
532      *   <dt><b>Final:</b></dt><dd>No</dd>
533      * </dl>
534      * @return The {@code <Model Context Factory Option>} dependency.
535      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
536      */
537     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
538     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
539     private org.apache.commons.cli.Option getModelContextFactoryOption()
540     {
541         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Model Context Factory Option" );
542         assert _d != null : "'Model Context Factory Option' dependency not found.";
543         return _d;
544     }
545     /**
546      * Gets the {@code <Model Option>} dependency.
547      * <p>
548      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Model Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
549      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
550      * </p>
551      * <dl>
552      *   <dt><b>Final:</b></dt><dd>No</dd>
553      * </dl>
554      * @return The {@code <Model Option>} dependency.
555      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
556      */
557     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
558     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
559     private org.apache.commons.cli.Option getModelOption()
560     {
561         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Model Option" );
562         assert _d != null : "'Model Option' dependency not found.";
563         return _d;
564     }
565     /**
566      * Gets the {@code <Modlet Location Option>} dependency.
567      * <p>
568      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Modlet Location Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
569      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
570      * </p>
571      * <dl>
572      *   <dt><b>Final:</b></dt><dd>No</dd>
573      * </dl>
574      * @return The {@code <Modlet Location Option>} dependency.
575      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
576      */
577     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
578     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
579     private org.apache.commons.cli.Option getModletLocationOption()
580     {
581         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Modlet Location Option" );
582         assert _d != null : "'Modlet Location Option' dependency not found.";
583         return _d;
584     }
585     /**
586      * Gets the {@code <Modlet Schema System Id Option>} dependency.
587      * <p>
588      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Modlet Schema System Id Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
589      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
590      * </p>
591      * <dl>
592      *   <dt><b>Final:</b></dt><dd>No</dd>
593      * </dl>
594      * @return The {@code <Modlet Schema System Id Option>} dependency.
595      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
596      */
597     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
598     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
599     private org.apache.commons.cli.Option getModletSchemaSystemIdOption()
600     {
601         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Modlet Schema System Id Option" );
602         assert _d != null : "'Modlet Schema System Id Option' dependency not found.";
603         return _d;
604     }
605     /**
606      * Gets the {@code <Module Excludes Option>} dependency.
607      * <p>
608      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Module Excludes Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
609      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
610      * </p>
611      * <dl>
612      *   <dt><b>Final:</b></dt><dd>No</dd>
613      * </dl>
614      * @return The {@code <Module Excludes Option>} dependency.
615      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
616      */
617     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
618     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
619     private org.apache.commons.cli.Option getModuleExcludesOption()
620     {
621         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Module Excludes Option" );
622         assert _d != null : "'Module Excludes Option' dependency not found.";
623         return _d;
624     }
625     /**
626      * Gets the {@code <Module Includes Option>} dependency.
627      * <p>
628      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Module Includes Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
629      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
630      * </p>
631      * <dl>
632      *   <dt><b>Final:</b></dt><dd>No</dd>
633      * </dl>
634      * @return The {@code <Module Includes Option>} dependency.
635      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
636      */
637     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
638     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
639     private org.apache.commons.cli.Option getModuleIncludesOption()
640     {
641         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Module Includes Option" );
642         assert _d != null : "'Module Includes Option' dependency not found.";
643         return _d;
644     }
645     /**
646      * Gets the {@code <Module Location Option>} dependency.
647      * <p>
648      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Module Location Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
649      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
650      * </p>
651      * <dl>
652      *   <dt><b>Final:</b></dt><dd>No</dd>
653      * </dl>
654      * @return The {@code <Module Location Option>} dependency.
655      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
656      */
657     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
658     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
659     private org.apache.commons.cli.Option getModuleLocationOption()
660     {
661         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Module Location Option" );
662         assert _d != null : "'Module Location Option' dependency not found.";
663         return _d;
664     }
665     /**
666      * Gets the {@code <Module Name Option>} dependency.
667      * <p>
668      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Module Name Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
669      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
670      * </p>
671      * <p><strong>Properties:</strong>
672      *   <table border="1" width="100%" cellpadding="3" cellspacing="0">
673      *     <tr class="TableSubHeadingColor">
674      *       <th align="left" scope="col" nowrap><b>Name</b></th>
675      *       <th align="left" scope="col" nowrap><b>Type</b></th>
676      *       <th align="left" scope="col" nowrap><b>Documentation</b></th>
677      *     </tr>
678      *     <tr class="TableRow">
679      *       <td align="left" valign="top" nowrap>{@code <Required>}</td>
680      *       <td align="left" valign="top" nowrap>{@code boolean}</td>
681      *       <td align="left" valign="top"></td>
682      *     </tr>
683      *   </table>
684      * </p>
685      * <dl>
686      *   <dt><b>Final:</b></dt><dd>No</dd>
687      * </dl>
688      * @return The {@code <Module Name Option>} dependency.
689      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
690      */
691     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
692     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
693     private org.apache.commons.cli.Option getModuleNameOption()
694     {
695         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Module Name Option" );
696         assert _d != null : "'Module Name Option' dependency not found.";
697         return _d;
698     }
699     /**
700      * Gets the {@code <Module Vendor Option>} dependency.
701      * <p>
702      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Module Vendor Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
703      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
704      * </p>
705      * <dl>
706      *   <dt><b>Final:</b></dt><dd>No</dd>
707      * </dl>
708      * @return The {@code <Module Vendor Option>} dependency.
709      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
710      */
711     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
712     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
713     private org.apache.commons.cli.Option getModuleVendorOption()
714     {
715         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Module Vendor Option" );
716         assert _d != null : "'Module Vendor Option' dependency not found.";
717         return _d;
718     }
719     /**
720      * Gets the {@code <Module Version Option>} dependency.
721      * <p>
722      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Module Version Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
723      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
724      * </p>
725      * <dl>
726      *   <dt><b>Final:</b></dt><dd>No</dd>
727      * </dl>
728      * @return The {@code <Module Version Option>} dependency.
729      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
730      */
731     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
732     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
733     private org.apache.commons.cli.Option getModuleVersionOption()
734     {
735         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Module Version Option" );
736         assert _d != null : "'Module Version Option' dependency not found.";
737         return _d;
738     }
739     /**
740      * Gets the {@code <No Classpath Resolution Option>} dependency.
741      * <p>
742      *   This method returns the {@code <JOMC ⁑ CLI ⁑ No Classpath Resolution Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
743      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
744      * </p>
745      * <dl>
746      *   <dt><b>Final:</b></dt><dd>No</dd>
747      * </dl>
748      * @return The {@code <No Classpath Resolution Option>} dependency.
749      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
750      */
751     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
752     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
753     private org.apache.commons.cli.Option getNoClasspathResolutionOption()
754     {
755         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "No Classpath Resolution Option" );
756         assert _d != null : "'No Classpath Resolution Option' dependency not found.";
757         return _d;
758     }
759     /**
760      * Gets the {@code <No Java Validation Option>} dependency.
761      * <p>
762      *   This method returns the {@code <JOMC ⁑ CLI ⁑ No Java Validation Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
763      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
764      * </p>
765      * <dl>
766      *   <dt><b>Final:</b></dt><dd>No</dd>
767      * </dl>
768      * @return The {@code <No Java Validation Option>} dependency.
769      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
770      */
771     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
772     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
773     private org.apache.commons.cli.Option getNoJavaValidationOption()
774     {
775         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "No Java Validation Option" );
776         assert _d != null : "'No Java Validation Option' dependency not found.";
777         return _d;
778     }
779     /**
780      * Gets the {@code <No Model Processing Option>} dependency.
781      * <p>
782      *   This method returns the {@code <JOMC ⁑ CLI ⁑ No Model Processing Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
783      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
784      * </p>
785      * <dl>
786      *   <dt><b>Final:</b></dt><dd>No</dd>
787      * </dl>
788      * @return The {@code <No Model Processing Option>} dependency.
789      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
790      */
791     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
792     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
793     private org.apache.commons.cli.Option getNoModelProcessingOption()
794     {
795         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "No Model Processing Option" );
796         assert _d != null : "'No Model Processing Option' dependency not found.";
797         return _d;
798     }
799     /**
800      * Gets the {@code <No Model Resource Validation>} dependency.
801      * <p>
802      *   This method returns the {@code <JOMC ⁑ CLI ⁑ No Model Resource Validation Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
803      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
804      * </p>
805      * <dl>
806      *   <dt><b>Final:</b></dt><dd>No</dd>
807      * </dl>
808      * @return The {@code <No Model Resource Validation>} dependency.
809      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
810      */
811     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
812     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
813     private org.apache.commons.cli.Option getNoModelResourceValidation()
814     {
815         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "No Model Resource Validation" );
816         assert _d != null : "'No Model Resource Validation' dependency not found.";
817         return _d;
818     }
819     /**
820      * Gets the {@code <No Modlet Resource Validation>} dependency.
821      * <p>
822      *   This method returns the {@code <JOMC ⁑ CLI ⁑ No Modlet Resource Validation Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
823      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
824      * </p>
825      * <dl>
826      *   <dt><b>Final:</b></dt><dd>No</dd>
827      * </dl>
828      * @return The {@code <No Modlet Resource Validation>} dependency.
829      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
830      */
831     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
832     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
833     private org.apache.commons.cli.Option getNoModletResourceValidation()
834     {
835         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "No Modlet Resource Validation" );
836         assert _d != null : "'No Modlet Resource Validation' dependency not found.";
837         return _d;
838     }
839     /**
840      * Gets the {@code <Platform Provider Location Option>} dependency.
841      * <p>
842      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Platform Provider Location Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
843      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
844      * </p>
845      * <dl>
846      *   <dt><b>Final:</b></dt><dd>No</dd>
847      * </dl>
848      * @return The {@code <Platform Provider Location Option>} dependency.
849      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
850      */
851     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
852     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
853     private org.apache.commons.cli.Option getPlatformProviderLocationOption()
854     {
855         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Platform Provider Location Option" );
856         assert _d != null : "'Platform Provider Location Option' dependency not found.";
857         return _d;
858     }
859     /**
860      * Gets the {@code <Provider Location Option>} dependency.
861      * <p>
862      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Provider Location Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
863      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
864      * </p>
865      * <dl>
866      *   <dt><b>Final:</b></dt><dd>No</dd>
867      * </dl>
868      * @return The {@code <Provider Location Option>} dependency.
869      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
870      */
871     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
872     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
873     private org.apache.commons.cli.Option getProviderLocationOption()
874     {
875         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Provider Location Option" );
876         assert _d != null : "'Provider Location Option' dependency not found.";
877         return _d;
878     }
879     /**
880      * Gets the {@code <Resources Option>} dependency.
881      * <p>
882      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Resources Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
883      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
884      * </p>
885      * <dl>
886      *   <dt><b>Final:</b></dt><dd>No</dd>
887      * </dl>
888      * @return The {@code <Resources Option>} dependency.
889      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
890      */
891     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
892     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
893     private org.apache.commons.cli.Option getResourcesOption()
894     {
895         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Resources Option" );
896         assert _d != null : "'Resources Option' dependency not found.";
897         return _d;
898     }
899     /**
900      * Gets the {@code <Stylesheet Option>} dependency.
901      * <p>
902      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Stylesheet Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
903      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
904      * </p>
905      * <dl>
906      *   <dt><b>Final:</b></dt><dd>No</dd>
907      * </dl>
908      * @return The {@code <Stylesheet Option>} dependency.
909      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
910      */
911     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
912     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
913     private org.apache.commons.cli.Option getStylesheetOption()
914     {
915         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Stylesheet Option" );
916         assert _d != null : "'Stylesheet Option' dependency not found.";
917         return _d;
918     }
919     /**
920      * Gets the {@code <Transformer Location Option>} dependency.
921      * <p>
922      *   This method returns the {@code <JOMC ⁑ CLI ⁑ Transformer Location Option>} object of the {@code <JOMC ⁑ CLI ⁑ Command Option>} specification at specification level 1.2.
923      *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
924      * </p>
925      * <dl>
926      *   <dt><b>Final:</b></dt><dd>No</dd>
927      * </dl>
928      * @return The {@code <Transformer Location Option>} dependency.
929      * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
930      */
931     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
932     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
933     private org.apache.commons.cli.Option getTransformerLocationOption()
934     {
935         final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Transformer Location Option" );
936         assert _d != null : "'Transformer Location Option' dependency not found.";
937         return _d;
938     }
939     // </editor-fold>
940     // SECTION-END
941     // SECTION-START[Properties]
942     // <editor-fold defaultstate="collapsed" desc=" Generated Properties ">
943     /**
944      * Gets the value of the {@code <Abbreviated Command Name>} property.
945      * <p><dl>
946      *   <dt><b>Final:</b></dt><dd>No</dd>
947      * </dl></p>
948      * @return Abbreviated name of the command.
949      * @throws org.jomc.ObjectManagementException if getting the property instance fails.
950      */
951     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
952     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
953     private java.lang.String getAbbreviatedCommandName()
954     {
955         final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "Abbreviated Command Name" );
956         assert _p != null : "'Abbreviated Command Name' property not found.";
957         return _p;
958     }
959     /**
960      * Gets the value of the {@code <Application Modlet>} property.
961      * <p><dl>
962      *   <dt><b>Final:</b></dt><dd>Yes</dd>
963      * </dl></p>
964      * @return Name of the 'shaded' application modlet.
965      * @throws org.jomc.ObjectManagementException if getting the property instance fails.
966      */
967     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
968     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
969     private java.lang.String getApplicationModlet()
970     {
971         final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "Application Modlet" );
972         assert _p != null : "'Application Modlet' property not found.";
973         return _p;
974     }
975     /**
976      * Gets the value of the {@code <Command Name>} property.
977      * <p><dl>
978      *   <dt><b>Final:</b></dt><dd>No</dd>
979      * </dl></p>
980      * @return Name of the command.
981      * @throws org.jomc.ObjectManagementException if getting the property instance fails.
982      */
983     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
984     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
985     private java.lang.String getCommandName()
986     {
987         final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "Command Name" );
988         assert _p != null : "'Command Name' property not found.";
989         return _p;
990     }
991     /**
992      * Gets the value of the {@code <Modlet Excludes>} property.
993      * <p><dl>
994      *   <dt><b>Final:</b></dt><dd>Yes</dd>
995      * </dl></p>
996      * @return List of modlet names to exclude from any {@code META-INF/jomc-modlet.xml} files separated by {@code :}.
997      * @throws org.jomc.ObjectManagementException if getting the property instance fails.
998      */
999     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1000     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1001     private java.lang.String getModletExcludes()
1002     {
1003         final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "Modlet Excludes" );
1004         assert _p != null : "'Modlet Excludes' property not found.";
1005         return _p;
1006     }
1007     /**
1008      * Gets the value of the {@code <Provider Excludes>} property.
1009      * <p><dl>
1010      *   <dt><b>Final:</b></dt><dd>Yes</dd>
1011      * </dl></p>
1012      * @return List of providers to exclude from any {@code META-INF/services} files separated by {@code :}.
1013      * @throws org.jomc.ObjectManagementException if getting the property instance fails.
1014      */
1015     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1016     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1017     private java.lang.String getProviderExcludes()
1018     {
1019         final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "Provider Excludes" );
1020         assert _p != null : "'Provider Excludes' property not found.";
1021         return _p;
1022     }
1023     /**
1024      * Gets the value of the {@code <Schema Excludes>} property.
1025      * <p><dl>
1026      *   <dt><b>Final:</b></dt><dd>Yes</dd>
1027      * </dl></p>
1028      * @return List of schema context-ids to exclude from any {@code META-INF/jomc-modlet.xml} files separated by {@code :}.
1029      * @throws org.jomc.ObjectManagementException if getting the property instance fails.
1030      */
1031     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1032     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1033     private java.lang.String getSchemaExcludes()
1034     {
1035         final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "Schema Excludes" );
1036         assert _p != null : "'Schema Excludes' property not found.";
1037         return _p;
1038     }
1039     /**
1040      * Gets the value of the {@code <Service Excludes>} property.
1041      * <p><dl>
1042      *   <dt><b>Final:</b></dt><dd>Yes</dd>
1043      * </dl></p>
1044      * @return List of service classes to exclude from any {@code META-INF/jomc-modlet.xml} files separated by {@code :}.
1045      * @throws org.jomc.ObjectManagementException if getting the property instance fails.
1046      */
1047     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1048     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1049     private java.lang.String getServiceExcludes()
1050     {
1051         final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "Service Excludes" );
1052         assert _p != null : "'Service Excludes' property not found.";
1053         return _p;
1054     }
1055     // </editor-fold>
1056     // SECTION-END
1057     // SECTION-START[Messages]
1058     // <editor-fold defaultstate="collapsed" desc=" Generated Messages ">
1059     /**
1060      * Gets the text of the {@code <Application Title>} message.
1061      * <p><dl>
1062      *   <dt><b>Languages:</b></dt>
1063      *     <dd>English (default)</dd>
1064      *   <dt><b>Final:</b></dt><dd>No</dd>
1065      * </dl></p>
1066      * @param locale The locale of the message to return.
1067      * @return The text of the {@code <Application Title>} message for {@code locale}.
1068      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1069      */
1070     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1071     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1072     private String getApplicationTitle( final java.util.Locale locale )
1073     {
1074         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Application Title", locale );
1075         assert _m != null : "'Application Title' message not found.";
1076         return _m;
1077     }
1078     /**
1079      * Gets the text of the {@code <Cannot Process Message>} message.
1080      * <p><dl>
1081      *   <dt><b>Languages:</b></dt>
1082      *     <dd>English (default)</dd>
1083      *     <dd>Deutsch</dd>
1084      *   <dt><b>Final:</b></dt><dd>No</dd>
1085      * </dl></p>
1086      * @param locale The locale of the message to return.
1087      * @param itemInfo Format argument.
1088      * @param detailMessage Format argument.
1089      * @return The text of the {@code <Cannot Process Message>} message for {@code locale}.
1090      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1091      */
1092     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1093     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1094     private String getCannotProcessMessage( final java.util.Locale locale, final java.lang.String itemInfo, final java.lang.String detailMessage )
1095     {
1096         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Cannot Process Message", locale, itemInfo, detailMessage );
1097         assert _m != null : "'Cannot Process Message' message not found.";
1098         return _m;
1099     }
1100     /**
1101      * Gets the text of the {@code <Classpath Element Info>} message.
1102      * <p><dl>
1103      *   <dt><b>Languages:</b></dt>
1104      *     <dd>English (default)</dd>
1105      *     <dd>Deutsch</dd>
1106      *   <dt><b>Final:</b></dt><dd>No</dd>
1107      * </dl></p>
1108      * @param locale The locale of the message to return.
1109      * @param classpathElement Format argument.
1110      * @return The text of the {@code <Classpath Element Info>} message for {@code locale}.
1111      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1112      */
1113     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1114     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1115     private String getClasspathElementInfo( final java.util.Locale locale, final java.lang.String classpathElement )
1116     {
1117         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Classpath Element Info", locale, classpathElement );
1118         assert _m != null : "'Classpath Element Info' message not found.";
1119         return _m;
1120     }
1121     /**
1122      * Gets the text of the {@code <Classpath Element Not Found Warning>} message.
1123      * <p><dl>
1124      *   <dt><b>Languages:</b></dt>
1125      *     <dd>English (default)</dd>
1126      *     <dd>Deutsch</dd>
1127      *   <dt><b>Final:</b></dt><dd>No</dd>
1128      * </dl></p>
1129      * @param locale The locale of the message to return.
1130      * @param fileName Format argument.
1131      * @return The text of the {@code <Classpath Element Not Found Warning>} message for {@code locale}.
1132      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1133      */
1134     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1135     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1136     private String getClasspathElementNotFoundWarning( final java.util.Locale locale, final java.lang.String fileName )
1137     {
1138         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Classpath Element Not Found Warning", locale, fileName );
1139         assert _m != null : "'Classpath Element Not Found Warning' message not found.";
1140         return _m;
1141     }
1142     /**
1143      * Gets the text of the {@code <Command Failure Message>} message.
1144      * <p><dl>
1145      *   <dt><b>Languages:</b></dt>
1146      *     <dd>English (default)</dd>
1147      *     <dd>Deutsch</dd>
1148      *   <dt><b>Final:</b></dt><dd>No</dd>
1149      * </dl></p>
1150      * @param locale The locale of the message to return.
1151      * @param toolName Format argument.
1152      * @return The text of the {@code <Command Failure Message>} message for {@code locale}.
1153      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1154      */
1155     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1156     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1157     private String getCommandFailureMessage( final java.util.Locale locale, final java.lang.String toolName )
1158     {
1159         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Command Failure Message", locale, toolName );
1160         assert _m != null : "'Command Failure Message' message not found.";
1161         return _m;
1162     }
1163     /**
1164      * Gets the text of the {@code <Command Info Message>} message.
1165      * <p><dl>
1166      *   <dt><b>Languages:</b></dt>
1167      *     <dd>English (default)</dd>
1168      *     <dd>Deutsch</dd>
1169      *   <dt><b>Final:</b></dt><dd>No</dd>
1170      * </dl></p>
1171      * @param locale The locale of the message to return.
1172      * @param toolName Format argument.
1173      * @return The text of the {@code <Command Info Message>} message for {@code locale}.
1174      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1175      */
1176     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1177     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1178     private String getCommandInfoMessage( final java.util.Locale locale, final java.lang.String toolName )
1179     {
1180         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Command Info Message", locale, toolName );
1181         assert _m != null : "'Command Info Message' message not found.";
1182         return _m;
1183     }
1184     /**
1185      * Gets the text of the {@code <Command Success Message>} message.
1186      * <p><dl>
1187      *   <dt><b>Languages:</b></dt>
1188      *     <dd>English (default)</dd>
1189      *     <dd>Deutsch</dd>
1190      *   <dt><b>Final:</b></dt><dd>No</dd>
1191      * </dl></p>
1192      * @param locale The locale of the message to return.
1193      * @param toolName Format argument.
1194      * @return The text of the {@code <Command Success Message>} message for {@code locale}.
1195      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1196      */
1197     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1198     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1199     private String getCommandSuccessMessage( final java.util.Locale locale, final java.lang.String toolName )
1200     {
1201         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Command Success Message", locale, toolName );
1202         assert _m != null : "'Command Success Message' message not found.";
1203         return _m;
1204     }
1205     /**
1206      * Gets the text of the {@code <Default Log Level Info>} message.
1207      * <p><dl>
1208      *   <dt><b>Languages:</b></dt>
1209      *     <dd>English (default)</dd>
1210      *     <dd>Deutsch</dd>
1211      *   <dt><b>Final:</b></dt><dd>No</dd>
1212      * </dl></p>
1213      * @param locale The locale of the message to return.
1214      * @param defaultLogLevel Format argument.
1215      * @return The text of the {@code <Default Log Level Info>} message for {@code locale}.
1216      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1217      */
1218     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1219     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1220     private String getDefaultLogLevelInfo( final java.util.Locale locale, final java.lang.String defaultLogLevel )
1221     {
1222         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Default Log Level Info", locale, defaultLogLevel );
1223         assert _m != null : "'Default Log Level Info' message not found.";
1224         return _m;
1225     }
1226     /**
1227      * Gets the text of the {@code <Document File Info>} message.
1228      * <p><dl>
1229      *   <dt><b>Languages:</b></dt>
1230      *     <dd>English (default)</dd>
1231      *     <dd>Deutsch</dd>
1232      *   <dt><b>Final:</b></dt><dd>No</dd>
1233      * </dl></p>
1234      * @param locale The locale of the message to return.
1235      * @param documentFile Format argument.
1236      * @return The text of the {@code <Document File Info>} message for {@code locale}.
1237      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1238      */
1239     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1240     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1241     private String getDocumentFileInfo( final java.util.Locale locale, final java.lang.String documentFile )
1242     {
1243         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Document File Info", locale, documentFile );
1244         assert _m != null : "'Document File Info' message not found.";
1245         return _m;
1246     }
1247     /**
1248      * Gets the text of the {@code <Document File Not Found Warning>} message.
1249      * <p><dl>
1250      *   <dt><b>Languages:</b></dt>
1251      *     <dd>English (default)</dd>
1252      *     <dd>Deutsch</dd>
1253      *   <dt><b>Final:</b></dt><dd>No</dd>
1254      * </dl></p>
1255      * @param locale The locale of the message to return.
1256      * @param fileName Format argument.
1257      * @return The text of the {@code <Document File Not Found Warning>} message for {@code locale}.
1258      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1259      */
1260     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1261     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1262     private String getDocumentFileNotFoundWarning( final java.util.Locale locale, final java.lang.String fileName )
1263     {
1264         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Document File Not Found Warning", locale, fileName );
1265         assert _m != null : "'Document File Not Found Warning' message not found.";
1266         return _m;
1267     }
1268     /**
1269      * Gets the text of the {@code <Excluded Modlet Info>} message.
1270      * <p><dl>
1271      *   <dt><b>Languages:</b></dt>
1272      *     <dd>English (default)</dd>
1273      *     <dd>Deutsch</dd>
1274      *   <dt><b>Final:</b></dt><dd>No</dd>
1275      * </dl></p>
1276      * @param locale The locale of the message to return.
1277      * @param resourceName Format argument.
1278      * @param modletIdentifier Format argument.
1279      * @return The text of the {@code <Excluded Modlet Info>} message for {@code locale}.
1280      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1281      */
1282     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1283     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1284     private String getExcludedModletInfo( final java.util.Locale locale, final java.lang.String resourceName, final java.lang.String modletIdentifier )
1285     {
1286         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Excluded Modlet Info", locale, resourceName, modletIdentifier );
1287         assert _m != null : "'Excluded Modlet Info' message not found.";
1288         return _m;
1289     }
1290     /**
1291      * Gets the text of the {@code <Excluded Provider Info>} message.
1292      * <p><dl>
1293      *   <dt><b>Languages:</b></dt>
1294      *     <dd>English (default)</dd>
1295      *     <dd>Deutsch</dd>
1296      *   <dt><b>Final:</b></dt><dd>No</dd>
1297      * </dl></p>
1298      * @param locale The locale of the message to return.
1299      * @param resourceName Format argument.
1300      * @param providerName Format argument.
1301      * @return The text of the {@code <Excluded Provider Info>} message for {@code locale}.
1302      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1303      */
1304     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1305     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1306     private String getExcludedProviderInfo( final java.util.Locale locale, final java.lang.String resourceName, final java.lang.String providerName )
1307     {
1308         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Excluded Provider Info", locale, resourceName, providerName );
1309         assert _m != null : "'Excluded Provider Info' message not found.";
1310         return _m;
1311     }
1312     /**
1313      * Gets the text of the {@code <Excluded Schema Info>} message.
1314      * <p><dl>
1315      *   <dt><b>Languages:</b></dt>
1316      *     <dd>English (default)</dd>
1317      *     <dd>Deutsch</dd>
1318      *   <dt><b>Final:</b></dt><dd>No</dd>
1319      * </dl></p>
1320      * @param locale The locale of the message to return.
1321      * @param resourceName Format argument.
1322      * @param contextId Format argument.
1323      * @return The text of the {@code <Excluded Schema Info>} message for {@code locale}.
1324      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1325      */
1326     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1327     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1328     private String getExcludedSchemaInfo( final java.util.Locale locale, final java.lang.String resourceName, final java.lang.String contextId )
1329     {
1330         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Excluded Schema Info", locale, resourceName, contextId );
1331         assert _m != null : "'Excluded Schema Info' message not found.";
1332         return _m;
1333     }
1334     /**
1335      * Gets the text of the {@code <Excluded Service Info>} message.
1336      * <p><dl>
1337      *   <dt><b>Languages:</b></dt>
1338      *     <dd>English (default)</dd>
1339      *     <dd>Deutsch</dd>
1340      *   <dt><b>Final:</b></dt><dd>No</dd>
1341      * </dl></p>
1342      * @param locale The locale of the message to return.
1343      * @param resourceName Format argument.
1344      * @param serviceName Format argument.
1345      * @return The text of the {@code <Excluded Service Info>} message for {@code locale}.
1346      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1347      */
1348     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1349     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1350     private String getExcludedServiceInfo( final java.util.Locale locale, final java.lang.String resourceName, final java.lang.String serviceName )
1351     {
1352         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Excluded Service Info", locale, resourceName, serviceName );
1353         assert _m != null : "'Excluded Service Info' message not found.";
1354         return _m;
1355     }
1356     /**
1357      * Gets the text of the {@code <Excluding Module Info>} message.
1358      * <p><dl>
1359      *   <dt><b>Languages:</b></dt>
1360      *     <dd>English (default)</dd>
1361      *     <dd>Deutsch</dd>
1362      *   <dt><b>Final:</b></dt><dd>No</dd>
1363      * </dl></p>
1364      * @param locale The locale of the message to return.
1365      * @param moduleName Format argument.
1366      * @return The text of the {@code <Excluding Module Info>} message for {@code locale}.
1367      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1368      */
1369     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1370     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1371     private String getExcludingModuleInfo( final java.util.Locale locale, final java.lang.String moduleName )
1372     {
1373         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Excluding Module Info", locale, moduleName );
1374         assert _m != null : "'Excluding Module Info' message not found.";
1375         return _m;
1376     }
1377     /**
1378      * Gets the text of the {@code <Illegal Transformation Result Error>} message.
1379      * <p><dl>
1380      *   <dt><b>Languages:</b></dt>
1381      *     <dd>English (default)</dd>
1382      *     <dd>Deutsch</dd>
1383      *   <dt><b>Final:</b></dt><dd>No</dd>
1384      * </dl></p>
1385      * @param locale The locale of the message to return.
1386      * @param stylesheetInfo Format argument.
1387      * @return The text of the {@code <Illegal Transformation Result Error>} message for {@code locale}.
1388      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1389      */
1390     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1391     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1392     private String getIllegalTransformationResultError( final java.util.Locale locale, final java.lang.String stylesheetInfo )
1393     {
1394         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Illegal Transformation Result Error", locale, stylesheetInfo );
1395         assert _m != null : "'Illegal Transformation Result Error' message not found.";
1396         return _m;
1397     }
1398     /**
1399      * Gets the text of the {@code <Including Module Info>} message.
1400      * <p><dl>
1401      *   <dt><b>Languages:</b></dt>
1402      *     <dd>English (default)</dd>
1403      *     <dd>Deutsch</dd>
1404      *   <dt><b>Final:</b></dt><dd>No</dd>
1405      * </dl></p>
1406      * @param locale The locale of the message to return.
1407      * @param moduleName Format argument.
1408      * @return The text of the {@code <Including Module Info>} message for {@code locale}.
1409      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1410      */
1411     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1412     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1413     private String getIncludingModuleInfo( final java.util.Locale locale, final java.lang.String moduleName )
1414     {
1415         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Including Module Info", locale, moduleName );
1416         assert _m != null : "'Including Module Info' message not found.";
1417         return _m;
1418     }
1419     /**
1420      * Gets the text of the {@code <Invalid Model Message>} message.
1421      * <p><dl>
1422      *   <dt><b>Languages:</b></dt>
1423      *     <dd>English (default)</dd>
1424      *     <dd>Deutsch</dd>
1425      *   <dt><b>Final:</b></dt><dd>No</dd>
1426      * </dl></p>
1427      * @param locale The locale of the message to return.
1428      * @param modelIdentifier Format argument.
1429      * @return The text of the {@code <Invalid Model Message>} message for {@code locale}.
1430      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1431      */
1432     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1433     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1434     private String getInvalidModelMessage( final java.util.Locale locale, final java.lang.String modelIdentifier )
1435     {
1436         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Invalid Model Message", locale, modelIdentifier );
1437         assert _m != null : "'Invalid Model Message' message not found.";
1438         return _m;
1439     }
1440     /**
1441      * Gets the text of the {@code <Long Description Message>} message.
1442      * <p><dl>
1443      *   <dt><b>Languages:</b></dt>
1444      *     <dd>English (default)</dd>
1445      *     <dd>Deutsch</dd>
1446      *   <dt><b>Final:</b></dt><dd>No</dd>
1447      * </dl></p>
1448      * @param locale The locale of the message to return.
1449      * @return The text of the {@code <Long Description Message>} message for {@code locale}.
1450      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1451      */
1452     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1453     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1454     private String getLongDescriptionMessage( final java.util.Locale locale )
1455     {
1456         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Long Description Message", locale );
1457         assert _m != null : "'Long Description Message' message not found.";
1458         return _m;
1459     }
1460     /**
1461      * Gets the text of the {@code <Reading Message>} message.
1462      * <p><dl>
1463      *   <dt><b>Languages:</b></dt>
1464      *     <dd>English (default)</dd>
1465      *     <dd>Deutsch</dd>
1466      *   <dt><b>Final:</b></dt><dd>No</dd>
1467      * </dl></p>
1468      * @param locale The locale of the message to return.
1469      * @param locationInfo Format argument.
1470      * @return The text of the {@code <Reading Message>} message for {@code locale}.
1471      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1472      */
1473     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1474     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1475     private String getReadingMessage( final java.util.Locale locale, final java.lang.String locationInfo )
1476     {
1477         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Reading Message", locale, locationInfo );
1478         assert _m != null : "'Reading Message' message not found.";
1479         return _m;
1480     }
1481     /**
1482      * Gets the text of the {@code <Separator>} message.
1483      * <p><dl>
1484      *   <dt><b>Languages:</b></dt>
1485      *     <dd>English (default)</dd>
1486      *   <dt><b>Final:</b></dt><dd>No</dd>
1487      * </dl></p>
1488      * @param locale The locale of the message to return.
1489      * @return The text of the {@code <Separator>} message for {@code locale}.
1490      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1491      */
1492     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1493     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1494     private String getSeparator( final java.util.Locale locale )
1495     {
1496         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Separator", locale );
1497         assert _m != null : "'Separator' message not found.";
1498         return _m;
1499     }
1500     /**
1501      * Gets the text of the {@code <Short Description Message>} message.
1502      * <p><dl>
1503      *   <dt><b>Languages:</b></dt>
1504      *     <dd>English (default)</dd>
1505      *     <dd>Deutsch</dd>
1506      *   <dt><b>Final:</b></dt><dd>No</dd>
1507      * </dl></p>
1508      * @param locale The locale of the message to return.
1509      * @return The text of the {@code <Short Description Message>} message for {@code locale}.
1510      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1511      */
1512     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1513     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1514     private String getShortDescriptionMessage( final java.util.Locale locale )
1515     {
1516         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Short Description Message", locale );
1517         assert _m != null : "'Short Description Message' message not found.";
1518         return _m;
1519     }
1520     /**
1521      * Gets the text of the {@code <Write Info>} message.
1522      * <p><dl>
1523      *   <dt><b>Languages:</b></dt>
1524      *     <dd>English (default)</dd>
1525      *     <dd>Deutsch</dd>
1526      *   <dt><b>Final:</b></dt><dd>No</dd>
1527      * </dl></p>
1528      * @param locale The locale of the message to return.
1529      * @param fileName Format argument.
1530      * @return The text of the {@code <Write Info>} message for {@code locale}.
1531      * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1532      */
1533     @SuppressWarnings({"unchecked", "unused", "PMD.UnnecessaryFullyQualifiedName"})
1534     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1535     private String getWriteInfo( final java.util.Locale locale, final java.lang.String fileName )
1536     {
1537         final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "Write Info", locale, fileName );
1538         assert _m != null : "'Write Info' message not found.";
1539         return _m;
1540     }
1541     // </editor-fold>
1542     // SECTION-END
1543     // SECTION-START[Generated Command]
1544     // <editor-fold defaultstate="collapsed" desc=" Generated Options ">
1545     /**
1546      * Gets the options of the command.
1547      * <p><strong>Options:</strong>
1548      *   <table border="1" width="100%" cellpadding="3" cellspacing="0">
1549      *     <tr class="TableSubHeadingColor">
1550      *       <th align="left" scope="col" nowrap><b>Specification</b></th>
1551      *       <th align="left" scope="col" nowrap><b>Implementation</b></th>
1552      *     </tr>
1553      *     <tr class="TableRow">
1554      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1555      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Classpath Option</td>
1556      *     </tr>
1557      *     <tr class="TableRow">
1558      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1559      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Document Encoding Option</td>
1560      *     </tr>
1561      *     <tr class="TableRow">
1562      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1563      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Document Option</td>
1564      *     </tr>
1565      *     <tr class="TableRow">
1566      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1567      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Documents Option</td>
1568      *     </tr>
1569      *     <tr class="TableRow">
1570      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1571      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ ModelContextFactory Class Name Option</td>
1572      *     </tr>
1573      *     <tr class="TableRow">
1574      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1575      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Model Option</td>
1576      *     </tr>
1577      *     <tr class="TableRow">
1578      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1579      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Modlet Location Option</td>
1580      *     </tr>
1581      *     <tr class="TableRow">
1582      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1583      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Modlet Schema System Id Option</td>
1584      *     </tr>
1585      *     <tr class="TableRow">
1586      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1587      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Module Excludes Option</td>
1588      *     </tr>
1589      *     <tr class="TableRow">
1590      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1591      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Module Includes Option</td>
1592      *     </tr>
1593      *     <tr class="TableRow">
1594      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1595      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Module Location Option</td>
1596      *     </tr>
1597      *     <tr class="TableRow">
1598      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1599      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Module Name Option</td>
1600      *     </tr>
1601      *     <tr class="TableRow">
1602      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1603      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Module Vendor Option</td>
1604      *     </tr>
1605      *     <tr class="TableRow">
1606      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1607      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Module Version Option</td>
1608      *     </tr>
1609      *     <tr class="TableRow">
1610      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1611      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ No Classpath Resolution Option</td>
1612      *     </tr>
1613      *     <tr class="TableRow">
1614      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1615      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ No Java Validation Option</td>
1616      *     </tr>
1617      *     <tr class="TableRow">
1618      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1619      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ No Model Processing Option</td>
1620      *     </tr>
1621      *     <tr class="TableRow">
1622      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1623      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ No Model Resource Validation Option</td>
1624      *     </tr>
1625      *     <tr class="TableRow">
1626      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1627      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ No Modlet Resource Validation Option</td>
1628      *     </tr>
1629      *     <tr class="TableRow">
1630      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1631      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Platform Provider Location Option</td>
1632      *     </tr>
1633      *     <tr class="TableRow">
1634      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1635      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Provider Location Option</td>
1636      *     </tr>
1637      *     <tr class="TableRow">
1638      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1639      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Resources Option</td>
1640      *     </tr>
1641      *     <tr class="TableRow">
1642      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1643      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Stylesheet Option</td>
1644      *     </tr>
1645      *     <tr class="TableRow">
1646      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1647      *       <td align="left" valign="top" nowrap>JOMC ⁑ CLI ⁑ Transformer Location Option</td>
1648      *     </tr>
1649      *   </table>
1650      * </p>
1651      * @return The options of the command.
1652      */
1653     @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.9", comments = "See http://www.jomc.org/jomc/1.9/jomc-tools-1.9" )
1654     @Override
1655     public org.apache.commons.cli.Options getOptions()
1656     {
1657         final org.apache.commons.cli.Options options = new org.apache.commons.cli.Options();
1658         options.addOption( this.getClasspathOption() );
1659         options.addOption( this.getDocumentEncodingOption() );
1660         options.addOption( this.getDocumentOption() );
1661         options.addOption( this.getDocumentsOption() );
1662         options.addOption( this.getModelContextFactoryOption() );
1663         options.addOption( this.getModelOption() );
1664         options.addOption( this.getModletLocationOption() );
1665         options.addOption( this.getModletSchemaSystemIdOption() );
1666         options.addOption( this.getModuleExcludesOption() );
1667         options.addOption( this.getModuleIncludesOption() );
1668         options.addOption( this.getModuleLocationOption() );
1669         options.addOption( this.getModuleNameOption() );
1670         options.addOption( this.getModuleVendorOption() );
1671         options.addOption( this.getModuleVersionOption() );
1672         options.addOption( this.getNoClasspathResolutionOption() );
1673         options.addOption( this.getNoJavaValidationOption() );
1674         options.addOption( this.getNoModelProcessingOption() );
1675         options.addOption( this.getNoModelResourceValidation() );
1676         options.addOption( this.getNoModletResourceValidation() );
1677         options.addOption( this.getPlatformProviderLocationOption() );
1678         options.addOption( this.getProviderLocationOption() );
1679         options.addOption( this.getResourcesOption() );
1680         options.addOption( this.getStylesheetOption() );
1681         options.addOption( this.getTransformerLocationOption() );
1682         return options;
1683     }
1684     // </editor-fold>
1685     // SECTION-END
1686 
1687 }