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