View Javadoc
1   // =================== DO NOT EDIT THIS FILE ====================
2   // Generated by Modello 1.8.2,
3   // any modifications will be overwritten.
4   // ==============================================================
5   
6   package org.apache.maven.scm.providers.cvslib.settings.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.scm.providers.cvslib.settings.Settings;
16  import org.codehaus.plexus.util.xml.pull.MXSerializer;
17  import org.codehaus.plexus.util.xml.pull.XmlSerializer;
18  
19  /**
20   * Class CvsXpp3Writer.
21   * 
22   * @version $Revision$ $Date$
23   */
24  @SuppressWarnings( "all" )
25  public class CvsXpp3Writer
26  {
27  
28        //--------------------------/
29       //- Class/Member Variables -/
30      //--------------------------/
31  
32      /**
33       * Field NAMESPACE.
34       */
35      private static final String NAMESPACE = null;
36  
37  
38        //-----------/
39       //- Methods -/
40      //-----------/
41  
42      /**
43       * Method write.
44       * 
45       * @param writer
46       * @param settings
47       * @throws java.io.IOException
48       */
49      public void write( Writer writer, Settings settings )
50          throws java.io.IOException
51      {
52          XmlSerializer serializer = new MXSerializer();
53          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
54          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
55          serializer.setOutput( writer );
56          serializer.startDocument( settings.getModelEncoding(), null );
57          writeSettings( settings, "cvs-settings", serializer );
58          serializer.endDocument();
59      } //-- void write( Writer, Settings )
60  
61      /**
62       * Method write.
63       * 
64       * @param stream
65       * @param settings
66       * @throws java.io.IOException
67       */
68      public void write( OutputStream stream, Settings settings )
69          throws java.io.IOException
70      {
71          XmlSerializer serializer = new MXSerializer();
72          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
73          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
74          serializer.setOutput( stream, settings.getModelEncoding() );
75          serializer.startDocument( settings.getModelEncoding(), null );
76          writeSettings( settings, "cvs-settings", serializer );
77          serializer.endDocument();
78      } //-- void write( OutputStream, Settings )
79  
80      /**
81       * Method writeSettings.
82       * 
83       * @param settings
84       * @param serializer
85       * @param tagName
86       * @throws java.io.IOException
87       */
88      private void writeSettings( Settings settings, String tagName, XmlSerializer serializer )
89          throws java.io.IOException
90      {
91          serializer.setPrefix( "", "http://maven.apache.org/SCM/CVS/1.0.0" );
92          serializer.setPrefix( "xsi", "http://www.w3.org/2001/XMLSchema-instance" );
93          serializer.startTag( NAMESPACE, tagName );
94          serializer.attribute( "", "xsi:schemaLocation", "http://maven.apache.org/SCM/CVS/1.0.0 http://maven.apache.org/xsd/scm-cvs-1.0.0.xsd" );
95          if ( ( settings.getChangeLogCommandDateFormat() != null ) && !settings.getChangeLogCommandDateFormat().equals( "yyyy-MM-dd HH:mm:ssZ" ) )
96          {
97              serializer.startTag( NAMESPACE, "changeLogCommandDateFormat" ).text( settings.getChangeLogCommandDateFormat() ).endTag( NAMESPACE, "changeLogCommandDateFormat" );
98          }
99          if ( settings.isUseCvsrc() != false )
100         {
101             serializer.startTag( NAMESPACE, "useCvsrc" ).text( String.valueOf( settings.isUseCvsrc() ) ).endTag( NAMESPACE, "useCvsrc" );
102         }
103         if ( settings.getCompressionLevel() != 3 )
104         {
105             serializer.startTag( NAMESPACE, "compressionLevel" ).text( String.valueOf( settings.getCompressionLevel() ) ).endTag( NAMESPACE, "compressionLevel" );
106         }
107         if ( settings.isTraceCvsCommand() != false )
108         {
109             serializer.startTag( NAMESPACE, "traceCvsCommand" ).text( String.valueOf( settings.isTraceCvsCommand() ) ).endTag( NAMESPACE, "traceCvsCommand" );
110         }
111         if ( settings.getTemporaryFilesDirectory() != null )
112         {
113             serializer.startTag( NAMESPACE, "temporaryFilesDirectory" ).text( settings.getTemporaryFilesDirectory() ).endTag( NAMESPACE, "temporaryFilesDirectory" );
114         }
115         if ( ( settings.getCvsVariables() != null ) && ( settings.getCvsVariables().size() > 0 ) )
116         {
117             serializer.startTag( NAMESPACE, "cvsVariables" );
118             for ( Iterator iter = settings.getCvsVariables().keySet().iterator(); iter.hasNext(); )
119             {
120                 String key = (String) iter.next();
121                 String value = (String) settings.getCvsVariables().get( key );
122                 serializer.startTag( NAMESPACE, "" + key + "" ).text( value ).endTag( NAMESPACE, "" + key + "" );
123             }
124             serializer.endTag( NAMESPACE, "cvsVariables" );
125         }
126         if ( settings.isUseForceTag() != true )
127         {
128             serializer.startTag( NAMESPACE, "useForceTag" ).text( String.valueOf( settings.isUseForceTag() ) ).endTag( NAMESPACE, "useForceTag" );
129         }
130         serializer.endTag( NAMESPACE, tagName );
131     } //-- void writeSettings( Settings, String, XmlSerializer )
132 
133 }