001    // SECTION-START[License Header]
002    // <editor-fold defaultstate="collapsed" desc=" Generated License ">
003    /*
004     *   Java Object Management and Configuration
005     *   Copyright (C) Christian Schulte, 2005-206
006     *   All rights reserved.
007     *
008     *   Redistribution and use in source and binary forms, with or without
009     *   modification, are permitted provided that the following conditions
010     *   are met:
011     *
012     *     o Redistributions of source code must retain the above copyright
013     *       notice, this list of conditions and the following disclaimer.
014     *
015     *     o Redistributions in binary form must reproduce the above copyright
016     *       notice, this list of conditions and the following disclaimer in
017     *       the documentation and/or other materials provided with the
018     *       distribution.
019     *
020     *   THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
021     *   INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
022     *   AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
023     *   THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY DIRECT, INDIRECT,
024     *   INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
025     *   NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
026     *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
027     *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
028     *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
029     *   THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
030     *
031     *   $JOMC: MergeModletsCommand.java 4463 2012-03-28 00:46:22Z schulte2005 $
032     *
033     */
034    // </editor-fold>
035    // SECTION-END
036    package org.jomc.cli.commands;
037    
038    import java.io.File;
039    import java.io.IOException;
040    import java.net.URL;
041    import java.util.Arrays;
042    import java.util.Enumeration;
043    import java.util.Iterator;
044    import java.util.List;
045    import java.util.logging.Level;
046    import javax.xml.bind.JAXBElement;
047    import javax.xml.bind.JAXBException;
048    import javax.xml.bind.Marshaller;
049    import javax.xml.bind.Unmarshaller;
050    import javax.xml.bind.util.JAXBResult;
051    import javax.xml.bind.util.JAXBSource;
052    import javax.xml.transform.Transformer;
053    import javax.xml.transform.TransformerException;
054    import javax.xml.transform.stream.StreamSource;
055    import org.apache.commons.cli.CommandLine;
056    import org.jomc.modlet.DefaultModletProvider;
057    import org.jomc.modlet.ModelContext;
058    import org.jomc.modlet.ModelException;
059    import org.jomc.modlet.ModelValidationReport;
060    import org.jomc.modlet.Modlet;
061    import org.jomc.modlet.ModletObject;
062    import org.jomc.modlet.Modlets;
063    import org.jomc.modlet.ObjectFactory;
064    
065    // SECTION-START[Documentation]
066    // <editor-fold defaultstate="collapsed" desc=" Generated Documentation ">
067    /**
068     * JOMC CLI {@code merge-modlets} command implementation.
069     *
070     * <dl>
071     *   <dt><b>Identifier:</b></dt><dd>JOMC CLI merge-modlets Command</dd>
072     *   <dt><b>Name:</b></dt><dd>default-merge-modlets</dd>
073     *   <dt><b>Specifications:</b></dt>
074     *     <dd>JOMC CLI Command @ 1.0</dd>
075     *   <dt><b>Abstract:</b></dt><dd>No</dd>
076     *   <dt><b>Final:</b></dt><dd>No</dd>
077     *   <dt><b>Stateless:</b></dt><dd>No</dd>
078     * </dl>
079     *
080     * @author <a href="mailto:schulte2005@users.sourceforge.net">Christian Schulte</a> 1.0
081     * @version 1.2.5
082     */
083    // </editor-fold>
084    // SECTION-END
085    // SECTION-START[Annotations]
086    // <editor-fold defaultstate="collapsed" desc=" Generated Annotations ">
087    @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
088    // </editor-fold>
089    // SECTION-END
090    public final class MergeModletsCommand extends AbstractModletCommand
091    {
092        // SECTION-START[Command]
093        // SECTION-END
094        // SECTION-START[MergeModletsCommand]
095    
096        protected void executeCommand( final CommandLine commandLine ) throws CommandExecutionException
097        {
098            if ( commandLine == null )
099            {
100                throw new NullPointerException( "commandLine" );
101            }
102    
103            CommandLineClassLoader classLoader = null;
104            boolean suppressExceptionOnClose = true;
105    
106            try
107            {
108                classLoader = new CommandLineClassLoader( commandLine );
109                final Modlets modlets = new Modlets();
110                final ModelContext context = this.createModelContext( commandLine, classLoader );
111                final Marshaller marshaller = context.createMarshaller( ModletObject.MODEL_PUBLIC_ID );
112                final Unmarshaller unmarshaller = context.createUnmarshaller( ModletObject.MODEL_PUBLIC_ID );
113    
114                if ( !commandLine.hasOption( this.getNoModletResourceValidation().getOpt() ) )
115                {
116                    unmarshaller.setSchema( context.createSchema( ModletObject.MODEL_PUBLIC_ID ) );
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 modletVersion = null;
126                if ( commandLine.hasOption( this.getModletVersionOption().getOpt() ) )
127                {
128                    modletVersion = commandLine.getOptionValue( this.getModletVersionOption().getOpt() );
129                }
130    
131                String modletVendor = null;
132                if ( commandLine.hasOption( this.getModletVendorOption().getOpt() ) )
133                {
134                    modletVendor = commandLine.getOptionValue( this.getModletVendorOption().getOpt() );
135                }
136    
137                if ( commandLine.hasOption( this.getDocumentsOption().getOpt() ) )
138                {
139                    for ( 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 Modlet )
153                        {
154                            modlets.getModlet().add( (Modlet) o );
155                        }
156                        else if ( o instanceof Modlets )
157                        {
158                            modlets.getModlet().addAll( ( (Modlets) o ).getModlet() );
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                            DefaultModletProvider.getDefaultModletLocation()
183                        };
184                    }
185    
186                    for ( 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 Modlet )
206                            {
207                                modlets.getModlet().add( (Modlet) o );
208                            }
209                            else if ( o instanceof Modlets )
210                            {
211                                modlets.getModlet().addAll( ( (Modlets) o ).getModlet() );
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                for ( final Iterator<Modlet> it = modlets.getModlet().iterator(); it.hasNext(); )
224                {
225                    if ( this.getApplicationModlet().equals( it.next().getName() ) )
226                    {
227                        it.remove();
228                    }
229                }
230    
231                modlets.getModlet().addAll( classLoader.getExcludedModlets().getModlet() );
232    
233                if ( commandLine.hasOption( this.getModletIncludesOption().getOpt() ) )
234                {
235                    final String[] values = commandLine.getOptionValues( this.getModletIncludesOption().getOpt() );
236    
237                    if ( values != null )
238                    {
239                        final List<String> includes = Arrays.asList( values );
240    
241                        for ( final Iterator<Modlet> it = modlets.getModlet().iterator(); it.hasNext(); )
242                        {
243                            final Modlet m = it.next();
244                            if ( !includes.contains( m.getName() ) )
245                            {
246                                this.log( Level.INFO, this.getExcludingModletInfo( this.getLocale(), m.getName() ), null );
247                                it.remove();
248                            }
249                            else
250                            {
251                                this.log( Level.INFO, this.getIncludingModletInfo( this.getLocale(), m.getName() ), null );
252                            }
253                        }
254                    }
255                }
256    
257                if ( commandLine.hasOption( this.getModletExcludesOption().getOpt() ) )
258                {
259                    final String[] values = commandLine.getOptionValues( this.getModletExcludesOption().getOpt() );
260    
261                    if ( values != null )
262                    {
263                        for ( String exclude : values )
264                        {
265                            final Modlet m = modlets.getModlet( exclude );
266    
267                            if ( m != null )
268                            {
269                                this.log( Level.INFO, this.getExcludingModletInfo( this.getLocale(), m.getName() ), null );
270                                modlets.getModlet().remove( m );
271                            }
272                        }
273                    }
274                }
275    
276                final ModelValidationReport validationReport =
277                    context.validateModel( ModletObject.MODEL_PUBLIC_ID,
278                                           new JAXBSource( marshaller, new ObjectFactory().createModlets( modlets ) ) );
279    
280                this.log( validationReport, marshaller );
281    
282                if ( !validationReport.isModelValid() )
283                {
284                    throw new CommandExecutionException( this.getInvalidModelMessage(
285                        this.getLocale(), ModletObject.MODEL_PUBLIC_ID ) );
286    
287                }
288    
289                Modlet mergedModlet = modlets.getMergedModlet(
290                    commandLine.getOptionValue( this.getModletNameOption().getOpt() ), this.getModel( commandLine ) );
291    
292                mergedModlet.setVersion( modletVersion );
293                mergedModlet.setVendor( modletVendor );
294    
295                final File modletFile = new File( commandLine.getOptionValue( this.getDocumentOption().getOpt() ) );
296    
297                if ( stylesheetFile != null )
298                {
299                    final Transformer transformer = this.createTransformer( new StreamSource( stylesheetFile ) );
300                    final JAXBSource source =
301                        new JAXBSource( marshaller, new ObjectFactory().createModlet( mergedModlet ) );
302    
303                    final JAXBResult result = new JAXBResult( unmarshaller );
304                    unmarshaller.setSchema( null );
305                    transformer.transform( source, result );
306    
307                    if ( result.getResult() instanceof JAXBElement<?>
308                         && ( (JAXBElement<?>) result.getResult() ).getValue() instanceof Modlet )
309                    {
310                        mergedModlet = (Modlet) ( (JAXBElement<?>) result.getResult() ).getValue();
311                    }
312                    else
313                    {
314                        throw new CommandExecutionException( this.getIllegalTransformationResultError(
315                            this.getLocale(), stylesheetFile.getAbsolutePath() ) );
316    
317                    }
318                }
319    
320                marshaller.setProperty( Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE );
321    
322                if ( commandLine.hasOption( this.getDocumentEncodingOption().getOpt() ) )
323                {
324                    marshaller.setProperty( Marshaller.JAXB_ENCODING,
325                                            commandLine.getOptionValue( this.getDocumentEncodingOption().getOpt() ) );
326    
327                }
328    
329                marshaller.setSchema( context.createSchema( ModletObject.MODEL_PUBLIC_ID ) );
330                marshaller.marshal( new ObjectFactory().createModlet( mergedModlet ), modletFile );
331    
332                if ( this.isLoggable( Level.INFO ) )
333                {
334                    this.log( Level.INFO, this.getWriteInfo( this.getLocale(), modletFile.getAbsolutePath() ), null );
335                }
336    
337                suppressExceptionOnClose = false;
338            }
339            catch ( final IOException e )
340            {
341                throw new CommandExecutionException( getExceptionMessage( e ), e );
342            }
343            catch ( final TransformerException e )
344            {
345                String message = getExceptionMessage( e );
346                if ( message == null )
347                {
348                    message = getExceptionMessage( e.getException() );
349                }
350    
351                throw new CommandExecutionException( message, e );
352            }
353            catch ( final JAXBException e )
354            {
355                String message = getExceptionMessage( e );
356                if ( message == null )
357                {
358                    message = getExceptionMessage( e.getLinkedException() );
359                }
360    
361                throw new CommandExecutionException( message, e );
362            }
363            catch ( final ModelException e )
364            {
365                throw new CommandExecutionException( getExceptionMessage( e ), e );
366            }
367            finally
368            {
369                try
370                {
371                    if ( classLoader != null )
372                    {
373                        classLoader.close();
374                    }
375                }
376                catch ( final IOException e )
377                {
378                    if ( suppressExceptionOnClose )
379                    {
380                        this.log( Level.SEVERE, getExceptionMessage( e ), e );
381                    }
382                    else
383                    {
384                        throw new CommandExecutionException( getExceptionMessage( e ), e );
385                    }
386                }
387            }
388        }
389    
390        // SECTION-END
391        // SECTION-START[Constructors]
392        // <editor-fold defaultstate="collapsed" desc=" Generated Constructors ">
393        /** Creates a new {@code MergeModletsCommand} instance. */
394        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
395        public MergeModletsCommand()
396        {
397            // SECTION-START[Default Constructor]
398            super();
399            // SECTION-END
400        }
401        // </editor-fold>
402        // SECTION-END
403        // SECTION-START[Dependencies]
404        // <editor-fold defaultstate="collapsed" desc=" Generated Dependencies ">
405        /**
406         * Gets the {@code <ClasspathOption>} dependency.
407         * <p>
408         *   This method returns the {@code <JOMC CLI Classpath Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
409         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
410         * </p>
411         * <dl>
412         *   <dt><b>Final:</b></dt><dd>No</dd>
413         * </dl>
414         * @return The {@code <ClasspathOption>} dependency.
415         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
416         */
417        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
418        private org.apache.commons.cli.Option getClasspathOption()
419        {
420            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ClasspathOption" );
421            assert _d != null : "'ClasspathOption' dependency not found.";
422            return _d;
423        }
424        /**
425         * Gets the {@code <DocumentEncodingOption>} dependency.
426         * <p>
427         *   This method returns the {@code <JOMC CLI Document Encoding Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
428         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
429         * </p>
430         * <dl>
431         *   <dt><b>Final:</b></dt><dd>No</dd>
432         * </dl>
433         * @return The {@code <DocumentEncodingOption>} dependency.
434         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
435         */
436        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
437        private org.apache.commons.cli.Option getDocumentEncodingOption()
438        {
439            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "DocumentEncodingOption" );
440            assert _d != null : "'DocumentEncodingOption' dependency not found.";
441            return _d;
442        }
443        /**
444         * Gets the {@code <DocumentOption>} dependency.
445         * <p>
446         *   This method returns the {@code <JOMC CLI Document Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
447         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
448         * </p>
449         * <p><strong>Properties:</strong>
450         *   <table border="1" width="100%" cellpadding="3" cellspacing="0">
451         *     <tr class="TableSubHeadingColor">
452         *       <th align="left" scope="col" nowrap><b>Name</b></th>
453         *       <th align="left" scope="col" nowrap><b>Type</b></th>
454         *       <th align="left" scope="col" nowrap><b>Documentation</b></th>
455         *     </tr>
456         *     <tr class="TableRow">
457         *       <td align="left" valign="top" nowrap>{@code <required>}</td>
458         *       <td align="left" valign="top" nowrap>{@code boolean}</td>
459         *       <td align="left" valign="top"></td>
460         *     </tr>
461         *   </table>
462         * </p>
463         * <dl>
464         *   <dt><b>Final:</b></dt><dd>No</dd>
465         * </dl>
466         * @return The {@code <DocumentOption>} dependency.
467         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
468         */
469        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
470        private org.apache.commons.cli.Option getDocumentOption()
471        {
472            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "DocumentOption" );
473            assert _d != null : "'DocumentOption' dependency not found.";
474            return _d;
475        }
476        /**
477         * Gets the {@code <DocumentsOption>} dependency.
478         * <p>
479         *   This method returns the {@code <JOMC CLI Documents Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
480         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
481         * </p>
482         * <dl>
483         *   <dt><b>Final:</b></dt><dd>No</dd>
484         * </dl>
485         * @return The {@code <DocumentsOption>} dependency.
486         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
487         */
488        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
489        private org.apache.commons.cli.Option getDocumentsOption()
490        {
491            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "DocumentsOption" );
492            assert _d != null : "'DocumentsOption' dependency not found.";
493            return _d;
494        }
495        /**
496         * Gets the {@code <Locale>} dependency.
497         * <p>
498         *   This method returns the {@code <default>} object of the {@code <java.util.Locale>} specification at specification level 1.1.
499         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
500         * </p>
501         * <dl>
502         *   <dt><b>Final:</b></dt><dd>No</dd>
503         * </dl>
504         * @return The {@code <Locale>} dependency.
505         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
506         */
507        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
508        private java.util.Locale getLocale()
509        {
510            final java.util.Locale _d = (java.util.Locale) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "Locale" );
511            assert _d != null : "'Locale' dependency not found.";
512            return _d;
513        }
514        /**
515         * Gets the {@code <ModelContextFactoryOption>} dependency.
516         * <p>
517         *   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.
518         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
519         * </p>
520         * <dl>
521         *   <dt><b>Final:</b></dt><dd>No</dd>
522         * </dl>
523         * @return The {@code <ModelContextFactoryOption>} dependency.
524         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
525         */
526        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
527        private org.apache.commons.cli.Option getModelContextFactoryOption()
528        {
529            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ModelContextFactoryOption" );
530            assert _d != null : "'ModelContextFactoryOption' dependency not found.";
531            return _d;
532        }
533        /**
534         * Gets the {@code <ModelOption>} dependency.
535         * <p>
536         *   This method returns the {@code <JOMC CLI Model Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
537         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
538         * </p>
539         * <dl>
540         *   <dt><b>Final:</b></dt><dd>No</dd>
541         * </dl>
542         * @return The {@code <ModelOption>} dependency.
543         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
544         */
545        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
546        private org.apache.commons.cli.Option getModelOption()
547        {
548            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ModelOption" );
549            assert _d != null : "'ModelOption' dependency not found.";
550            return _d;
551        }
552        /**
553         * Gets the {@code <ModletExcludesOption>} dependency.
554         * <p>
555         *   This method returns the {@code <JOMC CLI Modlet Excludes Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
556         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
557         * </p>
558         * <dl>
559         *   <dt><b>Final:</b></dt><dd>No</dd>
560         * </dl>
561         * @return The {@code <ModletExcludesOption>} dependency.
562         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
563         */
564        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
565        private org.apache.commons.cli.Option getModletExcludesOption()
566        {
567            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ModletExcludesOption" );
568            assert _d != null : "'ModletExcludesOption' dependency not found.";
569            return _d;
570        }
571        /**
572         * Gets the {@code <ModletIncludesOption>} dependency.
573         * <p>
574         *   This method returns the {@code <JOMC CLI Modlet Includes Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
575         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
576         * </p>
577         * <dl>
578         *   <dt><b>Final:</b></dt><dd>No</dd>
579         * </dl>
580         * @return The {@code <ModletIncludesOption>} dependency.
581         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
582         */
583        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
584        private org.apache.commons.cli.Option getModletIncludesOption()
585        {
586            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ModletIncludesOption" );
587            assert _d != null : "'ModletIncludesOption' dependency not found.";
588            return _d;
589        }
590        /**
591         * Gets the {@code <ModletLocationOption>} dependency.
592         * <p>
593         *   This method returns the {@code <JOMC CLI Modlet Location Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
594         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
595         * </p>
596         * <dl>
597         *   <dt><b>Final:</b></dt><dd>No</dd>
598         * </dl>
599         * @return The {@code <ModletLocationOption>} dependency.
600         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
601         */
602        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
603        private org.apache.commons.cli.Option getModletLocationOption()
604        {
605            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ModletLocationOption" );
606            assert _d != null : "'ModletLocationOption' dependency not found.";
607            return _d;
608        }
609        /**
610         * Gets the {@code <ModletNameOption>} dependency.
611         * <p>
612         *   This method returns the {@code <JOMC CLI Modlet Name Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
613         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
614         * </p>
615         * <p><strong>Properties:</strong>
616         *   <table border="1" width="100%" cellpadding="3" cellspacing="0">
617         *     <tr class="TableSubHeadingColor">
618         *       <th align="left" scope="col" nowrap><b>Name</b></th>
619         *       <th align="left" scope="col" nowrap><b>Type</b></th>
620         *       <th align="left" scope="col" nowrap><b>Documentation</b></th>
621         *     </tr>
622         *     <tr class="TableRow">
623         *       <td align="left" valign="top" nowrap>{@code <required>}</td>
624         *       <td align="left" valign="top" nowrap>{@code boolean}</td>
625         *       <td align="left" valign="top"></td>
626         *     </tr>
627         *   </table>
628         * </p>
629         * <dl>
630         *   <dt><b>Final:</b></dt><dd>No</dd>
631         * </dl>
632         * @return The {@code <ModletNameOption>} dependency.
633         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
634         */
635        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
636        private org.apache.commons.cli.Option getModletNameOption()
637        {
638            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ModletNameOption" );
639            assert _d != null : "'ModletNameOption' dependency not found.";
640            return _d;
641        }
642        /**
643         * Gets the {@code <ModletSchemaSystemIdOption>} dependency.
644         * <p>
645         *   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.
646         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
647         * </p>
648         * <dl>
649         *   <dt><b>Final:</b></dt><dd>No</dd>
650         * </dl>
651         * @return The {@code <ModletSchemaSystemIdOption>} dependency.
652         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
653         */
654        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
655        private org.apache.commons.cli.Option getModletSchemaSystemIdOption()
656        {
657            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ModletSchemaSystemIdOption" );
658            assert _d != null : "'ModletSchemaSystemIdOption' dependency not found.";
659            return _d;
660        }
661        /**
662         * Gets the {@code <ModletVendorOption>} dependency.
663         * <p>
664         *   This method returns the {@code <JOMC CLI Modlet Vendor Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
665         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
666         * </p>
667         * <dl>
668         *   <dt><b>Final:</b></dt><dd>No</dd>
669         * </dl>
670         * @return The {@code <ModletVendorOption>} dependency.
671         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
672         */
673        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
674        private org.apache.commons.cli.Option getModletVendorOption()
675        {
676            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ModletVendorOption" );
677            assert _d != null : "'ModletVendorOption' dependency not found.";
678            return _d;
679        }
680        /**
681         * Gets the {@code <ModletVersionOption>} dependency.
682         * <p>
683         *   This method returns the {@code <JOMC CLI Modlet Version Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
684         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
685         * </p>
686         * <dl>
687         *   <dt><b>Final:</b></dt><dd>No</dd>
688         * </dl>
689         * @return The {@code <ModletVersionOption>} dependency.
690         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
691         */
692        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
693        private org.apache.commons.cli.Option getModletVersionOption()
694        {
695            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ModletVersionOption" );
696            assert _d != null : "'ModletVersionOption' dependency not found.";
697            return _d;
698        }
699        /**
700         * Gets the {@code <NoModletResourceValidation>} dependency.
701         * <p>
702         *   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.
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 <NoModletResourceValidation>} dependency.
709         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
710         */
711        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
712        private org.apache.commons.cli.Option getNoModletResourceValidation()
713        {
714            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "NoModletResourceValidation" );
715            assert _d != null : "'NoModletResourceValidation' dependency not found.";
716            return _d;
717        }
718        /**
719         * Gets the {@code <PlatformProviderLocationOption>} dependency.
720         * <p>
721         *   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.
722         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
723         * </p>
724         * <dl>
725         *   <dt><b>Final:</b></dt><dd>No</dd>
726         * </dl>
727         * @return The {@code <PlatformProviderLocationOption>} dependency.
728         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
729         */
730        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
731        private org.apache.commons.cli.Option getPlatformProviderLocationOption()
732        {
733            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "PlatformProviderLocationOption" );
734            assert _d != null : "'PlatformProviderLocationOption' dependency not found.";
735            return _d;
736        }
737        /**
738         * Gets the {@code <ProviderLocationOption>} dependency.
739         * <p>
740         *   This method returns the {@code <JOMC CLI Provider Location Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
741         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
742         * </p>
743         * <dl>
744         *   <dt><b>Final:</b></dt><dd>No</dd>
745         * </dl>
746         * @return The {@code <ProviderLocationOption>} dependency.
747         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
748         */
749        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
750        private org.apache.commons.cli.Option getProviderLocationOption()
751        {
752            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ProviderLocationOption" );
753            assert _d != null : "'ProviderLocationOption' dependency not found.";
754            return _d;
755        }
756        /**
757         * Gets the {@code <ResourcesOption>} dependency.
758         * <p>
759         *   This method returns the {@code <JOMC CLI Resources Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
760         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
761         * </p>
762         * <dl>
763         *   <dt><b>Final:</b></dt><dd>No</dd>
764         * </dl>
765         * @return The {@code <ResourcesOption>} dependency.
766         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
767         */
768        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
769        private org.apache.commons.cli.Option getResourcesOption()
770        {
771            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "ResourcesOption" );
772            assert _d != null : "'ResourcesOption' dependency not found.";
773            return _d;
774        }
775        /**
776         * Gets the {@code <StylesheetOption>} dependency.
777         * <p>
778         *   This method returns the {@code <JOMC CLI Stylesheet Option>} object of the {@code <JOMC CLI Command Option>} specification at specification level 1.2.
779         *   That specification does not apply to any scope. A new object is returned whenever requested and bound to this instance.
780         * </p>
781         * <dl>
782         *   <dt><b>Final:</b></dt><dd>No</dd>
783         * </dl>
784         * @return The {@code <StylesheetOption>} dependency.
785         * @throws org.jomc.ObjectManagementException if getting the dependency instance fails.
786         */
787        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
788        private org.apache.commons.cli.Option getStylesheetOption()
789        {
790            final org.apache.commons.cli.Option _d = (org.apache.commons.cli.Option) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getDependency( this, "StylesheetOption" );
791            assert _d != null : "'StylesheetOption' dependency not found.";
792            return _d;
793        }
794        // </editor-fold>
795        // SECTION-END
796        // SECTION-START[Properties]
797        // <editor-fold defaultstate="collapsed" desc=" Generated Properties ">
798        /**
799         * Gets the value of the {@code <abbreviatedCommandName>} property.
800         * <p><dl>
801         *   <dt><b>Final:</b></dt><dd>No</dd>
802         * </dl></p>
803         * @return Abbreviated name of the command.
804         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
805         */
806        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
807        private java.lang.String getAbbreviatedCommandName()
808        {
809            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "abbreviatedCommandName" );
810            assert _p != null : "'abbreviatedCommandName' property not found.";
811            return _p;
812        }
813        /**
814         * Gets the value of the {@code <applicationModlet>} property.
815         * <p><dl>
816         *   <dt><b>Final:</b></dt><dd>Yes</dd>
817         * </dl></p>
818         * @return Name of the 'shaded' application modlet.
819         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
820         */
821        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
822        private java.lang.String getApplicationModlet()
823        {
824            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "applicationModlet" );
825            assert _p != null : "'applicationModlet' property not found.";
826            return _p;
827        }
828        /**
829         * Gets the value of the {@code <commandName>} property.
830         * <p><dl>
831         *   <dt><b>Final:</b></dt><dd>No</dd>
832         * </dl></p>
833         * @return Name of the command.
834         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
835         */
836        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
837        private java.lang.String getCommandName()
838        {
839            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "commandName" );
840            assert _p != null : "'commandName' property not found.";
841            return _p;
842        }
843        /**
844         * Gets the value of the {@code <modletExcludes>} property.
845         * <p><dl>
846         *   <dt><b>Final:</b></dt><dd>Yes</dd>
847         * </dl></p>
848         * @return List of modlet names to exclude from any {@code META-INF/jomc-modlet.xml} files separated by {@code :}.
849         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
850         */
851        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
852        private java.lang.String getModletExcludes()
853        {
854            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "modletExcludes" );
855            assert _p != null : "'modletExcludes' property not found.";
856            return _p;
857        }
858        /**
859         * Gets the value of the {@code <providerExcludes>} property.
860         * <p><dl>
861         *   <dt><b>Final:</b></dt><dd>Yes</dd>
862         * </dl></p>
863         * @return List of providers to exclude from any {@code META-INF/services} files separated by {@code :}.
864         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
865         */
866        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
867        private java.lang.String getProviderExcludes()
868        {
869            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "providerExcludes" );
870            assert _p != null : "'providerExcludes' property not found.";
871            return _p;
872        }
873        /**
874         * Gets the value of the {@code <schemaExcludes>} property.
875         * <p><dl>
876         *   <dt><b>Final:</b></dt><dd>Yes</dd>
877         * </dl></p>
878         * @return List of schema context-ids to exclude from any {@code META-INF/jomc-modlet.xml} files separated by {@code :}.
879         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
880         */
881        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
882        private java.lang.String getSchemaExcludes()
883        {
884            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "schemaExcludes" );
885            assert _p != null : "'schemaExcludes' property not found.";
886            return _p;
887        }
888        /**
889         * Gets the value of the {@code <serviceExcludes>} property.
890         * <p><dl>
891         *   <dt><b>Final:</b></dt><dd>Yes</dd>
892         * </dl></p>
893         * @return List of service classes to exclude from any {@code META-INF/jomc-modlet.xml} files separated by {@code :}.
894         * @throws org.jomc.ObjectManagementException if getting the property instance fails.
895         */
896        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
897        private java.lang.String getServiceExcludes()
898        {
899            final java.lang.String _p = (java.lang.String) org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getProperty( this, "serviceExcludes" );
900            assert _p != null : "'serviceExcludes' property not found.";
901            return _p;
902        }
903        // </editor-fold>
904        // SECTION-END
905        // SECTION-START[Messages]
906        // <editor-fold defaultstate="collapsed" desc=" Generated Messages ">
907        /**
908         * Gets the text of the {@code <applicationTitle>} message.
909         * <p><dl>
910         *   <dt><b>Languages:</b></dt>
911         *     <dd>English (default)</dd>
912         *   <dt><b>Final:</b></dt><dd>No</dd>
913         * </dl></p>
914         * @param locale The locale of the message to return.
915         * @return The text of the {@code <applicationTitle>} message for {@code locale}.
916         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
917         */
918        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
919        private String getApplicationTitle( final java.util.Locale locale )
920        {
921            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "applicationTitle", locale );
922            assert _m != null : "'applicationTitle' message not found.";
923            return _m;
924        }
925        /**
926         * Gets the text of the {@code <cannotProcessMessage>} message.
927         * <p><dl>
928         *   <dt><b>Languages:</b></dt>
929         *     <dd>English (default)</dd>
930         *     <dd>Deutsch</dd>
931         *   <dt><b>Final:</b></dt><dd>No</dd>
932         * </dl></p>
933         * @param locale The locale of the message to return.
934         * @param itemInfo Format argument.
935         * @param detailMessage Format argument.
936         * @return The text of the {@code <cannotProcessMessage>} message for {@code locale}.
937         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
938         */
939        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
940        private String getCannotProcessMessage( final java.util.Locale locale, final java.lang.String itemInfo, final java.lang.String detailMessage )
941        {
942            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "cannotProcessMessage", locale, itemInfo, detailMessage );
943            assert _m != null : "'cannotProcessMessage' message not found.";
944            return _m;
945        }
946        /**
947         * Gets the text of the {@code <classpathElementInfo>} message.
948         * <p><dl>
949         *   <dt><b>Languages:</b></dt>
950         *     <dd>English (default)</dd>
951         *     <dd>Deutsch</dd>
952         *   <dt><b>Final:</b></dt><dd>No</dd>
953         * </dl></p>
954         * @param locale The locale of the message to return.
955         * @param classpathElement Format argument.
956         * @return The text of the {@code <classpathElementInfo>} message for {@code locale}.
957         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
958         */
959        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
960        private String getClasspathElementInfo( final java.util.Locale locale, final java.lang.String classpathElement )
961        {
962            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "classpathElementInfo", locale, classpathElement );
963            assert _m != null : "'classpathElementInfo' message not found.";
964            return _m;
965        }
966        /**
967         * Gets the text of the {@code <classpathElementNotFoundWarning>} message.
968         * <p><dl>
969         *   <dt><b>Languages:</b></dt>
970         *     <dd>English (default)</dd>
971         *     <dd>Deutsch</dd>
972         *   <dt><b>Final:</b></dt><dd>No</dd>
973         * </dl></p>
974         * @param locale The locale of the message to return.
975         * @param fileName Format argument.
976         * @return The text of the {@code <classpathElementNotFoundWarning>} message for {@code locale}.
977         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
978         */
979        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
980        private String getClasspathElementNotFoundWarning( final java.util.Locale locale, final java.lang.String fileName )
981        {
982            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "classpathElementNotFoundWarning", locale, fileName );
983            assert _m != null : "'classpathElementNotFoundWarning' message not found.";
984            return _m;
985        }
986        /**
987         * Gets the text of the {@code <commandFailureMessage>} message.
988         * <p><dl>
989         *   <dt><b>Languages:</b></dt>
990         *     <dd>English (default)</dd>
991         *     <dd>Deutsch</dd>
992         *   <dt><b>Final:</b></dt><dd>No</dd>
993         * </dl></p>
994         * @param locale The locale of the message to return.
995         * @param toolName Format argument.
996         * @return The text of the {@code <commandFailureMessage>} message for {@code locale}.
997         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
998         */
999        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1000        private String getCommandFailureMessage( final java.util.Locale locale, final java.lang.String toolName )
1001        {
1002            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "commandFailureMessage", locale, toolName );
1003            assert _m != null : "'commandFailureMessage' message not found.";
1004            return _m;
1005        }
1006        /**
1007         * Gets the text of the {@code <commandInfoMessage>} message.
1008         * <p><dl>
1009         *   <dt><b>Languages:</b></dt>
1010         *     <dd>English (default)</dd>
1011         *     <dd>Deutsch</dd>
1012         *   <dt><b>Final:</b></dt><dd>No</dd>
1013         * </dl></p>
1014         * @param locale The locale of the message to return.
1015         * @param toolName Format argument.
1016         * @return The text of the {@code <commandInfoMessage>} message for {@code locale}.
1017         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1018         */
1019        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1020        private String getCommandInfoMessage( final java.util.Locale locale, final java.lang.String toolName )
1021        {
1022            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "commandInfoMessage", locale, toolName );
1023            assert _m != null : "'commandInfoMessage' message not found.";
1024            return _m;
1025        }
1026        /**
1027         * Gets the text of the {@code <commandSuccessMessage>} message.
1028         * <p><dl>
1029         *   <dt><b>Languages:</b></dt>
1030         *     <dd>English (default)</dd>
1031         *     <dd>Deutsch</dd>
1032         *   <dt><b>Final:</b></dt><dd>No</dd>
1033         * </dl></p>
1034         * @param locale The locale of the message to return.
1035         * @param toolName Format argument.
1036         * @return The text of the {@code <commandSuccessMessage>} message for {@code locale}.
1037         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1038         */
1039        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1040        private String getCommandSuccessMessage( final java.util.Locale locale, final java.lang.String toolName )
1041        {
1042            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "commandSuccessMessage", locale, toolName );
1043            assert _m != null : "'commandSuccessMessage' message not found.";
1044            return _m;
1045        }
1046        /**
1047         * Gets the text of the {@code <defaultLogLevelInfo>} message.
1048         * <p><dl>
1049         *   <dt><b>Languages:</b></dt>
1050         *     <dd>English (default)</dd>
1051         *     <dd>Deutsch</dd>
1052         *   <dt><b>Final:</b></dt><dd>No</dd>
1053         * </dl></p>
1054         * @param locale The locale of the message to return.
1055         * @param defaultLogLevel Format argument.
1056         * @return The text of the {@code <defaultLogLevelInfo>} message for {@code locale}.
1057         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1058         */
1059        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1060        private String getDefaultLogLevelInfo( final java.util.Locale locale, final java.lang.String defaultLogLevel )
1061        {
1062            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "defaultLogLevelInfo", locale, defaultLogLevel );
1063            assert _m != null : "'defaultLogLevelInfo' message not found.";
1064            return _m;
1065        }
1066        /**
1067         * Gets the text of the {@code <documentFileInfo>} message.
1068         * <p><dl>
1069         *   <dt><b>Languages:</b></dt>
1070         *     <dd>English (default)</dd>
1071         *     <dd>Deutsch</dd>
1072         *   <dt><b>Final:</b></dt><dd>No</dd>
1073         * </dl></p>
1074         * @param locale The locale of the message to return.
1075         * @param documentFile Format argument.
1076         * @return The text of the {@code <documentFileInfo>} message for {@code locale}.
1077         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1078         */
1079        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1080        private String getDocumentFileInfo( final java.util.Locale locale, final java.lang.String documentFile )
1081        {
1082            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "documentFileInfo", locale, documentFile );
1083            assert _m != null : "'documentFileInfo' message not found.";
1084            return _m;
1085        }
1086        /**
1087         * Gets the text of the {@code <documentFileNotFoundWarning>} message.
1088         * <p><dl>
1089         *   <dt><b>Languages:</b></dt>
1090         *     <dd>English (default)</dd>
1091         *     <dd>Deutsch</dd>
1092         *   <dt><b>Final:</b></dt><dd>No</dd>
1093         * </dl></p>
1094         * @param locale The locale of the message to return.
1095         * @param fileName Format argument.
1096         * @return The text of the {@code <documentFileNotFoundWarning>} message for {@code locale}.
1097         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1098         */
1099        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1100        private String getDocumentFileNotFoundWarning( final java.util.Locale locale, final java.lang.String fileName )
1101        {
1102            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "documentFileNotFoundWarning", locale, fileName );
1103            assert _m != null : "'documentFileNotFoundWarning' message not found.";
1104            return _m;
1105        }
1106        /**
1107         * Gets the text of the {@code <excludedModletInfo>} message.
1108         * <p><dl>
1109         *   <dt><b>Languages:</b></dt>
1110         *     <dd>English (default)</dd>
1111         *     <dd>Deutsch</dd>
1112         *   <dt><b>Final:</b></dt><dd>No</dd>
1113         * </dl></p>
1114         * @param locale The locale of the message to return.
1115         * @param resourceName Format argument.
1116         * @param modletIdentifier Format argument.
1117         * @return The text of the {@code <excludedModletInfo>} message for {@code locale}.
1118         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1119         */
1120        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1121        private String getExcludedModletInfo( final java.util.Locale locale, final java.lang.String resourceName, final java.lang.String modletIdentifier )
1122        {
1123            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "excludedModletInfo", locale, resourceName, modletIdentifier );
1124            assert _m != null : "'excludedModletInfo' message not found.";
1125            return _m;
1126        }
1127        /**
1128         * Gets the text of the {@code <excludedProviderInfo>} message.
1129         * <p><dl>
1130         *   <dt><b>Languages:</b></dt>
1131         *     <dd>English (default)</dd>
1132         *     <dd>Deutsch</dd>
1133         *   <dt><b>Final:</b></dt><dd>No</dd>
1134         * </dl></p>
1135         * @param locale The locale of the message to return.
1136         * @param resourceName Format argument.
1137         * @param providerName Format argument.
1138         * @return The text of the {@code <excludedProviderInfo>} message for {@code locale}.
1139         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1140         */
1141        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1142        private String getExcludedProviderInfo( final java.util.Locale locale, final java.lang.String resourceName, final java.lang.String providerName )
1143        {
1144            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "excludedProviderInfo", locale, resourceName, providerName );
1145            assert _m != null : "'excludedProviderInfo' message not found.";
1146            return _m;
1147        }
1148        /**
1149         * Gets the text of the {@code <excludedSchemaInfo>} message.
1150         * <p><dl>
1151         *   <dt><b>Languages:</b></dt>
1152         *     <dd>English (default)</dd>
1153         *     <dd>Deutsch</dd>
1154         *   <dt><b>Final:</b></dt><dd>No</dd>
1155         * </dl></p>
1156         * @param locale The locale of the message to return.
1157         * @param resourceName Format argument.
1158         * @param contextId Format argument.
1159         * @return The text of the {@code <excludedSchemaInfo>} message for {@code locale}.
1160         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1161         */
1162        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1163        private String getExcludedSchemaInfo( final java.util.Locale locale, final java.lang.String resourceName, final java.lang.String contextId )
1164        {
1165            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "excludedSchemaInfo", locale, resourceName, contextId );
1166            assert _m != null : "'excludedSchemaInfo' message not found.";
1167            return _m;
1168        }
1169        /**
1170         * Gets the text of the {@code <excludedServiceInfo>} message.
1171         * <p><dl>
1172         *   <dt><b>Languages:</b></dt>
1173         *     <dd>English (default)</dd>
1174         *     <dd>Deutsch</dd>
1175         *   <dt><b>Final:</b></dt><dd>No</dd>
1176         * </dl></p>
1177         * @param locale The locale of the message to return.
1178         * @param resourceName Format argument.
1179         * @param serviceName Format argument.
1180         * @return The text of the {@code <excludedServiceInfo>} message for {@code locale}.
1181         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1182         */
1183        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1184        private String getExcludedServiceInfo( final java.util.Locale locale, final java.lang.String resourceName, final java.lang.String serviceName )
1185        {
1186            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "excludedServiceInfo", locale, resourceName, serviceName );
1187            assert _m != null : "'excludedServiceInfo' message not found.";
1188            return _m;
1189        }
1190        /**
1191         * Gets the text of the {@code <excludingModletInfo>} message.
1192         * <p><dl>
1193         *   <dt><b>Languages:</b></dt>
1194         *     <dd>English (default)</dd>
1195         *     <dd>Deutsch</dd>
1196         *   <dt><b>Final:</b></dt><dd>No</dd>
1197         * </dl></p>
1198         * @param locale The locale of the message to return.
1199         * @param modletName Format argument.
1200         * @return The text of the {@code <excludingModletInfo>} message for {@code locale}.
1201         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1202         */
1203        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1204        private String getExcludingModletInfo( final java.util.Locale locale, final java.lang.String modletName )
1205        {
1206            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "excludingModletInfo", locale, modletName );
1207            assert _m != null : "'excludingModletInfo' message not found.";
1208            return _m;
1209        }
1210        /**
1211         * Gets the text of the {@code <illegalTransformationResultError>} message.
1212         * <p><dl>
1213         *   <dt><b>Languages:</b></dt>
1214         *     <dd>English (default)</dd>
1215         *     <dd>Deutsch</dd>
1216         *   <dt><b>Final:</b></dt><dd>No</dd>
1217         * </dl></p>
1218         * @param locale The locale of the message to return.
1219         * @param stylesheetInfo Format argument.
1220         * @return The text of the {@code <illegalTransformationResultError>} message for {@code locale}.
1221         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1222         */
1223        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1224        private String getIllegalTransformationResultError( final java.util.Locale locale, final java.lang.String stylesheetInfo )
1225        {
1226            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "illegalTransformationResultError", locale, stylesheetInfo );
1227            assert _m != null : "'illegalTransformationResultError' message not found.";
1228            return _m;
1229        }
1230        /**
1231         * Gets the text of the {@code <includingModletInfo>} message.
1232         * <p><dl>
1233         *   <dt><b>Languages:</b></dt>
1234         *     <dd>English (default)</dd>
1235         *     <dd>Deutsch</dd>
1236         *   <dt><b>Final:</b></dt><dd>No</dd>
1237         * </dl></p>
1238         * @param locale The locale of the message to return.
1239         * @param modletName Format argument.
1240         * @return The text of the {@code <includingModletInfo>} message for {@code locale}.
1241         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1242         */
1243        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1244        private String getIncludingModletInfo( final java.util.Locale locale, final java.lang.String modletName )
1245        {
1246            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "includingModletInfo", locale, modletName );
1247            assert _m != null : "'includingModletInfo' message not found.";
1248            return _m;
1249        }
1250        /**
1251         * Gets the text of the {@code <invalidModelMessage>} message.
1252         * <p><dl>
1253         *   <dt><b>Languages:</b></dt>
1254         *     <dd>English (default)</dd>
1255         *     <dd>Deutsch</dd>
1256         *   <dt><b>Final:</b></dt><dd>No</dd>
1257         * </dl></p>
1258         * @param locale The locale of the message to return.
1259         * @param modelIdentifier Format argument.
1260         * @return The text of the {@code <invalidModelMessage>} message for {@code locale}.
1261         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1262         */
1263        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1264        private String getInvalidModelMessage( final java.util.Locale locale, final java.lang.String modelIdentifier )
1265        {
1266            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "invalidModelMessage", locale, modelIdentifier );
1267            assert _m != null : "'invalidModelMessage' message not found.";
1268            return _m;
1269        }
1270        /**
1271         * Gets the text of the {@code <longDescriptionMessage>} message.
1272         * <p><dl>
1273         *   <dt><b>Languages:</b></dt>
1274         *     <dd>English (default)</dd>
1275         *     <dd>Deutsch</dd>
1276         *   <dt><b>Final:</b></dt><dd>No</dd>
1277         * </dl></p>
1278         * @param locale The locale of the message to return.
1279         * @return The text of the {@code <longDescriptionMessage>} message for {@code locale}.
1280         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1281         */
1282        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1283        private String getLongDescriptionMessage( final java.util.Locale locale )
1284        {
1285            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "longDescriptionMessage", locale );
1286            assert _m != null : "'longDescriptionMessage' message not found.";
1287            return _m;
1288        }
1289        /**
1290         * Gets the text of the {@code <readingMessage>} message.
1291         * <p><dl>
1292         *   <dt><b>Languages:</b></dt>
1293         *     <dd>English (default)</dd>
1294         *     <dd>Deutsch</dd>
1295         *   <dt><b>Final:</b></dt><dd>No</dd>
1296         * </dl></p>
1297         * @param locale The locale of the message to return.
1298         * @param locationInfo Format argument.
1299         * @return The text of the {@code <readingMessage>} message for {@code locale}.
1300         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1301         */
1302        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1303        private String getReadingMessage( final java.util.Locale locale, final java.lang.String locationInfo )
1304        {
1305            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "readingMessage", locale, locationInfo );
1306            assert _m != null : "'readingMessage' message not found.";
1307            return _m;
1308        }
1309        /**
1310         * Gets the text of the {@code <separator>} message.
1311         * <p><dl>
1312         *   <dt><b>Languages:</b></dt>
1313         *     <dd>English (default)</dd>
1314         *   <dt><b>Final:</b></dt><dd>No</dd>
1315         * </dl></p>
1316         * @param locale The locale of the message to return.
1317         * @return The text of the {@code <separator>} message for {@code locale}.
1318         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1319         */
1320        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1321        private String getSeparator( final java.util.Locale locale )
1322        {
1323            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "separator", locale );
1324            assert _m != null : "'separator' message not found.";
1325            return _m;
1326        }
1327        /**
1328         * Gets the text of the {@code <shortDescriptionMessage>} message.
1329         * <p><dl>
1330         *   <dt><b>Languages:</b></dt>
1331         *     <dd>English (default)</dd>
1332         *     <dd>Deutsch</dd>
1333         *   <dt><b>Final:</b></dt><dd>No</dd>
1334         * </dl></p>
1335         * @param locale The locale of the message to return.
1336         * @return The text of the {@code <shortDescriptionMessage>} message for {@code locale}.
1337         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1338         */
1339        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1340        private String getShortDescriptionMessage( final java.util.Locale locale )
1341        {
1342            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "shortDescriptionMessage", locale );
1343            assert _m != null : "'shortDescriptionMessage' message not found.";
1344            return _m;
1345        }
1346        /**
1347         * Gets the text of the {@code <writeInfo>} message.
1348         * <p><dl>
1349         *   <dt><b>Languages:</b></dt>
1350         *     <dd>English (default)</dd>
1351         *     <dd>Deutsch</dd>
1352         *   <dt><b>Final:</b></dt><dd>No</dd>
1353         * </dl></p>
1354         * @param locale The locale of the message to return.
1355         * @param fileName Format argument.
1356         * @return The text of the {@code <writeInfo>} message for {@code locale}.
1357         * @throws org.jomc.ObjectManagementException if getting the message instance fails.
1358         */
1359        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1360        private String getWriteInfo( final java.util.Locale locale, final java.lang.String fileName )
1361        {
1362            final String _m = org.jomc.ObjectManagerFactory.getObjectManager( this.getClass().getClassLoader() ).getMessage( this, "writeInfo", locale, fileName );
1363            assert _m != null : "'writeInfo' message not found.";
1364            return _m;
1365        }
1366        // </editor-fold>
1367        // SECTION-END
1368        // SECTION-START[Generated Command]
1369        // <editor-fold defaultstate="collapsed" desc=" Generated Options ">
1370        /**
1371         * Gets the options of the command.
1372         * <p><strong>Options:</strong>
1373         *   <table border="1" width="100%" cellpadding="3" cellspacing="0">
1374         *     <tr class="TableSubHeadingColor">
1375         *       <th align="left" scope="col" nowrap><b>Specification</b></th>
1376         *       <th align="left" scope="col" nowrap><b>Implementation</b></th>
1377         *     </tr>
1378         *     <tr class="TableRow">
1379         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1380         *       <td align="left" valign="top" nowrap>JOMC CLI Classpath Option</td>
1381         *     </tr>
1382         *     <tr class="TableRow">
1383         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1384         *       <td align="left" valign="top" nowrap>JOMC CLI Document Encoding Option</td>
1385         *     </tr>
1386         *     <tr class="TableRow">
1387         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1388         *       <td align="left" valign="top" nowrap>JOMC CLI Document Option</td>
1389         *     </tr>
1390         *     <tr class="TableRow">
1391         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1392         *       <td align="left" valign="top" nowrap>JOMC CLI Documents Option</td>
1393         *     </tr>
1394         *     <tr class="TableRow">
1395         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1396         *       <td align="left" valign="top" nowrap>JOMC CLI ModelContextFactory Class Name Option</td>
1397         *     </tr>
1398         *     <tr class="TableRow">
1399         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1400         *       <td align="left" valign="top" nowrap>JOMC CLI Model Option</td>
1401         *     </tr>
1402         *     <tr class="TableRow">
1403         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1404         *       <td align="left" valign="top" nowrap>JOMC CLI Modlet Excludes Option</td>
1405         *     </tr>
1406         *     <tr class="TableRow">
1407         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1408         *       <td align="left" valign="top" nowrap>JOMC CLI Modlet Includes Option</td>
1409         *     </tr>
1410         *     <tr class="TableRow">
1411         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1412         *       <td align="left" valign="top" nowrap>JOMC CLI Modlet Location Option</td>
1413         *     </tr>
1414         *     <tr class="TableRow">
1415         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1416         *       <td align="left" valign="top" nowrap>JOMC CLI Modlet Name Option</td>
1417         *     </tr>
1418         *     <tr class="TableRow">
1419         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1420         *       <td align="left" valign="top" nowrap>JOMC CLI Modlet Schema System Id Option</td>
1421         *     </tr>
1422         *     <tr class="TableRow">
1423         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1424         *       <td align="left" valign="top" nowrap>JOMC CLI Modlet Vendor Option</td>
1425         *     </tr>
1426         *     <tr class="TableRow">
1427         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1428         *       <td align="left" valign="top" nowrap>JOMC CLI Modlet Version Option</td>
1429         *     </tr>
1430         *     <tr class="TableRow">
1431         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1432         *       <td align="left" valign="top" nowrap>JOMC CLI No Modlet Resource Validation Option</td>
1433         *     </tr>
1434         *     <tr class="TableRow">
1435         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1436         *       <td align="left" valign="top" nowrap>JOMC CLI Platform Provider Location Option</td>
1437         *     </tr>
1438         *     <tr class="TableRow">
1439         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1440         *       <td align="left" valign="top" nowrap>JOMC CLI Provider Location Option</td>
1441         *     </tr>
1442         *     <tr class="TableRow">
1443         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1444         *       <td align="left" valign="top" nowrap>JOMC CLI Resources Option</td>
1445         *     </tr>
1446         *     <tr class="TableRow">
1447         *       <td align="left" valign="top" nowrap>JOMC CLI Command Option {@code (org.apache.commons.cli.Option)} @ 1.2</td>
1448         *       <td align="left" valign="top" nowrap>JOMC CLI Stylesheet Option</td>
1449         *     </tr>
1450         *   </table>
1451         * </p>
1452         * @return The options of the command.
1453         */
1454        @javax.annotation.Generated( value = "org.jomc.tools.SourceFileProcessor 1.2.2", comments = "See http://jomc.sourceforge.net/jomc/1.2/jomc-tools-1.2.2" )
1455        @Override
1456        public org.apache.commons.cli.Options getOptions()
1457        {
1458            final org.apache.commons.cli.Options options = new org.apache.commons.cli.Options();
1459            options.addOption( this.getClasspathOption() );
1460            options.addOption( this.getDocumentEncodingOption() );
1461            options.addOption( this.getDocumentOption() );
1462            options.addOption( this.getDocumentsOption() );
1463            options.addOption( this.getModelContextFactoryOption() );
1464            options.addOption( this.getModelOption() );
1465            options.addOption( this.getModletExcludesOption() );
1466            options.addOption( this.getModletIncludesOption() );
1467            options.addOption( this.getModletLocationOption() );
1468            options.addOption( this.getModletNameOption() );
1469            options.addOption( this.getModletSchemaSystemIdOption() );
1470            options.addOption( this.getModletVendorOption() );
1471            options.addOption( this.getModletVersionOption() );
1472            options.addOption( this.getNoModletResourceValidation() );
1473            options.addOption( this.getPlatformProviderLocationOption() );
1474            options.addOption( this.getProviderLocationOption() );
1475            options.addOption( this.getResourcesOption() );
1476            options.addOption( this.getStylesheetOption() );
1477            return options;
1478        }
1479        // </editor-fold>
1480        // SECTION-END
1481    }