Coverage Report - org.apache.maven.toolchain.model.io.xpp3.MavenToolchainsXpp3Writer
 
Classes in this File Line Coverage Branch Coverage Complexity
MavenToolchainsXpp3Writer
0%
0/28
0%
0/16
3.333
 
 1  
 /*
 2  
  * $Id$
 3  
  */
 4  
 
 5  
 package org.apache.maven.toolchain.model.io.xpp3;
 6  
 
 7  
   //---------------------------------/
 8  
  //- Imported classes and packages -/
 9  
 //---------------------------------/
 10  
 
 11  
 import java.io.Writer;
 12  
 import java.text.DateFormat;
 13  
 import java.util.Iterator;
 14  
 import java.util.Locale;
 15  
 import org.apache.maven.toolchain.model.PersistedToolchains;
 16  
 import org.apache.maven.toolchain.model.ToolchainModel;
 17  
 import org.codehaus.plexus.util.xml.Xpp3Dom;
 18  
 import org.codehaus.plexus.util.xml.pull.MXSerializer;
 19  
 import org.codehaus.plexus.util.xml.pull.XmlSerializer;
 20  
 
 21  
 /**
 22  
  * Class MavenToolchainsXpp3Writer.
 23  
  * 
 24  
  * @version $Revision$ $Date$
 25  
  */
 26  0
 public class MavenToolchainsXpp3Writer {
 27  
 
 28  
 
 29  
       //--------------------------/
 30  
      //- Class/Member Variables -/
 31  
     //--------------------------/
 32  
 
 33  
     /**
 34  
      * Field NAMESPACE.
 35  
      */
 36  
     private String NAMESPACE;
 37  
 
 38  
 
 39  
       //-----------/
 40  
      //- Methods -/
 41  
     //-----------/
 42  
 
 43  
     /**
 44  
      * Method write.
 45  
      * 
 46  
      * @param writer
 47  
      * @param persistedToolchains
 48  
      * @throws java.io.IOException
 49  
      */
 50  
     public void write( Writer writer, PersistedToolchains persistedToolchains )
 51  
         throws java.io.IOException
 52  
     {
 53  0
         XmlSerializer serializer = new MXSerializer();
 54  0
         serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
 55  0
         serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
 56  0
         serializer.setOutput( writer );
 57  0
         serializer.startDocument( persistedToolchains.getModelEncoding(), null );
 58  0
         writePersistedToolchains( persistedToolchains, "toolchains", serializer );
 59  0
         serializer.endDocument();
 60  0
     } //-- void write( Writer, PersistedToolchains ) 
 61  
 
 62  
     /**
 63  
      * Method writePersistedToolchains.
 64  
      * 
 65  
      * @param persistedToolchains
 66  
      * @param serializer
 67  
      * @param tagName
 68  
      * @throws java.io.IOException
 69  
      */
 70  
     private void writePersistedToolchains( PersistedToolchains persistedToolchains, String tagName, XmlSerializer serializer )
 71  
         throws java.io.IOException
 72  
     {
 73  0
         if ( persistedToolchains != null )
 74  
         {
 75  0
             serializer.startTag( NAMESPACE, tagName );
 76  0
             if ( persistedToolchains.getToolchains() != null && persistedToolchains.getToolchains().size() > 0 )
 77  
             {
 78  0
                 for ( Iterator iter = persistedToolchains.getToolchains().iterator(); iter.hasNext(); )
 79  
                 {
 80  0
                     ToolchainModel o = (ToolchainModel) iter.next();
 81  0
                     writeToolchainModel( o, "toolchain", serializer );
 82  0
                 }
 83  
             }
 84  0
             serializer.endTag( NAMESPACE, tagName );
 85  
         }
 86  0
     } //-- void writePersistedToolchains( PersistedToolchains, String, XmlSerializer ) 
 87  
 
 88  
     /**
 89  
      * Method writeToolchainModel.
 90  
      * 
 91  
      * @param toolchainModel
 92  
      * @param serializer
 93  
      * @param tagName
 94  
      * @throws java.io.IOException
 95  
      */
 96  
     private void writeToolchainModel( ToolchainModel toolchainModel, String tagName, XmlSerializer serializer )
 97  
         throws java.io.IOException
 98  
     {
 99  0
         if ( toolchainModel != null )
 100  
         {
 101  0
             serializer.startTag( NAMESPACE, tagName );
 102  0
             if ( toolchainModel.getType() != null )
 103  
             {
 104  0
                 serializer.startTag( NAMESPACE, "type" ).text( toolchainModel.getType() ).endTag( NAMESPACE, "type" );
 105  
             }
 106  0
             if ( toolchainModel.getProvides() != null )
 107  
             {
 108  0
                 ((Xpp3Dom) toolchainModel.getProvides()).writeToSerializer( NAMESPACE, serializer );
 109  
             }
 110  0
             if ( toolchainModel.getConfiguration() != null )
 111  
             {
 112  0
                 ((Xpp3Dom) toolchainModel.getConfiguration()).writeToSerializer( NAMESPACE, serializer );
 113  
             }
 114  0
             serializer.endTag( NAMESPACE, tagName );
 115  
         }
 116  0
     } //-- void writeToolchainModel( ToolchainModel, String, XmlSerializer ) 
 117  
 
 118  
 
 119  
 }