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.Assembly;
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 AssemblyXpp3Writer.
30   * 
31   * @version $Revision$ $Date$
32   */
33  @SuppressWarnings( "all" )
34  public class AssemblyXpp3Writer
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 assembly a assembly object.
71       * @throws java.io.IOException java.io.IOException if any.
72       */
73      public void write( Writer writer, Assembly assembly )
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( assembly.getModelEncoding(), null );
81          writeAssembly( assembly, "assembly", serializer );
82          serializer.endDocument();
83      } //-- void write( Writer, Assembly )
84  
85      /**
86       * Method write.
87       * 
88       * @param stream a stream object.
89       * @param assembly a assembly object.
90       * @throws java.io.IOException java.io.IOException if any.
91       */
92      public void write( OutputStream stream, Assembly assembly )
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, assembly.getModelEncoding() );
99          serializer.startDocument( assembly.getModelEncoding(), null );
100         writeAssembly( assembly, "assembly", serializer );
101         serializer.endDocument();
102     } //-- void write( OutputStream, Assembly )
103 
104     /**
105      * Method writeAssembly.
106      * 
107      * @param assembly a assembly 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 writeAssembly( Assembly assembly, 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/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/2.2.0 https://maven.apache.org/xsd/assembly-2.2.0.xsd" );
123         if ( assembly.getId() != null )
124         {
125             serializer.startTag( NAMESPACE, "id" ).text( assembly.getId() ).endTag( NAMESPACE, "id" );
126         }
127         if ( ( assembly.getFormats() != null ) && ( assembly.getFormats().size() > 0 ) )
128         {
129             serializer.startTag( NAMESPACE, "formats" );
130             for ( Iterator iter = assembly.getFormats().iterator(); iter.hasNext(); )
131             {
132                 String format = (String) iter.next();
133                 serializer.startTag( NAMESPACE, "format" ).text( format ).endTag( NAMESPACE, "format" );
134             }
135             serializer.endTag( NAMESPACE, "formats" );
136         }
137         if ( assembly.isIncludeBaseDirectory() != true )
138         {
139             serializer.startTag( NAMESPACE, "includeBaseDirectory" ).text( String.valueOf( assembly.isIncludeBaseDirectory() ) ).endTag( NAMESPACE, "includeBaseDirectory" );
140         }
141         if ( assembly.getBaseDirectory() != null )
142         {
143             serializer.startTag( NAMESPACE, "baseDirectory" ).text( assembly.getBaseDirectory() ).endTag( NAMESPACE, "baseDirectory" );
144         }
145         if ( assembly.isIncludeSiteDirectory() != false )
146         {
147             serializer.startTag( NAMESPACE, "includeSiteDirectory" ).text( String.valueOf( assembly.isIncludeSiteDirectory() ) ).endTag( NAMESPACE, "includeSiteDirectory" );
148         }
149         if ( ( assembly.getContainerDescriptorHandlers() != null ) && ( assembly.getContainerDescriptorHandlers().size() > 0 ) )
150         {
151             serializer.startTag( NAMESPACE, "containerDescriptorHandlers" );
152             for ( Iterator iter = assembly.getContainerDescriptorHandlers().iterator(); iter.hasNext(); )
153             {
154                 ContainerDescriptorHandlerConfig o = (ContainerDescriptorHandlerConfig) iter.next();
155                 writeContainerDescriptorHandlerConfig( o, "containerDescriptorHandler", serializer );
156             }
157             serializer.endTag( NAMESPACE, "containerDescriptorHandlers" );
158         }
159         if ( ( assembly.getModuleSets() != null ) && ( assembly.getModuleSets().size() > 0 ) )
160         {
161             serializer.startTag( NAMESPACE, "moduleSets" );
162             for ( Iterator iter = assembly.getModuleSets().iterator(); iter.hasNext(); )
163             {
164                 ModuleSet o = (ModuleSet) iter.next();
165                 writeModuleSet( o, "moduleSet", serializer );
166             }
167             serializer.endTag( NAMESPACE, "moduleSets" );
168         }
169         if ( ( assembly.getFileSets() != null ) && ( assembly.getFileSets().size() > 0 ) )
170         {
171             serializer.startTag( NAMESPACE, "fileSets" );
172             for ( Iterator iter = assembly.getFileSets().iterator(); iter.hasNext(); )
173             {
174                 FileSet o = (FileSet) iter.next();
175                 writeFileSet( o, "fileSet", serializer );
176             }
177             serializer.endTag( NAMESPACE, "fileSets" );
178         }
179         if ( ( assembly.getFiles() != null ) && ( assembly.getFiles().size() > 0 ) )
180         {
181             serializer.startTag( NAMESPACE, "files" );
182             for ( Iterator iter = assembly.getFiles().iterator(); iter.hasNext(); )
183             {
184                 FileItem o = (FileItem) iter.next();
185                 writeFileItem( o, "file", serializer );
186             }
187             serializer.endTag( NAMESPACE, "files" );
188         }
189         if ( ( assembly.getDependencySets() != null ) && ( assembly.getDependencySets().size() > 0 ) )
190         {
191             serializer.startTag( NAMESPACE, "dependencySets" );
192             for ( Iterator iter = assembly.getDependencySets().iterator(); iter.hasNext(); )
193             {
194                 DependencySet o = (DependencySet) iter.next();
195                 writeDependencySet( o, "dependencySet", serializer );
196             }
197             serializer.endTag( NAMESPACE, "dependencySets" );
198         }
199         if ( ( assembly.getComponentDescriptors() != null ) && ( assembly.getComponentDescriptors().size() > 0 ) )
200         {
201             serializer.startTag( NAMESPACE, "componentDescriptors" );
202             for ( Iterator iter = assembly.getComponentDescriptors().iterator(); iter.hasNext(); )
203             {
204                 String componentDescriptor = (String) iter.next();
205                 serializer.startTag( NAMESPACE, "componentDescriptor" ).text( componentDescriptor ).endTag( NAMESPACE, "componentDescriptor" );
206             }
207             serializer.endTag( NAMESPACE, "componentDescriptors" );
208         }
209         serializer.endTag( NAMESPACE, tagName );
210     } //-- void writeAssembly( Assembly, String, XmlSerializer )
211 
212     /**
213      * Method writeContainerDescriptorHandlerConfig.
214      * 
215      * @param containerDescriptorHandlerConfig a
216      * containerDescriptorHandlerConfig object.
217      * @param serializer a serializer object.
218      * @param tagName a tagName object.
219      * @throws java.io.IOException java.io.IOException if any.
220      */
221     private void writeContainerDescriptorHandlerConfig( ContainerDescriptorHandlerConfig containerDescriptorHandlerConfig, String tagName, XmlSerializer serializer )
222         throws java.io.IOException
223     {
224         serializer.startTag( NAMESPACE, tagName );
225         if ( containerDescriptorHandlerConfig.getHandlerName() != null )
226         {
227             serializer.startTag( NAMESPACE, "handlerName" ).text( containerDescriptorHandlerConfig.getHandlerName() ).endTag( NAMESPACE, "handlerName" );
228         }
229         if ( containerDescriptorHandlerConfig.getConfiguration() != null )
230         {
231             ((Xpp3Dom) containerDescriptorHandlerConfig.getConfiguration()).writeToSerializer( NAMESPACE, serializer );
232         }
233         serializer.endTag( NAMESPACE, tagName );
234     } //-- void writeContainerDescriptorHandlerConfig( ContainerDescriptorHandlerConfig, String, XmlSerializer )
235 
236     /**
237      * Method writeDependencySet.
238      * 
239      * @param dependencySet a dependencySet object.
240      * @param serializer a serializer object.
241      * @param tagName a tagName object.
242      * @throws java.io.IOException java.io.IOException if any.
243      */
244     private void writeDependencySet( DependencySet dependencySet, String tagName, XmlSerializer serializer )
245         throws java.io.IOException
246     {
247         serializer.startTag( NAMESPACE, tagName );
248         if ( dependencySet.getOutputDirectory() != null )
249         {
250             serializer.startTag( NAMESPACE, "outputDirectory" ).text( dependencySet.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
251         }
252         if ( ( dependencySet.getIncludes() != null ) && ( dependencySet.getIncludes().size() > 0 ) )
253         {
254             serializer.startTag( NAMESPACE, "includes" );
255             for ( Iterator iter = dependencySet.getIncludes().iterator(); iter.hasNext(); )
256             {
257                 String include = (String) iter.next();
258                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
259             }
260             serializer.endTag( NAMESPACE, "includes" );
261         }
262         if ( ( dependencySet.getExcludes() != null ) && ( dependencySet.getExcludes().size() > 0 ) )
263         {
264             serializer.startTag( NAMESPACE, "excludes" );
265             for ( Iterator iter = dependencySet.getExcludes().iterator(); iter.hasNext(); )
266             {
267                 String exclude = (String) iter.next();
268                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
269             }
270             serializer.endTag( NAMESPACE, "excludes" );
271         }
272         if ( dependencySet.getFileMode() != null )
273         {
274             serializer.startTag( NAMESPACE, "fileMode" ).text( dependencySet.getFileMode() ).endTag( NAMESPACE, "fileMode" );
275         }
276         if ( dependencySet.getDirectoryMode() != null )
277         {
278             serializer.startTag( NAMESPACE, "directoryMode" ).text( dependencySet.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
279         }
280         if ( dependencySet.isUseStrictFiltering() != false )
281         {
282             serializer.startTag( NAMESPACE, "useStrictFiltering" ).text( String.valueOf( dependencySet.isUseStrictFiltering() ) ).endTag( NAMESPACE, "useStrictFiltering" );
283         }
284         if ( ( dependencySet.getOutputFileNameMapping() != null ) && !dependencySet.getOutputFileNameMapping().equals( "${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}" ) )
285         {
286             serializer.startTag( NAMESPACE, "outputFileNameMapping" ).text( dependencySet.getOutputFileNameMapping() ).endTag( NAMESPACE, "outputFileNameMapping" );
287         }
288         if ( dependencySet.isUnpack() != false )
289         {
290             serializer.startTag( NAMESPACE, "unpack" ).text( String.valueOf( dependencySet.isUnpack() ) ).endTag( NAMESPACE, "unpack" );
291         }
292         if ( dependencySet.getUnpackOptions() != null )
293         {
294             writeUnpackOptions( (UnpackOptions) dependencySet.getUnpackOptions(), "unpackOptions", serializer );
295         }
296         if ( ( dependencySet.getScope() != null ) && !dependencySet.getScope().equals( "runtime" ) )
297         {
298             serializer.startTag( NAMESPACE, "scope" ).text( dependencySet.getScope() ).endTag( NAMESPACE, "scope" );
299         }
300         if ( dependencySet.isUseProjectArtifact() != true )
301         {
302             serializer.startTag( NAMESPACE, "useProjectArtifact" ).text( String.valueOf( dependencySet.isUseProjectArtifact() ) ).endTag( NAMESPACE, "useProjectArtifact" );
303         }
304         if ( dependencySet.isUseProjectAttachments() != false )
305         {
306             serializer.startTag( NAMESPACE, "useProjectAttachments" ).text( String.valueOf( dependencySet.isUseProjectAttachments() ) ).endTag( NAMESPACE, "useProjectAttachments" );
307         }
308         if ( dependencySet.isUseTransitiveDependencies() != true )
309         {
310             serializer.startTag( NAMESPACE, "useTransitiveDependencies" ).text( String.valueOf( dependencySet.isUseTransitiveDependencies() ) ).endTag( NAMESPACE, "useTransitiveDependencies" );
311         }
312         if ( dependencySet.isUseTransitiveFiltering() != false )
313         {
314             serializer.startTag( NAMESPACE, "useTransitiveFiltering" ).text( String.valueOf( dependencySet.isUseTransitiveFiltering() ) ).endTag( NAMESPACE, "useTransitiveFiltering" );
315         }
316         serializer.endTag( NAMESPACE, tagName );
317     } //-- void writeDependencySet( DependencySet, String, XmlSerializer )
318 
319     /**
320      * Method writeFileItem.
321      * 
322      * @param fileItem a fileItem object.
323      * @param serializer a serializer object.
324      * @param tagName a tagName object.
325      * @throws java.io.IOException java.io.IOException if any.
326      */
327     private void writeFileItem( FileItem fileItem, String tagName, XmlSerializer serializer )
328         throws java.io.IOException
329     {
330         serializer.startTag( NAMESPACE, tagName );
331         if ( fileItem.getSource() != null )
332         {
333             serializer.startTag( NAMESPACE, "source" ).text( fileItem.getSource() ).endTag( NAMESPACE, "source" );
334         }
335         if ( ( fileItem.getSources() != null ) && ( fileItem.getSources().size() > 0 ) )
336         {
337             serializer.startTag( NAMESPACE, "sources" );
338             for ( Iterator iter = fileItem.getSources().iterator(); iter.hasNext(); )
339             {
340                 String source = (String) iter.next();
341                 serializer.startTag( NAMESPACE, "source" ).text( source ).endTag( NAMESPACE, "source" );
342             }
343             serializer.endTag( NAMESPACE, "sources" );
344         }
345         if ( fileItem.getOutputDirectory() != null )
346         {
347             serializer.startTag( NAMESPACE, "outputDirectory" ).text( fileItem.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
348         }
349         if ( fileItem.getDestName() != null )
350         {
351             serializer.startTag( NAMESPACE, "destName" ).text( fileItem.getDestName() ).endTag( NAMESPACE, "destName" );
352         }
353         if ( fileItem.getFileMode() != null )
354         {
355             serializer.startTag( NAMESPACE, "fileMode" ).text( fileItem.getFileMode() ).endTag( NAMESPACE, "fileMode" );
356         }
357         if ( fileItem.getLineEnding() != null )
358         {
359             serializer.startTag( NAMESPACE, "lineEnding" ).text( fileItem.getLineEnding() ).endTag( NAMESPACE, "lineEnding" );
360         }
361         if ( fileItem.isFiltered() != false )
362         {
363             serializer.startTag( NAMESPACE, "filtered" ).text( String.valueOf( fileItem.isFiltered() ) ).endTag( NAMESPACE, "filtered" );
364         }
365         serializer.endTag( NAMESPACE, tagName );
366     } //-- void writeFileItem( FileItem, String, XmlSerializer )
367 
368     /**
369      * Method writeFileSet.
370      * 
371      * @param fileSet a fileSet object.
372      * @param serializer a serializer object.
373      * @param tagName a tagName object.
374      * @throws java.io.IOException java.io.IOException if any.
375      */
376     private void writeFileSet( FileSet fileSet, String tagName, XmlSerializer serializer )
377         throws java.io.IOException
378     {
379         serializer.startTag( NAMESPACE, tagName );
380         if ( fileSet.isUseDefaultExcludes() != true )
381         {
382             serializer.startTag( NAMESPACE, "useDefaultExcludes" ).text( String.valueOf( fileSet.isUseDefaultExcludes() ) ).endTag( NAMESPACE, "useDefaultExcludes" );
383         }
384         if ( fileSet.getOutputDirectory() != null )
385         {
386             serializer.startTag( NAMESPACE, "outputDirectory" ).text( fileSet.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
387         }
388         if ( ( fileSet.getIncludes() != null ) && ( fileSet.getIncludes().size() > 0 ) )
389         {
390             serializer.startTag( NAMESPACE, "includes" );
391             for ( Iterator iter = fileSet.getIncludes().iterator(); iter.hasNext(); )
392             {
393                 String include = (String) iter.next();
394                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
395             }
396             serializer.endTag( NAMESPACE, "includes" );
397         }
398         if ( ( fileSet.getExcludes() != null ) && ( fileSet.getExcludes().size() > 0 ) )
399         {
400             serializer.startTag( NAMESPACE, "excludes" );
401             for ( Iterator iter = fileSet.getExcludes().iterator(); iter.hasNext(); )
402             {
403                 String exclude = (String) iter.next();
404                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
405             }
406             serializer.endTag( NAMESPACE, "excludes" );
407         }
408         if ( fileSet.getFileMode() != null )
409         {
410             serializer.startTag( NAMESPACE, "fileMode" ).text( fileSet.getFileMode() ).endTag( NAMESPACE, "fileMode" );
411         }
412         if ( fileSet.getDirectoryMode() != null )
413         {
414             serializer.startTag( NAMESPACE, "directoryMode" ).text( fileSet.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
415         }
416         if ( fileSet.getDirectory() != null )
417         {
418             serializer.startTag( NAMESPACE, "directory" ).text( fileSet.getDirectory() ).endTag( NAMESPACE, "directory" );
419         }
420         if ( fileSet.getLineEnding() != null )
421         {
422             serializer.startTag( NAMESPACE, "lineEnding" ).text( fileSet.getLineEnding() ).endTag( NAMESPACE, "lineEnding" );
423         }
424         if ( fileSet.isFiltered() != false )
425         {
426             serializer.startTag( NAMESPACE, "filtered" ).text( String.valueOf( fileSet.isFiltered() ) ).endTag( NAMESPACE, "filtered" );
427         }
428         if ( ( fileSet.getNonFilteredFileExtensions() != null ) && ( fileSet.getNonFilteredFileExtensions().size() > 0 ) )
429         {
430             serializer.startTag( NAMESPACE, "nonFilteredFileExtensions" );
431             for ( Iterator iter = fileSet.getNonFilteredFileExtensions().iterator(); iter.hasNext(); )
432             {
433                 String nonFilteredFileExtension = (String) iter.next();
434                 serializer.startTag( NAMESPACE, "nonFilteredFileExtension" ).text( nonFilteredFileExtension ).endTag( NAMESPACE, "nonFilteredFileExtension" );
435             }
436             serializer.endTag( NAMESPACE, "nonFilteredFileExtensions" );
437         }
438         serializer.endTag( NAMESPACE, tagName );
439     } //-- void writeFileSet( FileSet, String, XmlSerializer )
440 
441     /**
442      * Method writeModuleBinaries.
443      * 
444      * @param moduleBinaries a moduleBinaries object.
445      * @param serializer a serializer object.
446      * @param tagName a tagName object.
447      * @throws java.io.IOException java.io.IOException if any.
448      */
449     private void writeModuleBinaries( ModuleBinaries moduleBinaries, String tagName, XmlSerializer serializer )
450         throws java.io.IOException
451     {
452         serializer.startTag( NAMESPACE, tagName );
453         if ( moduleBinaries.getOutputDirectory() != null )
454         {
455             serializer.startTag( NAMESPACE, "outputDirectory" ).text( moduleBinaries.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
456         }
457         if ( ( moduleBinaries.getIncludes() != null ) && ( moduleBinaries.getIncludes().size() > 0 ) )
458         {
459             serializer.startTag( NAMESPACE, "includes" );
460             for ( Iterator iter = moduleBinaries.getIncludes().iterator(); iter.hasNext(); )
461             {
462                 String include = (String) iter.next();
463                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
464             }
465             serializer.endTag( NAMESPACE, "includes" );
466         }
467         if ( ( moduleBinaries.getExcludes() != null ) && ( moduleBinaries.getExcludes().size() > 0 ) )
468         {
469             serializer.startTag( NAMESPACE, "excludes" );
470             for ( Iterator iter = moduleBinaries.getExcludes().iterator(); iter.hasNext(); )
471             {
472                 String exclude = (String) iter.next();
473                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
474             }
475             serializer.endTag( NAMESPACE, "excludes" );
476         }
477         if ( moduleBinaries.getFileMode() != null )
478         {
479             serializer.startTag( NAMESPACE, "fileMode" ).text( moduleBinaries.getFileMode() ).endTag( NAMESPACE, "fileMode" );
480         }
481         if ( moduleBinaries.getDirectoryMode() != null )
482         {
483             serializer.startTag( NAMESPACE, "directoryMode" ).text( moduleBinaries.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
484         }
485         if ( moduleBinaries.getAttachmentClassifier() != null )
486         {
487             serializer.startTag( NAMESPACE, "attachmentClassifier" ).text( moduleBinaries.getAttachmentClassifier() ).endTag( NAMESPACE, "attachmentClassifier" );
488         }
489         if ( moduleBinaries.isIncludeDependencies() != true )
490         {
491             serializer.startTag( NAMESPACE, "includeDependencies" ).text( String.valueOf( moduleBinaries.isIncludeDependencies() ) ).endTag( NAMESPACE, "includeDependencies" );
492         }
493         if ( ( moduleBinaries.getDependencySets() != null ) && ( moduleBinaries.getDependencySets().size() > 0 ) )
494         {
495             serializer.startTag( NAMESPACE, "dependencySets" );
496             for ( Iterator iter = moduleBinaries.getDependencySets().iterator(); iter.hasNext(); )
497             {
498                 DependencySet o = (DependencySet) iter.next();
499                 writeDependencySet( o, "dependencySet", serializer );
500             }
501             serializer.endTag( NAMESPACE, "dependencySets" );
502         }
503         if ( moduleBinaries.isUnpack() != true )
504         {
505             serializer.startTag( NAMESPACE, "unpack" ).text( String.valueOf( moduleBinaries.isUnpack() ) ).endTag( NAMESPACE, "unpack" );
506         }
507         if ( moduleBinaries.getUnpackOptions() != null )
508         {
509             writeUnpackOptions( (UnpackOptions) moduleBinaries.getUnpackOptions(), "unpackOptions", serializer );
510         }
511         if ( ( moduleBinaries.getOutputFileNameMapping() != null ) && !moduleBinaries.getOutputFileNameMapping().equals( "${module.artifactId}-${module.version}${dashClassifier?}.${module.extension}" ) )
512         {
513             serializer.startTag( NAMESPACE, "outputFileNameMapping" ).text( moduleBinaries.getOutputFileNameMapping() ).endTag( NAMESPACE, "outputFileNameMapping" );
514         }
515         serializer.endTag( NAMESPACE, tagName );
516     } //-- void writeModuleBinaries( ModuleBinaries, String, XmlSerializer )
517 
518     /**
519      * Method writeModuleSet.
520      * 
521      * @param moduleSet a moduleSet object.
522      * @param serializer a serializer object.
523      * @param tagName a tagName object.
524      * @throws java.io.IOException java.io.IOException if any.
525      */
526     private void writeModuleSet( ModuleSet moduleSet, String tagName, XmlSerializer serializer )
527         throws java.io.IOException
528     {
529         serializer.startTag( NAMESPACE, tagName );
530         if ( moduleSet.isUseAllReactorProjects() != false )
531         {
532             serializer.startTag( NAMESPACE, "useAllReactorProjects" ).text( String.valueOf( moduleSet.isUseAllReactorProjects() ) ).endTag( NAMESPACE, "useAllReactorProjects" );
533         }
534         if ( moduleSet.isIncludeSubModules() != true )
535         {
536             serializer.startTag( NAMESPACE, "includeSubModules" ).text( String.valueOf( moduleSet.isIncludeSubModules() ) ).endTag( NAMESPACE, "includeSubModules" );
537         }
538         if ( ( moduleSet.getIncludes() != null ) && ( moduleSet.getIncludes().size() > 0 ) )
539         {
540             serializer.startTag( NAMESPACE, "includes" );
541             for ( Iterator iter = moduleSet.getIncludes().iterator(); iter.hasNext(); )
542             {
543                 String include = (String) iter.next();
544                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
545             }
546             serializer.endTag( NAMESPACE, "includes" );
547         }
548         if ( ( moduleSet.getExcludes() != null ) && ( moduleSet.getExcludes().size() > 0 ) )
549         {
550             serializer.startTag( NAMESPACE, "excludes" );
551             for ( Iterator iter = moduleSet.getExcludes().iterator(); iter.hasNext(); )
552             {
553                 String exclude = (String) iter.next();
554                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
555             }
556             serializer.endTag( NAMESPACE, "excludes" );
557         }
558         if ( moduleSet.getSources() != null )
559         {
560             writeModuleSources( (ModuleSources) moduleSet.getSources(), "sources", serializer );
561         }
562         if ( moduleSet.getBinaries() != null )
563         {
564             writeModuleBinaries( (ModuleBinaries) moduleSet.getBinaries(), "binaries", serializer );
565         }
566         serializer.endTag( NAMESPACE, tagName );
567     } //-- void writeModuleSet( ModuleSet, String, XmlSerializer )
568 
569     /**
570      * Method writeModuleSources.
571      * 
572      * @param moduleSources a moduleSources object.
573      * @param serializer a serializer object.
574      * @param tagName a tagName object.
575      * @throws java.io.IOException java.io.IOException if any.
576      */
577     private void writeModuleSources( ModuleSources moduleSources, String tagName, XmlSerializer serializer )
578         throws java.io.IOException
579     {
580         serializer.startTag( NAMESPACE, tagName );
581         if ( moduleSources.isUseDefaultExcludes() != true )
582         {
583             serializer.startTag( NAMESPACE, "useDefaultExcludes" ).text( String.valueOf( moduleSources.isUseDefaultExcludes() ) ).endTag( NAMESPACE, "useDefaultExcludes" );
584         }
585         if ( moduleSources.getOutputDirectory() != null )
586         {
587             serializer.startTag( NAMESPACE, "outputDirectory" ).text( moduleSources.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
588         }
589         if ( ( moduleSources.getIncludes() != null ) && ( moduleSources.getIncludes().size() > 0 ) )
590         {
591             serializer.startTag( NAMESPACE, "includes" );
592             for ( Iterator iter = moduleSources.getIncludes().iterator(); iter.hasNext(); )
593             {
594                 String include = (String) iter.next();
595                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
596             }
597             serializer.endTag( NAMESPACE, "includes" );
598         }
599         if ( ( moduleSources.getExcludes() != null ) && ( moduleSources.getExcludes().size() > 0 ) )
600         {
601             serializer.startTag( NAMESPACE, "excludes" );
602             for ( Iterator iter = moduleSources.getExcludes().iterator(); iter.hasNext(); )
603             {
604                 String exclude = (String) iter.next();
605                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
606             }
607             serializer.endTag( NAMESPACE, "excludes" );
608         }
609         if ( moduleSources.getFileMode() != null )
610         {
611             serializer.startTag( NAMESPACE, "fileMode" ).text( moduleSources.getFileMode() ).endTag( NAMESPACE, "fileMode" );
612         }
613         if ( moduleSources.getDirectoryMode() != null )
614         {
615             serializer.startTag( NAMESPACE, "directoryMode" ).text( moduleSources.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
616         }
617         if ( ( moduleSources.getFileSets() != null ) && ( moduleSources.getFileSets().size() > 0 ) )
618         {
619             serializer.startTag( NAMESPACE, "fileSets" );
620             for ( Iterator iter = moduleSources.getFileSets().iterator(); iter.hasNext(); )
621             {
622                 FileSet o = (FileSet) iter.next();
623                 writeFileSet( o, "fileSet", serializer );
624             }
625             serializer.endTag( NAMESPACE, "fileSets" );
626         }
627         if ( moduleSources.isIncludeModuleDirectory() != true )
628         {
629             serializer.startTag( NAMESPACE, "includeModuleDirectory" ).text( String.valueOf( moduleSources.isIncludeModuleDirectory() ) ).endTag( NAMESPACE, "includeModuleDirectory" );
630         }
631         if ( moduleSources.isExcludeSubModuleDirectories() != true )
632         {
633             serializer.startTag( NAMESPACE, "excludeSubModuleDirectories" ).text( String.valueOf( moduleSources.isExcludeSubModuleDirectories() ) ).endTag( NAMESPACE, "excludeSubModuleDirectories" );
634         }
635         if ( ( moduleSources.getOutputDirectoryMapping() != null ) && !moduleSources.getOutputDirectoryMapping().equals( "${module.artifactId}" ) )
636         {
637             serializer.startTag( NAMESPACE, "outputDirectoryMapping" ).text( moduleSources.getOutputDirectoryMapping() ).endTag( NAMESPACE, "outputDirectoryMapping" );
638         }
639         serializer.endTag( NAMESPACE, tagName );
640     } //-- void writeModuleSources( ModuleSources, String, XmlSerializer )
641 
642     /**
643      * Method writeUnpackOptions.
644      * 
645      * @param unpackOptions a unpackOptions object.
646      * @param serializer a serializer object.
647      * @param tagName a tagName object.
648      * @throws java.io.IOException java.io.IOException if any.
649      */
650     private void writeUnpackOptions( UnpackOptions unpackOptions, String tagName, XmlSerializer serializer )
651         throws java.io.IOException
652     {
653         serializer.startTag( NAMESPACE, tagName );
654         if ( ( unpackOptions.getIncludes() != null ) && ( unpackOptions.getIncludes().size() > 0 ) )
655         {
656             serializer.startTag( NAMESPACE, "includes" );
657             for ( Iterator iter = unpackOptions.getIncludes().iterator(); iter.hasNext(); )
658             {
659                 String include = (String) iter.next();
660                 serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
661             }
662             serializer.endTag( NAMESPACE, "includes" );
663         }
664         if ( ( unpackOptions.getExcludes() != null ) && ( unpackOptions.getExcludes().size() > 0 ) )
665         {
666             serializer.startTag( NAMESPACE, "excludes" );
667             for ( Iterator iter = unpackOptions.getExcludes().iterator(); iter.hasNext(); )
668             {
669                 String exclude = (String) iter.next();
670                 serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
671             }
672             serializer.endTag( NAMESPACE, "excludes" );
673         }
674         if ( unpackOptions.isFiltered() != false )
675         {
676             serializer.startTag( NAMESPACE, "filtered" ).text( String.valueOf( unpackOptions.isFiltered() ) ).endTag( NAMESPACE, "filtered" );
677         }
678         if ( ( unpackOptions.getNonFilteredFileExtensions() != null ) && ( unpackOptions.getNonFilteredFileExtensions().size() > 0 ) )
679         {
680             serializer.startTag( NAMESPACE, "nonFilteredFileExtensions" );
681             for ( Iterator iter = unpackOptions.getNonFilteredFileExtensions().iterator(); iter.hasNext(); )
682             {
683                 String nonFilteredFileExtension = (String) iter.next();
684                 serializer.startTag( NAMESPACE, "nonFilteredFileExtension" ).text( nonFilteredFileExtension ).endTag( NAMESPACE, "nonFilteredFileExtension" );
685             }
686             serializer.endTag( NAMESPACE, "nonFilteredFileExtensions" );
687         }
688         if ( unpackOptions.getLineEnding() != null )
689         {
690             serializer.startTag( NAMESPACE, "lineEnding" ).text( unpackOptions.getLineEnding() ).endTag( NAMESPACE, "lineEnding" );
691         }
692         if ( unpackOptions.isUseDefaultExcludes() != true )
693         {
694             serializer.startTag( NAMESPACE, "useDefaultExcludes" ).text( String.valueOf( unpackOptions.isUseDefaultExcludes() ) ).endTag( NAMESPACE, "useDefaultExcludes" );
695         }
696         if ( unpackOptions.getEncoding() != null )
697         {
698             serializer.startTag( NAMESPACE, "encoding" ).text( unpackOptions.getEncoding() ).endTag( NAMESPACE, "encoding" );
699         }
700         serializer.endTag( NAMESPACE, tagName );
701     } //-- void writeUnpackOptions( UnpackOptions, String, XmlSerializer )
702 
703 }