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.provider.local.metadata.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.provider.local.metadata.LocalScmMetadata;
16  import org.codehaus.plexus.util.xml.pull.MXSerializer;
17  import org.codehaus.plexus.util.xml.pull.XmlSerializer;
18  
19  /**
20   * Class LocalScmMetadataXpp3Writer.
21   * 
22   * @version $Revision$ $Date$
23   */
24  @SuppressWarnings( "all" )
25  public class LocalScmMetadataXpp3Writer
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 localScmMetadata a localScmMetadata object.
62       * @throws java.io.IOException java.io.IOException if any.
63       */
64      public void write( Writer writer, LocalScmMetadata localScmMetadata )
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( localScmMetadata.getModelEncoding(), null );
72          writeLocalScmMetadata( localScmMetadata, "localScmMetadata", serializer );
73          serializer.endDocument();
74      } //-- void write( Writer, LocalScmMetadata )
75  
76      /**
77       * Method write.
78       * 
79       * @param stream a stream object.
80       * @param localScmMetadata a localScmMetadata object.
81       * @throws java.io.IOException java.io.IOException if any.
82       */
83      public void write( OutputStream stream, LocalScmMetadata localScmMetadata )
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, localScmMetadata.getModelEncoding() );
90          serializer.startDocument( localScmMetadata.getModelEncoding(), null );
91          writeLocalScmMetadata( localScmMetadata, "localScmMetadata", serializer );
92          serializer.endDocument();
93      } //-- void write( OutputStream, LocalScmMetadata )
94  
95      /**
96       * Method writeLocalScmMetadata.
97       * 
98       * @param localScmMetadata a localScmMetadata 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 writeLocalScmMetadata( LocalScmMetadata localScmMetadata, 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/LOCAL/1.0.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/LOCAL/1.0.0 http://maven.apache.org/xsd/scm-local-1.0.0.xsd" );
114         if ( ( localScmMetadata.getRepositoryFileNames() != null ) && ( localScmMetadata.getRepositoryFileNames().size() > 0 ) )
115         {
116             serializer.startTag( NAMESPACE, "repositoryFileNames" );
117             for ( Iterator iter = localScmMetadata.getRepositoryFileNames().iterator(); iter.hasNext(); )
118             {
119                 String repositoryFileName = (String) iter.next();
120                 serializer.startTag( NAMESPACE, "repositoryFileName" ).text( repositoryFileName ).endTag( NAMESPACE, "repositoryFileName" );
121             }
122             serializer.endTag( NAMESPACE, "repositoryFileNames" );
123         }
124         serializer.endTag( NAMESPACE, tagName );
125     } //-- void writeLocalScmMetadata( LocalScmMetadata, String, XmlSerializer )
126 
127 }