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