View Javadoc
1   // =================== DO NOT EDIT THIS FILE ====================
2   // Generated by Modello 2.1.2,
3   // any modifications will be overwritten.
4   // ==============================================================
5   
6   package org.apache.maven.plugins.assembly.model.io.xpp3;
7   
8     //---------------------------------/
9    //- Imported classes and packages -/
10  //---------------------------------/
11  
12  import java.io.OutputStream;
13  import java.io.Writer;
14  import java.util.Iterator;
15  import org.apache.maven.plugins.assembly.model.Component;
16  import org.apache.maven.plugins.assembly.model.ContainerDescriptorHandlerConfig;
17  import org.apache.maven.plugins.assembly.model.DependencySet;
18  import org.apache.maven.plugins.assembly.model.FileItem;
19  import org.apache.maven.plugins.assembly.model.FileSet;
20  import org.apache.maven.plugins.assembly.model.ModuleBinaries;
21  import org.apache.maven.plugins.assembly.model.ModuleSet;
22  import org.apache.maven.plugins.assembly.model.ModuleSources;
23  import org.apache.maven.plugins.assembly.model.UnpackOptions;
24  import org.codehaus.plexus.util.xml.Xpp3Dom;
25  import org.codehaus.plexus.util.xml.pull.MXSerializer;
26  import org.codehaus.plexus.util.xml.pull.XmlSerializer;
27  
28  /**
29   * Class ComponentXpp3Writer.
30   * 
31   * @version $Revision$ $Date$
32   */
33  @SuppressWarnings( "all" )
34  public class ComponentXpp3Writer
35  {
36  
37        //--------------------------/
38       //- Class/Member Variables -/
39      //--------------------------/
40  
41      /**
42       * Field NAMESPACE.
43       */
44      private static final String NAMESPACE = null;
45  
46      /**
47       * Field fileComment.
48       */
49      private String fileComment = null;
50  
51  
52        //-----------/
53       //- Methods -/
54      //-----------/
55  
56      /**
57       * Method setFileComment.
58       * 
59       * @param fileComment a fileComment object.
60       */
61      public void setFileComment( String fileComment )
62      {
63          this.fileComment = fileComment;
64      } //-- void setFileComment( String )
65  
66      /**
67       * Method write.
68       * 
69       * @param writer a writer object.
70       * @param component a component object.
71       * @throws java.io.IOException java.io.IOException if any.
72       */
73      public void write( Writer writer, Component component )
74          throws java.io.IOException
75      {
76          XmlSerializer serializer = new MXSerializer();
77          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
78          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
79          serializer.setOutput( writer );
80          serializer.startDocument( component.getModelEncoding(), null );
81          writeComponent( component, "component", serializer );
82          serializer.endDocument();
83      } //-- void write( Writer, Component )
84  
85      /**
86       * Method write.
87       * 
88       * @param stream a stream object.
89       * @param component a component object.
90       * @throws java.io.IOException java.io.IOException if any.
91       */
92      public void write( OutputStream stream, Component component )
93          throws java.io.IOException
94      {
95          XmlSerializer serializer = new MXSerializer();
96          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
97          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
98          serializer.setOutput( stream, component.getModelEncoding() );
99          serializer.startDocument( component.getModelEncoding(), null );
100         writeComponent( component, "component", serializer );
101         serializer.endDocument();
102     } //-- void write( OutputStream, Component )
103 
104     /**
105      * Method writeComponent.
106      * 
107      * @param component a component object.
108      * @param serializer a serializer object.
109      * @param tagName a tagName object.
110      * @throws java.io.IOException java.io.IOException if any.
111      */
112     private void writeComponent( Component component, String tagName, XmlSerializer serializer )
113         throws java.io.IOException
114     {
115         if ( this.fileComment != null )
116         {
117         serializer.comment(this.fileComment);
118         }
119         serializer.setPrefix( "", "http://maven.apache.org/ASSEMBLY-COMPONENT/2.2.0" );
120         serializer.setPrefix( "xsi", "http://www.w3.org/2001/XMLSchema-instance" );
121         serializer.startTag( NAMESPACE, tagName );
122         serializer.attribute( "", "xsi:schemaLocation", "http://maven.apache.org/ASSEMBLY-COMPONENT/2.2.0 https://maven.apache.org/xsd/assembly-component-2.2.0.xsd" );
123         if ( ( component.getModuleSets() != null ) && ( component.getModuleSets().size() > 0 ) )
124         {
125             serializer.startTag( NAMESPACE, "moduleSets" );
126             for ( Iterator iter = component.getModuleSets().iterator(); iter.hasNext(); )
127             {
128                 ModuleSet o = (ModuleSet) iter.next();
129                 writeModuleSet( o, "moduleSet", serializer );
130             }
131             serializer.endTag( NAMESPACE, "moduleSets" );
132         }
133         if ( ( component.getFileSets() != null ) && ( component.getFileSets().size() > 0 ) )
134         {
135             serializer.startTag( NAMESPACE, "fileSets" );
136             for ( Iterator iter = component.getFileSets().iterator(); iter.hasNext(); )
137             {
138                 FileSet o = (FileSet) iter.next();
139                 writeFileSet( o, "fileSet", serializer );
140             }
141             serializer.endTag( NAMESPACE, "fileSets" );
142         }
143         if ( ( component.getFiles() != null ) && ( component.getFiles().size() > 0 ) )
144         {
145             serializer.startTag( NAMESPACE, "files" );
146             for ( Iterator iter = component.getFiles().iterator(); iter.hasNext(); )
147             {
148                 FileItem o = (FileItem) iter.next();
149                 writeFileItem( o, "file", serializer );
150             }
151             serializer.endTag( NAMESPACE, "files" );
152         }
153         if ( ( component.getDependencySets() != null ) && ( component.getDependencySets().size() > 0 ) )
154         {
155             serializer.startTag( NAMESPACE, "dependencySets" );
156             for ( Iterator iter = component.getDependencySets().iterator(); iter.hasNext(); )
157             {
158                 DependencySet o = (DependencySet) iter.next();
159                 writeDependencySet( o, "dependencySet", serializer );
160             }
161             serializer.endTag( NAMESPACE, "dependencySets" );
162         }
163         if ( ( component.getContainerDescriptorHandlers() != null ) && ( component.getContainerDescriptorHandlers().size() > 0 ) )
164         {
165             serializer.startTag( NAMESPACE, "containerDescriptorHandlers" );
166             for ( Iterator iter = component.getContainerDescriptorHandlers().iterator(); iter.hasNext(); )
167             {
168                 ContainerDescriptorHandlerConfig o = (ContainerDescriptorHandlerConfig) iter.next();
169                 writeContainerDescriptorHandlerConfig( o, "containerDescriptorHandler", serializer );
170             }
171             serializer.endTag( NAMESPACE, "containerDescriptorHandlers" );
172         }
173         serializer.endTag( NAMESPACE, tagName );
174     } //-- void writeComponent( Component, String, XmlSerializer )
175 
176     /**
177      * Method writeContainerDescriptorHandlerConfig.
178      * 
179      * @param containerDescriptorHandlerConfig a
180      * containerDescriptorHandlerConfig object.
181      * @param serializer a serializer object.
182      * @param tagName a tagName object.
183      * @throws java.io.IOException java.io.IOException if any.
184      */
185     private void writeContainerDescriptorHandlerConfig( ContainerDescriptorHandlerConfig containerDescriptorHandlerConfig, String tagName, XmlSerializer serializer )
186         throws java.io.IOException
187     {
188         serializer.startTag( NAMESPACE, tagName );
189         if ( containerDescriptorHandlerConfig.getHandlerName() != null )
190         {
191             serializer.startTag( NAMESPACE, "handlerName" ).text( containerDescriptorHandlerConfig.getHandlerName() ).endTag( NAMESPACE, "handlerName" );
192         }
193         if ( containerDescriptorHandlerConfig.getConfiguration() != null )
194         {
195             ((Xpp3Dom) containerDescriptorHandlerConfig.getConfiguration()).writeToSerializer( NAMESPACE, serializer );
196         }
197         serializer.endTag( NAMESPACE, tagName );
198     } //-- void writeContainerDescriptorHandlerConfig( ContainerDescriptorHandlerConfig, String, XmlSerializer )
199 
200     /**
201      * Method writeDependencySet.
202      * 
203      * @param dependencySet a dependencySet object.
204      * @param serializer a serializer object.
205      * @param tagName a tagName object.
206      * @throws java.io.IOException java.io.IOException if any.
207      */
208     private void writeDependencySet( DependencySet dependencySet, String tagName, XmlSerializer serializer )
209         throws java.io.IOException
210     {
211         serializer.startTag( NAMESPACE, tagName );
212         if ( dependencySet.getOutputDirectory() != null )
213         {
214             serializer.startTag( NAMESPACE, "outputDirectory" ).text( dependencySet.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
215         }
216         if ( ( dependencySet.getIncludes() != null ) && ( dependencySet.getIncludes().size() > 0 ) )
217         {
218             serializer.startTag( NAMESPACE, "includes" );
219             for ( Iterator iter = dependencySet.getIncludes().iterator(); iter.hasNext(); )
220             {
221                 String include = (String) iter.next();
222                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
223             }
224             serializer.endTag( NAMESPACE, "includes" );
225         }
226         if ( ( dependencySet.getExcludes() != null ) && ( dependencySet.getExcludes().size() > 0 ) )
227         {
228             serializer.startTag( NAMESPACE, "excludes" );
229             for ( Iterator iter = dependencySet.getExcludes().iterator(); iter.hasNext(); )
230             {
231                 String exclude = (String) iter.next();
232                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
233             }
234             serializer.endTag( NAMESPACE, "excludes" );
235         }
236         if ( dependencySet.getFileMode() != null )
237         {
238             serializer.startTag( NAMESPACE, "fileMode" ).text( dependencySet.getFileMode() ).endTag( NAMESPACE, "fileMode" );
239         }
240         if ( dependencySet.getDirectoryMode() != null )
241         {
242             serializer.startTag( NAMESPACE, "directoryMode" ).text( dependencySet.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
243         }
244         if ( dependencySet.isUseStrictFiltering() != false )
245         {
246             serializer.startTag( NAMESPACE, "useStrictFiltering" ).text( String.valueOf( dependencySet.isUseStrictFiltering() ) ).endTag( NAMESPACE, "useStrictFiltering" );
247         }
248         if ( ( dependencySet.getOutputFileNameMapping() != null ) && !dependencySet.getOutputFileNameMapping().equals( "${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}" ) )
249         {
250             serializer.startTag( NAMESPACE, "outputFileNameMapping" ).text( dependencySet.getOutputFileNameMapping() ).endTag( NAMESPACE, "outputFileNameMapping" );
251         }
252         if ( dependencySet.isUnpack() != false )
253         {
254             serializer.startTag( NAMESPACE, "unpack" ).text( String.valueOf( dependencySet.isUnpack() ) ).endTag( NAMESPACE, "unpack" );
255         }
256         if ( dependencySet.getUnpackOptions() != null )
257         {
258             writeUnpackOptions( (UnpackOptions) dependencySet.getUnpackOptions(), "unpackOptions", serializer );
259         }
260         if ( ( dependencySet.getScope() != null ) && !dependencySet.getScope().equals( "runtime" ) )
261         {
262             serializer.startTag( NAMESPACE, "scope" ).text( dependencySet.getScope() ).endTag( NAMESPACE, "scope" );
263         }
264         if ( dependencySet.isUseProjectArtifact() != true )
265         {
266             serializer.startTag( NAMESPACE, "useProjectArtifact" ).text( String.valueOf( dependencySet.isUseProjectArtifact() ) ).endTag( NAMESPACE, "useProjectArtifact" );
267         }
268         if ( dependencySet.isUseProjectAttachments() != false )
269         {
270             serializer.startTag( NAMESPACE, "useProjectAttachments" ).text( String.valueOf( dependencySet.isUseProjectAttachments() ) ).endTag( NAMESPACE, "useProjectAttachments" );
271         }
272         if ( dependencySet.isUseTransitiveDependencies() != true )
273         {
274             serializer.startTag( NAMESPACE, "useTransitiveDependencies" ).text( String.valueOf( dependencySet.isUseTransitiveDependencies() ) ).endTag( NAMESPACE, "useTransitiveDependencies" );
275         }
276         if ( dependencySet.isUseTransitiveFiltering() != false )
277         {
278             serializer.startTag( NAMESPACE, "useTransitiveFiltering" ).text( String.valueOf( dependencySet.isUseTransitiveFiltering() ) ).endTag( NAMESPACE, "useTransitiveFiltering" );
279         }
280         serializer.endTag( NAMESPACE, tagName );
281     } //-- void writeDependencySet( DependencySet, String, XmlSerializer )
282 
283     /**
284      * Method writeFileItem.
285      * 
286      * @param fileItem a fileItem object.
287      * @param serializer a serializer object.
288      * @param tagName a tagName object.
289      * @throws java.io.IOException java.io.IOException if any.
290      */
291     private void writeFileItem( FileItem fileItem, String tagName, XmlSerializer serializer )
292         throws java.io.IOException
293     {
294         serializer.startTag( NAMESPACE, tagName );
295         if ( fileItem.getSource() != null )
296         {
297             serializer.startTag( NAMESPACE, "source" ).text( fileItem.getSource() ).endTag( NAMESPACE, "source" );
298         }
299         if ( ( fileItem.getSources() != null ) && ( fileItem.getSources().size() > 0 ) )
300         {
301             serializer.startTag( NAMESPACE, "sources" );
302             for ( Iterator iter = fileItem.getSources().iterator(); iter.hasNext(); )
303             {
304                 String source = (String) iter.next();
305                 serializer.startTag( NAMESPACE, "source" ).text( source ).endTag( NAMESPACE, "source" );
306             }
307             serializer.endTag( NAMESPACE, "sources" );
308         }
309         if ( fileItem.getOutputDirectory() != null )
310         {
311             serializer.startTag( NAMESPACE, "outputDirectory" ).text( fileItem.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
312         }
313         if ( fileItem.getDestName() != null )
314         {
315             serializer.startTag( NAMESPACE, "destName" ).text( fileItem.getDestName() ).endTag( NAMESPACE, "destName" );
316         }
317         if ( fileItem.getFileMode() != null )
318         {
319             serializer.startTag( NAMESPACE, "fileMode" ).text( fileItem.getFileMode() ).endTag( NAMESPACE, "fileMode" );
320         }
321         if ( fileItem.getLineEnding() != null )
322         {
323             serializer.startTag( NAMESPACE, "lineEnding" ).text( fileItem.getLineEnding() ).endTag( NAMESPACE, "lineEnding" );
324         }
325         if ( fileItem.isFiltered() != false )
326         {
327             serializer.startTag( NAMESPACE, "filtered" ).text( String.valueOf( fileItem.isFiltered() ) ).endTag( NAMESPACE, "filtered" );
328         }
329         serializer.endTag( NAMESPACE, tagName );
330     } //-- void writeFileItem( FileItem, String, XmlSerializer )
331 
332     /**
333      * Method writeFileSet.
334      * 
335      * @param fileSet a fileSet object.
336      * @param serializer a serializer object.
337      * @param tagName a tagName object.
338      * @throws java.io.IOException java.io.IOException if any.
339      */
340     private void writeFileSet( FileSet fileSet, String tagName, XmlSerializer serializer )
341         throws java.io.IOException
342     {
343         serializer.startTag( NAMESPACE, tagName );
344         if ( fileSet.isUseDefaultExcludes() != true )
345         {
346             serializer.startTag( NAMESPACE, "useDefaultExcludes" ).text( String.valueOf( fileSet.isUseDefaultExcludes() ) ).endTag( NAMESPACE, "useDefaultExcludes" );
347         }
348         if ( fileSet.getOutputDirectory() != null )
349         {
350             serializer.startTag( NAMESPACE, "outputDirectory" ).text( fileSet.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
351         }
352         if ( ( fileSet.getIncludes() != null ) && ( fileSet.getIncludes().size() > 0 ) )
353         {
354             serializer.startTag( NAMESPACE, "includes" );
355             for ( Iterator iter = fileSet.getIncludes().iterator(); iter.hasNext(); )
356             {
357                 String include = (String) iter.next();
358                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
359             }
360             serializer.endTag( NAMESPACE, "includes" );
361         }
362         if ( ( fileSet.getExcludes() != null ) && ( fileSet.getExcludes().size() > 0 ) )
363         {
364             serializer.startTag( NAMESPACE, "excludes" );
365             for ( Iterator iter = fileSet.getExcludes().iterator(); iter.hasNext(); )
366             {
367                 String exclude = (String) iter.next();
368                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
369             }
370             serializer.endTag( NAMESPACE, "excludes" );
371         }
372         if ( fileSet.getFileMode() != null )
373         {
374             serializer.startTag( NAMESPACE, "fileMode" ).text( fileSet.getFileMode() ).endTag( NAMESPACE, "fileMode" );
375         }
376         if ( fileSet.getDirectoryMode() != null )
377         {
378             serializer.startTag( NAMESPACE, "directoryMode" ).text( fileSet.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
379         }
380         if ( fileSet.getDirectory() != null )
381         {
382             serializer.startTag( NAMESPACE, "directory" ).text( fileSet.getDirectory() ).endTag( NAMESPACE, "directory" );
383         }
384         if ( fileSet.getLineEnding() != null )
385         {
386             serializer.startTag( NAMESPACE, "lineEnding" ).text( fileSet.getLineEnding() ).endTag( NAMESPACE, "lineEnding" );
387         }
388         if ( fileSet.isFiltered() != false )
389         {
390             serializer.startTag( NAMESPACE, "filtered" ).text( String.valueOf( fileSet.isFiltered() ) ).endTag( NAMESPACE, "filtered" );
391         }
392         if ( ( fileSet.getNonFilteredFileExtensions() != null ) && ( fileSet.getNonFilteredFileExtensions().size() > 0 ) )
393         {
394             serializer.startTag( NAMESPACE, "nonFilteredFileExtensions" );
395             for ( Iterator iter = fileSet.getNonFilteredFileExtensions().iterator(); iter.hasNext(); )
396             {
397                 String nonFilteredFileExtension = (String) iter.next();
398                 serializer.startTag( NAMESPACE, "nonFilteredFileExtension" ).text( nonFilteredFileExtension ).endTag( NAMESPACE, "nonFilteredFileExtension" );
399             }
400             serializer.endTag( NAMESPACE, "nonFilteredFileExtensions" );
401         }
402         serializer.endTag( NAMESPACE, tagName );
403     } //-- void writeFileSet( FileSet, String, XmlSerializer )
404 
405     /**
406      * Method writeModuleBinaries.
407      * 
408      * @param moduleBinaries a moduleBinaries object.
409      * @param serializer a serializer object.
410      * @param tagName a tagName object.
411      * @throws java.io.IOException java.io.IOException if any.
412      */
413     private void writeModuleBinaries( ModuleBinaries moduleBinaries, String tagName, XmlSerializer serializer )
414         throws java.io.IOException
415     {
416         serializer.startTag( NAMESPACE, tagName );
417         if ( moduleBinaries.getOutputDirectory() != null )
418         {
419             serializer.startTag( NAMESPACE, "outputDirectory" ).text( moduleBinaries.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
420         }
421         if ( ( moduleBinaries.getIncludes() != null ) && ( moduleBinaries.getIncludes().size() > 0 ) )
422         {
423             serializer.startTag( NAMESPACE, "includes" );
424             for ( Iterator iter = moduleBinaries.getIncludes().iterator(); iter.hasNext(); )
425             {
426                 String include = (String) iter.next();
427                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
428             }
429             serializer.endTag( NAMESPACE, "includes" );
430         }
431         if ( ( moduleBinaries.getExcludes() != null ) && ( moduleBinaries.getExcludes().size() > 0 ) )
432         {
433             serializer.startTag( NAMESPACE, "excludes" );
434             for ( Iterator iter = moduleBinaries.getExcludes().iterator(); iter.hasNext(); )
435             {
436                 String exclude = (String) iter.next();
437                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
438             }
439             serializer.endTag( NAMESPACE, "excludes" );
440         }
441         if ( moduleBinaries.getFileMode() != null )
442         {
443             serializer.startTag( NAMESPACE, "fileMode" ).text( moduleBinaries.getFileMode() ).endTag( NAMESPACE, "fileMode" );
444         }
445         if ( moduleBinaries.getDirectoryMode() != null )
446         {
447             serializer.startTag( NAMESPACE, "directoryMode" ).text( moduleBinaries.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
448         }
449         if ( moduleBinaries.getAttachmentClassifier() != null )
450         {
451             serializer.startTag( NAMESPACE, "attachmentClassifier" ).text( moduleBinaries.getAttachmentClassifier() ).endTag( NAMESPACE, "attachmentClassifier" );
452         }
453         if ( moduleBinaries.isIncludeDependencies() != true )
454         {
455             serializer.startTag( NAMESPACE, "includeDependencies" ).text( String.valueOf( moduleBinaries.isIncludeDependencies() ) ).endTag( NAMESPACE, "includeDependencies" );
456         }
457         if ( ( moduleBinaries.getDependencySets() != null ) && ( moduleBinaries.getDependencySets().size() > 0 ) )
458         {
459             serializer.startTag( NAMESPACE, "dependencySets" );
460             for ( Iterator iter = moduleBinaries.getDependencySets().iterator(); iter.hasNext(); )
461             {
462                 DependencySet o = (DependencySet) iter.next();
463                 writeDependencySet( o, "dependencySet", serializer );
464             }
465             serializer.endTag( NAMESPACE, "dependencySets" );
466         }
467         if ( moduleBinaries.isUnpack() != true )
468         {
469             serializer.startTag( NAMESPACE, "unpack" ).text( String.valueOf( moduleBinaries.isUnpack() ) ).endTag( NAMESPACE, "unpack" );
470         }
471         if ( moduleBinaries.getUnpackOptions() != null )
472         {
473             writeUnpackOptions( (UnpackOptions) moduleBinaries.getUnpackOptions(), "unpackOptions", serializer );
474         }
475         if ( ( moduleBinaries.getOutputFileNameMapping() != null ) && !moduleBinaries.getOutputFileNameMapping().equals( "${module.artifactId}-${module.version}${dashClassifier?}.${module.extension}" ) )
476         {
477             serializer.startTag( NAMESPACE, "outputFileNameMapping" ).text( moduleBinaries.getOutputFileNameMapping() ).endTag( NAMESPACE, "outputFileNameMapping" );
478         }
479         serializer.endTag( NAMESPACE, tagName );
480     } //-- void writeModuleBinaries( ModuleBinaries, String, XmlSerializer )
481 
482     /**
483      * Method writeModuleSet.
484      * 
485      * @param moduleSet a moduleSet object.
486      * @param serializer a serializer object.
487      * @param tagName a tagName object.
488      * @throws java.io.IOException java.io.IOException if any.
489      */
490     private void writeModuleSet( ModuleSet moduleSet, String tagName, XmlSerializer serializer )
491         throws java.io.IOException
492     {
493         serializer.startTag( NAMESPACE, tagName );
494         if ( moduleSet.isUseAllReactorProjects() != false )
495         {
496             serializer.startTag( NAMESPACE, "useAllReactorProjects" ).text( String.valueOf( moduleSet.isUseAllReactorProjects() ) ).endTag( NAMESPACE, "useAllReactorProjects" );
497         }
498         if ( moduleSet.isIncludeSubModules() != true )
499         {
500             serializer.startTag( NAMESPACE, "includeSubModules" ).text( String.valueOf( moduleSet.isIncludeSubModules() ) ).endTag( NAMESPACE, "includeSubModules" );
501         }
502         if ( ( moduleSet.getIncludes() != null ) && ( moduleSet.getIncludes().size() > 0 ) )
503         {
504             serializer.startTag( NAMESPACE, "includes" );
505             for ( Iterator iter = moduleSet.getIncludes().iterator(); iter.hasNext(); )
506             {
507                 String include = (String) iter.next();
508                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
509             }
510             serializer.endTag( NAMESPACE, "includes" );
511         }
512         if ( ( moduleSet.getExcludes() != null ) && ( moduleSet.getExcludes().size() > 0 ) )
513         {
514             serializer.startTag( NAMESPACE, "excludes" );
515             for ( Iterator iter = moduleSet.getExcludes().iterator(); iter.hasNext(); )
516             {
517                 String exclude = (String) iter.next();
518                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
519             }
520             serializer.endTag( NAMESPACE, "excludes" );
521         }
522         if ( moduleSet.getSources() != null )
523         {
524             writeModuleSources( (ModuleSources) moduleSet.getSources(), "sources", serializer );
525         }
526         if ( moduleSet.getBinaries() != null )
527         {
528             writeModuleBinaries( (ModuleBinaries) moduleSet.getBinaries(), "binaries", serializer );
529         }
530         serializer.endTag( NAMESPACE, tagName );
531     } //-- void writeModuleSet( ModuleSet, String, XmlSerializer )
532 
533     /**
534      * Method writeModuleSources.
535      * 
536      * @param moduleSources a moduleSources object.
537      * @param serializer a serializer object.
538      * @param tagName a tagName object.
539      * @throws java.io.IOException java.io.IOException if any.
540      */
541     private void writeModuleSources( ModuleSources moduleSources, String tagName, XmlSerializer serializer )
542         throws java.io.IOException
543     {
544         serializer.startTag( NAMESPACE, tagName );
545         if ( moduleSources.isUseDefaultExcludes() != true )
546         {
547             serializer.startTag( NAMESPACE, "useDefaultExcludes" ).text( String.valueOf( moduleSources.isUseDefaultExcludes() ) ).endTag( NAMESPACE, "useDefaultExcludes" );
548         }
549         if ( moduleSources.getOutputDirectory() != null )
550         {
551             serializer.startTag( NAMESPACE, "outputDirectory" ).text( moduleSources.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
552         }
553         if ( ( moduleSources.getIncludes() != null ) && ( moduleSources.getIncludes().size() > 0 ) )
554         {
555             serializer.startTag( NAMESPACE, "includes" );
556             for ( Iterator iter = moduleSources.getIncludes().iterator(); iter.hasNext(); )
557             {
558                 String include = (String) iter.next();
559                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
560             }
561             serializer.endTag( NAMESPACE, "includes" );
562         }
563         if ( ( moduleSources.getExcludes() != null ) && ( moduleSources.getExcludes().size() > 0 ) )
564         {
565             serializer.startTag( NAMESPACE, "excludes" );
566             for ( Iterator iter = moduleSources.getExcludes().iterator(); iter.hasNext(); )
567             {
568                 String exclude = (String) iter.next();
569                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
570             }
571             serializer.endTag( NAMESPACE, "excludes" );
572         }
573         if ( moduleSources.getFileMode() != null )
574         {
575             serializer.startTag( NAMESPACE, "fileMode" ).text( moduleSources.getFileMode() ).endTag( NAMESPACE, "fileMode" );
576         }
577         if ( moduleSources.getDirectoryMode() != null )
578         {
579             serializer.startTag( NAMESPACE, "directoryMode" ).text( moduleSources.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
580         }
581         if ( ( moduleSources.getFileSets() != null ) && ( moduleSources.getFileSets().size() > 0 ) )
582         {
583             serializer.startTag( NAMESPACE, "fileSets" );
584             for ( Iterator iter = moduleSources.getFileSets().iterator(); iter.hasNext(); )
585             {
586                 FileSet o = (FileSet) iter.next();
587                 writeFileSet( o, "fileSet", serializer );
588             }
589             serializer.endTag( NAMESPACE, "fileSets" );
590         }
591         if ( moduleSources.isIncludeModuleDirectory() != true )
592         {
593             serializer.startTag( NAMESPACE, "includeModuleDirectory" ).text( String.valueOf( moduleSources.isIncludeModuleDirectory() ) ).endTag( NAMESPACE, "includeModuleDirectory" );
594         }
595         if ( moduleSources.isExcludeSubModuleDirectories() != true )
596         {
597             serializer.startTag( NAMESPACE, "excludeSubModuleDirectories" ).text( String.valueOf( moduleSources.isExcludeSubModuleDirectories() ) ).endTag( NAMESPACE, "excludeSubModuleDirectories" );
598         }
599         if ( ( moduleSources.getOutputDirectoryMapping() != null ) && !moduleSources.getOutputDirectoryMapping().equals( "${module.artifactId}" ) )
600         {
601             serializer.startTag( NAMESPACE, "outputDirectoryMapping" ).text( moduleSources.getOutputDirectoryMapping() ).endTag( NAMESPACE, "outputDirectoryMapping" );
602         }
603         serializer.endTag( NAMESPACE, tagName );
604     } //-- void writeModuleSources( ModuleSources, String, XmlSerializer )
605 
606     /**
607      * Method writeUnpackOptions.
608      * 
609      * @param unpackOptions a unpackOptions object.
610      * @param serializer a serializer object.
611      * @param tagName a tagName object.
612      * @throws java.io.IOException java.io.IOException if any.
613      */
614     private void writeUnpackOptions( UnpackOptions unpackOptions, String tagName, XmlSerializer serializer )
615         throws java.io.IOException
616     {
617         serializer.startTag( NAMESPACE, tagName );
618         if ( ( unpackOptions.getIncludes() != null ) && ( unpackOptions.getIncludes().size() > 0 ) )
619         {
620             serializer.startTag( NAMESPACE, "includes" );
621             for ( Iterator iter = unpackOptions.getIncludes().iterator(); iter.hasNext(); )
622             {
623                 String include = (String) iter.next();
624                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
625             }
626             serializer.endTag( NAMESPACE, "includes" );
627         }
628         if ( ( unpackOptions.getExcludes() != null ) && ( unpackOptions.getExcludes().size() > 0 ) )
629         {
630             serializer.startTag( NAMESPACE, "excludes" );
631             for ( Iterator iter = unpackOptions.getExcludes().iterator(); iter.hasNext(); )
632             {
633                 String exclude = (String) iter.next();
634                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
635             }
636             serializer.endTag( NAMESPACE, "excludes" );
637         }
638         if ( unpackOptions.isFiltered() != false )
639         {
640             serializer.startTag( NAMESPACE, "filtered" ).text( String.valueOf( unpackOptions.isFiltered() ) ).endTag( NAMESPACE, "filtered" );
641         }
642         if ( ( unpackOptions.getNonFilteredFileExtensions() != null ) && ( unpackOptions.getNonFilteredFileExtensions().size() > 0 ) )
643         {
644             serializer.startTag( NAMESPACE, "nonFilteredFileExtensions" );
645             for ( Iterator iter = unpackOptions.getNonFilteredFileExtensions().iterator(); iter.hasNext(); )
646             {
647                 String nonFilteredFileExtension = (String) iter.next();
648                 serializer.startTag( NAMESPACE, "nonFilteredFileExtension" ).text( nonFilteredFileExtension ).endTag( NAMESPACE, "nonFilteredFileExtension" );
649             }
650             serializer.endTag( NAMESPACE, "nonFilteredFileExtensions" );
651         }
652         if ( unpackOptions.getLineEnding() != null )
653         {
654             serializer.startTag( NAMESPACE, "lineEnding" ).text( unpackOptions.getLineEnding() ).endTag( NAMESPACE, "lineEnding" );
655         }
656         if ( unpackOptions.isUseDefaultExcludes() != true )
657         {
658             serializer.startTag( NAMESPACE, "useDefaultExcludes" ).text( String.valueOf( unpackOptions.isUseDefaultExcludes() ) ).endTag( NAMESPACE, "useDefaultExcludes" );
659         }
660         if ( unpackOptions.getEncoding() != null )
661         {
662             serializer.startTag( NAMESPACE, "encoding" ).text( unpackOptions.getEncoding() ).endTag( NAMESPACE, "encoding" );
663         }
664         serializer.endTag( NAMESPACE, tagName );
665     } //-- void writeUnpackOptions( UnpackOptions, String, XmlSerializer )
666 
667 }