View Javadoc
1   /*
2    * $Id$
3    */
4   
5   package org.apache.maven.scm.providers.vss.settings.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.scm.providers.vss.settings.Settings;
16  import org.codehaus.plexus.util.xml.pull.MXSerializer;
17  import org.codehaus.plexus.util.xml.pull.XmlSerializer;
18  
19  /**
20   * Class VssXpp3Writer.
21   * 
22   * @version $Revision$ $Date$
23   */
24  public class VssXpp3Writer {
25  
26  
27        //--------------------------/
28       //- Class/Member Variables -/
29      //--------------------------/
30  
31      /**
32       * Field NAMESPACE.
33       */
34      private String NAMESPACE;
35  
36  
37        //-----------/
38       //- Methods -/
39      //-----------/
40  
41      /**
42       * Method write.
43       * 
44       * @param writer
45       * @param settings
46       * @throws java.io.IOException
47       */
48      public void write(Writer writer, Settings settings)
49          throws java.io.IOException
50      {
51          XmlSerializer serializer = new MXSerializer();
52          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
53          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
54          serializer.setOutput( writer );
55          serializer.startDocument( settings.getModelEncoding(), null );
56          writeSettings( settings, "vss-settings", serializer );
57          serializer.endDocument();
58      } //-- void write(Writer, Settings) 
59  
60      /**
61       * Method writeSettings.
62       * 
63       * @param settings
64       * @param serializer
65       * @param tagName
66       * @throws java.io.IOException
67       */
68      private void writeSettings(Settings settings, String tagName, XmlSerializer serializer)
69          throws java.io.IOException
70      {
71          if ( settings != null )
72          {
73              serializer.startTag( NAMESPACE, tagName );
74              if ( settings.getVssDirectory() != null )
75              {
76                  serializer.startTag( NAMESPACE, "vssDirectory" ).text( settings.getVssDirectory() ).endTag( NAMESPACE, "vssDirectory" );
77              }
78              serializer.endTag( NAMESPACE, tagName );
79          }
80      } //-- void writeSettings(Settings, String, XmlSerializer) 
81  
82  
83  }