Coverage Report - org.apache.maven.plugins.assembly.model.io.xpp3.ComponentXpp3Writer
 
Classes in this File Line Coverage Branch Coverage Complexity
ComponentXpp3Writer
0%
0/229
0%
0/78
9.667
 
 1  
 /*
 2  
  * $Id$
 3  
  */
 4  
 
 5  
 package org.apache.maven.plugins.assembly.model.io.xpp3;
 6  
 
 7  
   //---------------------------------/
 8  
  //- Imported classes and packages -/
 9  
 //---------------------------------/
 10  
 
 11  
 import java.io.Writer;
 12  
 import java.util.Iterator;
 13  
 import org.apache.maven.plugins.assembly.model.Component;
 14  
 import org.apache.maven.plugins.assembly.model.DependencySet;
 15  
 import org.apache.maven.plugins.assembly.model.FileItem;
 16  
 import org.apache.maven.plugins.assembly.model.FileSet;
 17  
 import org.apache.maven.plugins.assembly.model.GroupVersionAlignment;
 18  
 import org.apache.maven.plugins.assembly.model.Repository;
 19  
 import org.apache.maven.plugins.assembly.model.SetBase;
 20  
 import org.apache.maven.plugins.assembly.model.UnpackOptions;
 21  
 import org.codehaus.plexus.util.xml.pull.*;
 22  
 
 23  
 /**
 24  
  * Class ComponentXpp3Writer.
 25  
  * 
 26  
  * @version $Revision$ $Date$
 27  
  */
 28  0
 public class ComponentXpp3Writer {
 29  
 
 30  
 
 31  
       //--------------------------/
 32  
      //- Class/Member Variables -/
 33  
     //--------------------------/
 34  
 
 35  
     /**
 36  
      * Field serializer
 37  
      */
 38  
     private org.codehaus.plexus.util.xml.pull.XmlSerializer serializer;
 39  
 
 40  
     /**
 41  
      * Field NAMESPACE
 42  
      */
 43  
     private String NAMESPACE;
 44  
 
 45  
 
 46  
       //-----------/
 47  
      //- Methods -/
 48  
     //-----------/
 49  
 
 50  
     /**
 51  
      * Method write
 52  
      * 
 53  
      * @param writer
 54  
      * @param component
 55  
      */
 56  
     public void write(Writer writer, Component component)
 57  
         throws java.io.IOException
 58  
     {
 59  0
         serializer = new MXSerializer();
 60  0
         serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
 61  0
         serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
 62  0
         serializer.setOutput( writer );
 63  0
         serializer.startDocument( component.getModelEncoding(), null );
 64  0
         writeComponent( component, "component", serializer );
 65  0
         serializer.endDocument();
 66  0
     } //-- void write(Writer, Component) 
 67  
 
 68  
     /**
 69  
      * Method writeComponent
 70  
      * 
 71  
      * @param component
 72  
      * @param serializer
 73  
      * @param tagName
 74  
      */
 75  
     private void writeComponent(Component component, String tagName, XmlSerializer serializer)
 76  
         throws java.io.IOException
 77  
     {
 78  0
         if ( component != null )
 79  
         {
 80  0
             serializer.startTag( NAMESPACE, tagName );
 81  0
             if ( component.getFileSets() != null && component.getFileSets().size() > 0 )
 82  
             {
 83  0
                 serializer.startTag( NAMESPACE, "fileSets" );
 84  0
                 for ( Iterator iter = component.getFileSets().iterator(); iter.hasNext(); )
 85  
                 {
 86  0
                     FileSet o = (FileSet) iter.next();
 87  0
                     writeFileSet( o, "fileSet", serializer );
 88  0
                 }
 89  0
                 serializer.endTag( NAMESPACE, "fileSets" );
 90  
             }
 91  0
             if ( component.getFiles() != null && component.getFiles().size() > 0 )
 92  
             {
 93  0
                 serializer.startTag( NAMESPACE, "files" );
 94  0
                 for ( Iterator iter = component.getFiles().iterator(); iter.hasNext(); )
 95  
                 {
 96  0
                     FileItem o = (FileItem) iter.next();
 97  0
                     writeFileItem( o, "file", serializer );
 98  0
                 }
 99  0
                 serializer.endTag( NAMESPACE, "files" );
 100  
             }
 101  0
             if ( component.getDependencySets() != null && component.getDependencySets().size() > 0 )
 102  
             {
 103  0
                 serializer.startTag( NAMESPACE, "dependencySets" );
 104  0
                 for ( Iterator iter = component.getDependencySets().iterator(); iter.hasNext(); )
 105  
                 {
 106  0
                     DependencySet o = (DependencySet) iter.next();
 107  0
                     writeDependencySet( o, "dependencySet", serializer );
 108  0
                 }
 109  0
                 serializer.endTag( NAMESPACE, "dependencySets" );
 110  
             }
 111  0
             if ( component.getRepositories() != null && component.getRepositories().size() > 0 )
 112  
             {
 113  0
                 serializer.startTag( NAMESPACE, "repositories" );
 114  0
                 for ( Iterator iter = component.getRepositories().iterator(); iter.hasNext(); )
 115  
                 {
 116  0
                     Repository o = (Repository) iter.next();
 117  0
                     writeRepository( o, "repository", serializer );
 118  0
                 }
 119  0
                 serializer.endTag( NAMESPACE, "repositories" );
 120  
             }
 121  0
             serializer.endTag( NAMESPACE, tagName );
 122  
         }
 123  0
     } //-- void writeComponent(Component, String, XmlSerializer) 
 124  
 
 125  
     /**
 126  
      * Method writeDependencySet
 127  
      * 
 128  
      * @param dependencySet
 129  
      * @param serializer
 130  
      * @param tagName
 131  
      */
 132  
     private void writeDependencySet(DependencySet dependencySet, String tagName, XmlSerializer serializer)
 133  
         throws java.io.IOException
 134  
     {
 135  0
         if ( dependencySet != null )
 136  
         {
 137  0
             serializer.startTag( NAMESPACE, tagName );
 138  0
             if ( dependencySet.getOutputFileNameMapping() != null && !dependencySet.getOutputFileNameMapping().equals( "${artifactId}-${version}.${extension}" ) )
 139  
             {
 140  0
                 serializer.startTag( NAMESPACE, "outputFileNameMapping" ).text( dependencySet.getOutputFileNameMapping() ).endTag( NAMESPACE, "outputFileNameMapping" );
 141  
             }
 142  0
             if ( dependencySet.isUnpack() != false )
 143  
             {
 144  0
                 serializer.startTag( NAMESPACE, "unpack" ).text( String.valueOf( dependencySet.isUnpack() ) ).endTag( NAMESPACE, "unpack" );
 145  
             }
 146  0
             if ( dependencySet.getUnpackOptions() != null )
 147  
             {
 148  0
                 writeUnpackOptions( dependencySet.getUnpackOptions(), "unpackOptions", serializer );
 149  
             }
 150  0
             if ( dependencySet.getScope() != null && !dependencySet.getScope().equals( "runtime" ) )
 151  
             {
 152  0
                 serializer.startTag( NAMESPACE, "scope" ).text( dependencySet.getScope() ).endTag( NAMESPACE, "scope" );
 153  
             }
 154  0
             if ( dependencySet.isUseStrictFiltering() != false )
 155  
             {
 156  0
                 serializer.startTag( NAMESPACE, "useStrictFiltering" ).text( String.valueOf( dependencySet.isUseStrictFiltering() ) ).endTag( NAMESPACE, "useStrictFiltering" );
 157  
             }
 158  0
             if ( dependencySet.isUseDefaultExcludes() != true )
 159  
             {
 160  0
                 serializer.startTag( NAMESPACE, "useDefaultExcludes" ).text( String.valueOf( dependencySet.isUseDefaultExcludes() ) ).endTag( NAMESPACE, "useDefaultExcludes" );
 161  
             }
 162  0
             if ( dependencySet.getOutputDirectory() != null )
 163  
             {
 164  0
                 serializer.startTag( NAMESPACE, "outputDirectory" ).text( dependencySet.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
 165  
             }
 166  0
             if ( dependencySet.getIncludes() != null && dependencySet.getIncludes().size() > 0 )
 167  
             {
 168  0
                 serializer.startTag( NAMESPACE, "includes" );
 169  0
                 for ( Iterator iter = dependencySet.getIncludes().iterator(); iter.hasNext(); )
 170  
                 {
 171  0
                     String include = (String) iter.next();
 172  0
                     serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
 173  0
                 }
 174  0
                 serializer.endTag( NAMESPACE, "includes" );
 175  
             }
 176  0
             if ( dependencySet.getExcludes() != null && dependencySet.getExcludes().size() > 0 )
 177  
             {
 178  0
                 serializer.startTag( NAMESPACE, "excludes" );
 179  0
                 for ( Iterator iter = dependencySet.getExcludes().iterator(); iter.hasNext(); )
 180  
                 {
 181  0
                     String exclude = (String) iter.next();
 182  0
                     serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
 183  0
                 }
 184  0
                 serializer.endTag( NAMESPACE, "excludes" );
 185  
             }
 186  0
             if ( dependencySet.getFileMode() != null && !dependencySet.getFileMode().equals( "0644" ) )
 187  
             {
 188  0
                 serializer.startTag( NAMESPACE, "fileMode" ).text( dependencySet.getFileMode() ).endTag( NAMESPACE, "fileMode" );
 189  
             }
 190  0
             if ( dependencySet.getDirectoryMode() != null && !dependencySet.getDirectoryMode().equals( "0755" ) )
 191  
             {
 192  0
                 serializer.startTag( NAMESPACE, "directoryMode" ).text( dependencySet.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
 193  
             }
 194  0
             serializer.endTag( NAMESPACE, tagName );
 195  
         }
 196  0
     } //-- void writeDependencySet(DependencySet, String, XmlSerializer) 
 197  
 
 198  
     /**
 199  
      * Method writeFileItem
 200  
      * 
 201  
      * @param fileItem
 202  
      * @param serializer
 203  
      * @param tagName
 204  
      */
 205  
     private void writeFileItem(FileItem fileItem, String tagName, XmlSerializer serializer)
 206  
         throws java.io.IOException
 207  
     {
 208  0
         if ( fileItem != null )
 209  
         {
 210  0
             serializer.startTag( NAMESPACE, tagName );
 211  0
             if ( fileItem.getSource() != null )
 212  
             {
 213  0
                 serializer.startTag( NAMESPACE, "source" ).text( fileItem.getSource() ).endTag( NAMESPACE, "source" );
 214  
             }
 215  0
             if ( fileItem.getOutputDirectory() != null )
 216  
             {
 217  0
                 serializer.startTag( NAMESPACE, "outputDirectory" ).text( fileItem.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
 218  
             }
 219  0
             if ( fileItem.getDestName() != null )
 220  
             {
 221  0
                 serializer.startTag( NAMESPACE, "destName" ).text( fileItem.getDestName() ).endTag( NAMESPACE, "destName" );
 222  
             }
 223  0
             if ( fileItem.getFileMode() != null && !fileItem.getFileMode().equals( "0644" ) )
 224  
             {
 225  0
                 serializer.startTag( NAMESPACE, "fileMode" ).text( fileItem.getFileMode() ).endTag( NAMESPACE, "fileMode" );
 226  
             }
 227  0
             if ( fileItem.getLineEnding() != null )
 228  
             {
 229  0
                 serializer.startTag( NAMESPACE, "lineEnding" ).text( fileItem.getLineEnding() ).endTag( NAMESPACE, "lineEnding" );
 230  
             }
 231  0
             if ( fileItem.isFiltered() != false )
 232  
             {
 233  0
                 serializer.startTag( NAMESPACE, "filtered" ).text( String.valueOf( fileItem.isFiltered() ) ).endTag( NAMESPACE, "filtered" );
 234  
             }
 235  0
             serializer.endTag( NAMESPACE, tagName );
 236  
         }
 237  0
     } //-- void writeFileItem(FileItem, String, XmlSerializer) 
 238  
 
 239  
     /**
 240  
      * Method writeFileSet
 241  
      * 
 242  
      * @param fileSet
 243  
      * @param serializer
 244  
      * @param tagName
 245  
      */
 246  
     private void writeFileSet(FileSet fileSet, String tagName, XmlSerializer serializer)
 247  
         throws java.io.IOException
 248  
     {
 249  0
         if ( fileSet != null )
 250  
         {
 251  0
             serializer.startTag( NAMESPACE, tagName );
 252  0
             if ( fileSet.getDirectory() != null )
 253  
             {
 254  0
                 serializer.startTag( NAMESPACE, "directory" ).text( fileSet.getDirectory() ).endTag( NAMESPACE, "directory" );
 255  
             }
 256  0
             if ( fileSet.getLineEnding() != null )
 257  
             {
 258  0
                 serializer.startTag( NAMESPACE, "lineEnding" ).text( fileSet.getLineEnding() ).endTag( NAMESPACE, "lineEnding" );
 259  
             }
 260  0
             if ( fileSet.isFiltered() != false )
 261  
             {
 262  0
                 serializer.startTag( NAMESPACE, "filtered" ).text( String.valueOf( fileSet.isFiltered() ) ).endTag( NAMESPACE, "filtered" );
 263  
             }
 264  0
             if ( fileSet.isUseStrictFiltering() != false )
 265  
             {
 266  0
                 serializer.startTag( NAMESPACE, "useStrictFiltering" ).text( String.valueOf( fileSet.isUseStrictFiltering() ) ).endTag( NAMESPACE, "useStrictFiltering" );
 267  
             }
 268  0
             if ( fileSet.isUseDefaultExcludes() != true )
 269  
             {
 270  0
                 serializer.startTag( NAMESPACE, "useDefaultExcludes" ).text( String.valueOf( fileSet.isUseDefaultExcludes() ) ).endTag( NAMESPACE, "useDefaultExcludes" );
 271  
             }
 272  0
             if ( fileSet.getOutputDirectory() != null )
 273  
             {
 274  0
                 serializer.startTag( NAMESPACE, "outputDirectory" ).text( fileSet.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
 275  
             }
 276  0
             if ( fileSet.getIncludes() != null && fileSet.getIncludes().size() > 0 )
 277  
             {
 278  0
                 serializer.startTag( NAMESPACE, "includes" );
 279  0
                 for ( Iterator iter = fileSet.getIncludes().iterator(); iter.hasNext(); )
 280  
                 {
 281  0
                     String include = (String) iter.next();
 282  0
                     serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
 283  0
                 }
 284  0
                 serializer.endTag( NAMESPACE, "includes" );
 285  
             }
 286  0
             if ( fileSet.getExcludes() != null && fileSet.getExcludes().size() > 0 )
 287  
             {
 288  0
                 serializer.startTag( NAMESPACE, "excludes" );
 289  0
                 for ( Iterator iter = fileSet.getExcludes().iterator(); iter.hasNext(); )
 290  
                 {
 291  0
                     String exclude = (String) iter.next();
 292  0
                     serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
 293  0
                 }
 294  0
                 serializer.endTag( NAMESPACE, "excludes" );
 295  
             }
 296  0
             if ( fileSet.getFileMode() != null && !fileSet.getFileMode().equals( "0644" ) )
 297  
             {
 298  0
                 serializer.startTag( NAMESPACE, "fileMode" ).text( fileSet.getFileMode() ).endTag( NAMESPACE, "fileMode" );
 299  
             }
 300  0
             if ( fileSet.getDirectoryMode() != null && !fileSet.getDirectoryMode().equals( "0755" ) )
 301  
             {
 302  0
                 serializer.startTag( NAMESPACE, "directoryMode" ).text( fileSet.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
 303  
             }
 304  0
             serializer.endTag( NAMESPACE, tagName );
 305  
         }
 306  0
     } //-- void writeFileSet(FileSet, String, XmlSerializer) 
 307  
 
 308  
     /**
 309  
      * Method writeGroupVersionAlignment
 310  
      * 
 311  
      * @param groupVersionAlignment
 312  
      * @param serializer
 313  
      * @param tagName
 314  
      */
 315  
     private void writeGroupVersionAlignment(GroupVersionAlignment groupVersionAlignment, String tagName, XmlSerializer serializer)
 316  
         throws java.io.IOException
 317  
     {
 318  0
         if ( groupVersionAlignment != null )
 319  
         {
 320  0
             serializer.startTag( NAMESPACE, tagName );
 321  0
             if ( groupVersionAlignment.getId() != null )
 322  
             {
 323  0
                 serializer.startTag( NAMESPACE, "id" ).text( groupVersionAlignment.getId() ).endTag( NAMESPACE, "id" );
 324  
             }
 325  0
             if ( groupVersionAlignment.getVersion() != null )
 326  
             {
 327  0
                 serializer.startTag( NAMESPACE, "version" ).text( groupVersionAlignment.getVersion() ).endTag( NAMESPACE, "version" );
 328  
             }
 329  0
             if ( groupVersionAlignment.getExcludes() != null && groupVersionAlignment.getExcludes().size() > 0 )
 330  
             {
 331  0
                 serializer.startTag( NAMESPACE, "excludes" );
 332  0
                 for ( Iterator iter = groupVersionAlignment.getExcludes().iterator(); iter.hasNext(); )
 333  
                 {
 334  0
                     String exclude = (String) iter.next();
 335  0
                     serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
 336  0
                 }
 337  0
                 serializer.endTag( NAMESPACE, "excludes" );
 338  
             }
 339  0
             serializer.endTag( NAMESPACE, tagName );
 340  
         }
 341  0
     } //-- void writeGroupVersionAlignment(GroupVersionAlignment, String, XmlSerializer) 
 342  
 
 343  
     /**
 344  
      * Method writeRepository
 345  
      * 
 346  
      * @param repository
 347  
      * @param serializer
 348  
      * @param tagName
 349  
      */
 350  
     private void writeRepository(Repository repository, String tagName, XmlSerializer serializer)
 351  
         throws java.io.IOException
 352  
     {
 353  0
         if ( repository != null )
 354  
         {
 355  0
             serializer.startTag( NAMESPACE, tagName );
 356  0
             if ( repository.isIncludeMetadata() != false )
 357  
             {
 358  0
                 serializer.startTag( NAMESPACE, "includeMetadata" ).text( String.valueOf( repository.isIncludeMetadata() ) ).endTag( NAMESPACE, "includeMetadata" );
 359  
             }
 360  0
             if ( repository.getGroupVersionAlignments() != null && repository.getGroupVersionAlignments().size() > 0 )
 361  
             {
 362  0
                 serializer.startTag( NAMESPACE, "groupVersionAlignments" );
 363  0
                 for ( Iterator iter = repository.getGroupVersionAlignments().iterator(); iter.hasNext(); )
 364  
                 {
 365  0
                     GroupVersionAlignment o = (GroupVersionAlignment) iter.next();
 366  0
                     writeGroupVersionAlignment( o, "groupVersionAlignment", serializer );
 367  0
                 }
 368  0
                 serializer.endTag( NAMESPACE, "groupVersionAlignments" );
 369  
             }
 370  0
             if ( repository.getScope() != null && !repository.getScope().equals( "runtime" ) )
 371  
             {
 372  0
                 serializer.startTag( NAMESPACE, "scope" ).text( repository.getScope() ).endTag( NAMESPACE, "scope" );
 373  
             }
 374  0
             if ( repository.isUseStrictFiltering() != false )
 375  
             {
 376  0
                 serializer.startTag( NAMESPACE, "useStrictFiltering" ).text( String.valueOf( repository.isUseStrictFiltering() ) ).endTag( NAMESPACE, "useStrictFiltering" );
 377  
             }
 378  0
             if ( repository.isUseDefaultExcludes() != true )
 379  
             {
 380  0
                 serializer.startTag( NAMESPACE, "useDefaultExcludes" ).text( String.valueOf( repository.isUseDefaultExcludes() ) ).endTag( NAMESPACE, "useDefaultExcludes" );
 381  
             }
 382  0
             if ( repository.getOutputDirectory() != null )
 383  
             {
 384  0
                 serializer.startTag( NAMESPACE, "outputDirectory" ).text( repository.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
 385  
             }
 386  0
             if ( repository.getIncludes() != null && repository.getIncludes().size() > 0 )
 387  
             {
 388  0
                 serializer.startTag( NAMESPACE, "includes" );
 389  0
                 for ( Iterator iter = repository.getIncludes().iterator(); iter.hasNext(); )
 390  
                 {
 391  0
                     String include = (String) iter.next();
 392  0
                     serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
 393  0
                 }
 394  0
                 serializer.endTag( NAMESPACE, "includes" );
 395  
             }
 396  0
             if ( repository.getExcludes() != null && repository.getExcludes().size() > 0 )
 397  
             {
 398  0
                 serializer.startTag( NAMESPACE, "excludes" );
 399  0
                 for ( Iterator iter = repository.getExcludes().iterator(); iter.hasNext(); )
 400  
                 {
 401  0
                     String exclude = (String) iter.next();
 402  0
                     serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
 403  0
                 }
 404  0
                 serializer.endTag( NAMESPACE, "excludes" );
 405  
             }
 406  0
             if ( repository.getFileMode() != null && !repository.getFileMode().equals( "0644" ) )
 407  
             {
 408  0
                 serializer.startTag( NAMESPACE, "fileMode" ).text( repository.getFileMode() ).endTag( NAMESPACE, "fileMode" );
 409  
             }
 410  0
             if ( repository.getDirectoryMode() != null && !repository.getDirectoryMode().equals( "0755" ) )
 411  
             {
 412  0
                 serializer.startTag( NAMESPACE, "directoryMode" ).text( repository.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
 413  
             }
 414  0
             serializer.endTag( NAMESPACE, tagName );
 415  
         }
 416  0
     } //-- void writeRepository(Repository, String, XmlSerializer) 
 417  
 
 418  
     /**
 419  
      * Method writeSetBase
 420  
      * 
 421  
      * @param setBase
 422  
      * @param serializer
 423  
      * @param tagName
 424  
      */
 425  
     private void writeSetBase(SetBase setBase, String tagName, XmlSerializer serializer)
 426  
         throws java.io.IOException
 427  
     {
 428  0
         if ( setBase != null )
 429  
         {
 430  0
             serializer.startTag( NAMESPACE, tagName );
 431  0
             if ( setBase.isUseStrictFiltering() != false )
 432  
             {
 433  0
                 serializer.startTag( NAMESPACE, "useStrictFiltering" ).text( String.valueOf( setBase.isUseStrictFiltering() ) ).endTag( NAMESPACE, "useStrictFiltering" );
 434  
             }
 435  0
             if ( setBase.isUseDefaultExcludes() != true )
 436  
             {
 437  0
                 serializer.startTag( NAMESPACE, "useDefaultExcludes" ).text( String.valueOf( setBase.isUseDefaultExcludes() ) ).endTag( NAMESPACE, "useDefaultExcludes" );
 438  
             }
 439  0
             if ( setBase.getOutputDirectory() != null )
 440  
             {
 441  0
                 serializer.startTag( NAMESPACE, "outputDirectory" ).text( setBase.getOutputDirectory() ).endTag( NAMESPACE, "outputDirectory" );
 442  
             }
 443  0
             if ( setBase.getIncludes() != null && setBase.getIncludes().size() > 0 )
 444  
             {
 445  0
                 serializer.startTag( NAMESPACE, "includes" );
 446  0
                 for ( Iterator iter = setBase.getIncludes().iterator(); iter.hasNext(); )
 447  
                 {
 448  0
                     String include = (String) iter.next();
 449  0
                     serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
 450  0
                 }
 451  0
                 serializer.endTag( NAMESPACE, "includes" );
 452  
             }
 453  0
             if ( setBase.getExcludes() != null && setBase.getExcludes().size() > 0 )
 454  
             {
 455  0
                 serializer.startTag( NAMESPACE, "excludes" );
 456  0
                 for ( Iterator iter = setBase.getExcludes().iterator(); iter.hasNext(); )
 457  
                 {
 458  0
                     String exclude = (String) iter.next();
 459  0
                     serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
 460  0
                 }
 461  0
                 serializer.endTag( NAMESPACE, "excludes" );
 462  
             }
 463  0
             if ( setBase.getFileMode() != null && !setBase.getFileMode().equals( "0644" ) )
 464  
             {
 465  0
                 serializer.startTag( NAMESPACE, "fileMode" ).text( setBase.getFileMode() ).endTag( NAMESPACE, "fileMode" );
 466  
             }
 467  0
             if ( setBase.getDirectoryMode() != null && !setBase.getDirectoryMode().equals( "0755" ) )
 468  
             {
 469  0
                 serializer.startTag( NAMESPACE, "directoryMode" ).text( setBase.getDirectoryMode() ).endTag( NAMESPACE, "directoryMode" );
 470  
             }
 471  0
             serializer.endTag( NAMESPACE, tagName );
 472  
         }
 473  0
     } //-- void writeSetBase(SetBase, String, XmlSerializer) 
 474  
 
 475  
     /**
 476  
      * Method writeUnpackOptions
 477  
      * 
 478  
      * @param unpackOptions
 479  
      * @param serializer
 480  
      * @param tagName
 481  
      */
 482  
     private void writeUnpackOptions(UnpackOptions unpackOptions, String tagName, XmlSerializer serializer)
 483  
         throws java.io.IOException
 484  
     {
 485  0
         if ( unpackOptions != null )
 486  
         {
 487  0
             serializer.startTag( NAMESPACE, tagName );
 488  0
             if ( unpackOptions.getIncludes() != null && unpackOptions.getIncludes().size() > 0 )
 489  
             {
 490  0
                 serializer.startTag( NAMESPACE, "includes" );
 491  0
                 for ( Iterator iter = unpackOptions.getIncludes().iterator(); iter.hasNext(); )
 492  
                 {
 493  0
                     String include = (String) iter.next();
 494  0
                     serializer.startTag( NAMESPACE, "include" ).text( include ).endTag( NAMESPACE, "include" );
 495  0
                 }
 496  0
                 serializer.endTag( NAMESPACE, "includes" );
 497  
             }
 498  0
             if ( unpackOptions.getExcludes() != null && unpackOptions.getExcludes().size() > 0 )
 499  
             {
 500  0
                 serializer.startTag( NAMESPACE, "excludes" );
 501  0
                 for ( Iterator iter = unpackOptions.getExcludes().iterator(); iter.hasNext(); )
 502  
                 {
 503  0
                     String exclude = (String) iter.next();
 504  0
                     serializer.startTag( NAMESPACE, "exclude" ).text( exclude ).endTag( NAMESPACE, "exclude" );
 505  0
                 }
 506  0
                 serializer.endTag( NAMESPACE, "excludes" );
 507  
             }
 508  0
             if ( unpackOptions.isFiltered() != false )
 509  
             {
 510  0
                 serializer.startTag( NAMESPACE, "filtered" ).text( String.valueOf( unpackOptions.isFiltered() ) ).endTag( NAMESPACE, "filtered" );
 511  
             }
 512  0
             serializer.endTag( NAMESPACE, tagName );
 513  
         }
 514  0
     } //-- void writeUnpackOptions(UnpackOptions, String, XmlSerializer) 
 515  
 
 516  
 }