View Javadoc
1   // =================== DO NOT EDIT THIS FILE ====================
2   // Generated by Modello 2.4.0,
3   // any modifications will be overwritten.
4   // ==============================================================
5   
6   package org.codehaus.mojo.taglist.output.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.codehaus.mojo.taglist.output.TagListXMLComment;
16  import org.codehaus.mojo.taglist.output.TagListXMLFile;
17  import org.codehaus.mojo.taglist.output.TagListXMLReport;
18  import org.codehaus.mojo.taglist.output.TagListXMLTag;
19  import org.codehaus.plexus.util.xml.pull.MXSerializer;
20  import org.codehaus.plexus.util.xml.pull.XmlSerializer;
21  
22  /**
23   * Class TaglistOutputXpp3Writer.
24   * 
25   * @version $Revision$ $Date$
26   */
27  @SuppressWarnings( "all" )
28  public class TaglistOutputXpp3Writer
29  {
30  
31        //--------------------------/
32       //- Class/Member Variables -/
33      //--------------------------/
34  
35      /**
36       * Field NAMESPACE.
37       */
38      private static final String NAMESPACE = null;
39  
40      /**
41       * Field fileComment.
42       */
43      private String fileComment = null;
44  
45  
46        //-----------/
47       //- Methods -/
48      //-----------/
49  
50      /**
51       * Method setFileComment.
52       * 
53       * @param fileComment a fileComment object.
54       */
55      public void setFileComment( String fileComment )
56      {
57          this.fileComment = fileComment;
58      } //-- void setFileComment( String )
59  
60      /**
61       * Method write.
62       * 
63       * @param writer a writer object.
64       * @param tagListXMLReport a tagListXMLReport object.
65       * @throws java.io.IOException java.io.IOException if any.
66       */
67      public void write( Writer writer, TagListXMLReport tagListXMLReport )
68          throws java.io.IOException
69      {
70          XmlSerializer serializer = new MXSerializer();
71          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
72          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
73          serializer.setOutput( writer );
74          serializer.startDocument( tagListXMLReport.getModelEncoding(), null );
75          writeTagListXMLReport( tagListXMLReport, "report", serializer );
76          serializer.endDocument();
77      } //-- void write( Writer, TagListXMLReport )
78  
79      /**
80       * Method write.
81       * 
82       * @param stream a stream object.
83       * @param tagListXMLReport a tagListXMLReport object.
84       * @throws java.io.IOException java.io.IOException if any.
85       */
86      public void write( OutputStream stream, TagListXMLReport tagListXMLReport )
87          throws java.io.IOException
88      {
89          XmlSerializer serializer = new MXSerializer();
90          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
91          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
92          serializer.setOutput( stream, tagListXMLReport.getModelEncoding() );
93          serializer.startDocument( tagListXMLReport.getModelEncoding(), null );
94          writeTagListXMLReport( tagListXMLReport, "report", serializer );
95          serializer.endDocument();
96      } //-- void write( OutputStream, TagListXMLReport )
97  
98      /**
99       * Method writeTagListXMLComment.
100      * 
101      * @param tagListXMLComment a tagListXMLComment object.
102      * @param serializer a serializer object.
103      * @param tagName a tagName object.
104      * @throws java.io.IOException java.io.IOException if any.
105      */
106     private void writeTagListXMLComment( TagListXMLComment tagListXMLComment, String tagName, XmlSerializer serializer )
107         throws java.io.IOException
108     {
109         serializer.startTag( NAMESPACE, tagName );
110         if ( tagListXMLComment.getLineNumber() != null )
111         {
112             serializer.startTag( NAMESPACE, "lineNumber" ).text( tagListXMLComment.getLineNumber() ).endTag( NAMESPACE, "lineNumber" );
113         }
114         if ( tagListXMLComment.getComment() != null )
115         {
116             serializer.startTag( NAMESPACE, "comment" ).text( tagListXMLComment.getComment() ).endTag( NAMESPACE, "comment" );
117         }
118         serializer.endTag( NAMESPACE, tagName );
119     } //-- void writeTagListXMLComment( TagListXMLComment, String, XmlSerializer )
120 
121     /**
122      * Method writeTagListXMLFile.
123      * 
124      * @param tagListXMLFile a tagListXMLFile object.
125      * @param serializer a serializer object.
126      * @param tagName a tagName object.
127      * @throws java.io.IOException java.io.IOException if any.
128      */
129     private void writeTagListXMLFile( TagListXMLFile tagListXMLFile, String tagName, XmlSerializer serializer )
130         throws java.io.IOException
131     {
132         serializer.startTag( NAMESPACE, tagName );
133         if ( tagListXMLFile.getName() != null )
134         {
135             serializer.attribute( NAMESPACE, "name", tagListXMLFile.getName() );
136         }
137         if ( tagListXMLFile.getCount() != null )
138         {
139             serializer.attribute( NAMESPACE, "count", tagListXMLFile.getCount() );
140         }
141         if ( ( tagListXMLFile.getComments() != null ) && ( tagListXMLFile.getComments().size() > 0 ) )
142         {
143             serializer.startTag( NAMESPACE, "comments" );
144             for ( Iterator iter = tagListXMLFile.getComments().iterator(); iter.hasNext(); )
145             {
146                 TagListXMLComment o = (TagListXMLComment) iter.next();
147                 writeTagListXMLComment( o, "comment", serializer );
148             }
149             serializer.endTag( NAMESPACE, "comments" );
150         }
151         serializer.endTag( NAMESPACE, tagName );
152     } //-- void writeTagListXMLFile( TagListXMLFile, String, XmlSerializer )
153 
154     /**
155      * Method writeTagListXMLReport.
156      * 
157      * @param tagListXMLReport a tagListXMLReport object.
158      * @param serializer a serializer object.
159      * @param tagName a tagName object.
160      * @throws java.io.IOException java.io.IOException if any.
161      */
162     private void writeTagListXMLReport( TagListXMLReport tagListXMLReport, String tagName, XmlSerializer serializer )
163         throws java.io.IOException
164     {
165         if ( this.fileComment != null )
166         {
167         serializer.comment(this.fileComment);
168         }
169         serializer.setPrefix( "", "https://www.mojohaus.org/TAGLISTOUTPUT/1.0.0" );
170         serializer.setPrefix( "xsi", "http://www.w3.org/2001/XMLSchema-instance" );
171         serializer.startTag( NAMESPACE, tagName );
172         serializer.attribute( "", "xsi:schemaLocation", "https://www.mojohaus.org/TAGLISTOUTPUT/1.0.0 https://www.mojohaus.org/taglist-maven-plugin/xsd/taglistOutput-1.0.0.xsd" );
173         if ( ( tagListXMLReport.getTags() != null ) && ( tagListXMLReport.getTags().size() > 0 ) )
174         {
175             serializer.startTag( NAMESPACE, "tags" );
176             for ( Iterator iter = tagListXMLReport.getTags().iterator(); iter.hasNext(); )
177             {
178                 TagListXMLTag o = (TagListXMLTag) iter.next();
179                 writeTagListXMLTag( o, "tag", serializer );
180             }
181             serializer.endTag( NAMESPACE, "tags" );
182         }
183         serializer.endTag( NAMESPACE, tagName );
184     } //-- void writeTagListXMLReport( TagListXMLReport, String, XmlSerializer )
185 
186     /**
187      * Method writeTagListXMLTag.
188      * 
189      * @param tagListXMLTag a tagListXMLTag object.
190      * @param serializer a serializer object.
191      * @param tagName a tagName object.
192      * @throws java.io.IOException java.io.IOException if any.
193      */
194     private void writeTagListXMLTag( TagListXMLTag tagListXMLTag, String tagName, XmlSerializer serializer )
195         throws java.io.IOException
196     {
197         serializer.startTag( NAMESPACE, tagName );
198         if ( tagListXMLTag.getName() != null )
199         {
200             serializer.attribute( NAMESPACE, "name", tagListXMLTag.getName() );
201         }
202         if ( tagListXMLTag.getCount() != null )
203         {
204             serializer.attribute( NAMESPACE, "count", tagListXMLTag.getCount() );
205         }
206         if ( ( tagListXMLTag.getFiles() != null ) && ( tagListXMLTag.getFiles().size() > 0 ) )
207         {
208             serializer.startTag( NAMESPACE, "files" );
209             for ( Iterator iter = tagListXMLTag.getFiles().iterator(); iter.hasNext(); )
210             {
211                 TagListXMLFile o = (TagListXMLFile) iter.next();
212                 writeTagListXMLFile( o, "file", serializer );
213             }
214             serializer.endTag( NAMESPACE, "files" );
215         }
216         serializer.endTag( NAMESPACE, tagName );
217     } //-- void writeTagListXMLTag( TagListXMLTag, String, XmlSerializer )
218 
219 }