View Javadoc

1   /*
2    =================== DO NOT EDIT THIS FILE ====================
3    Generated by Modello
4    any modifications will be overwritten.
5    ==============================================================
6    */
7   
8   package org.apache.continuum.release.model.io.stax;
9   
10    //---------------------------------/
11   //- Imported classes and packages -/
12  //---------------------------------/
13  
14  import java.io.IOException;
15  import java.io.InputStream;
16  import java.io.StringWriter;
17  import java.io.Writer;
18  import java.text.DateFormat;
19  import java.util.Iterator;
20  import java.util.Locale;
21  import java.util.jar.Manifest;
22  import javanet.staxutils.IndentingXMLStreamWriter;
23  import javax.xml.stream.*;
24  import org.apache.continuum.release.model.PreparedRelease;
25  import org.apache.continuum.release.model.PreparedReleaseModel;
26  import org.codehaus.plexus.util.xml.Xpp3Dom;
27  
28  /**
29   * Class ContinuumPrepareReleasesModelStaxWriter.
30   * 
31   * @version $Revision$ $Date$
32   */
33  @SuppressWarnings( "all" )
34  public class ContinuumPrepareReleasesModelStaxWriter
35  {
36  
37        //--------------------------/
38       //- Class/Member Variables -/
39      //--------------------------/
40  
41      /**
42       * Field curId.
43       */
44      private int curId;
45  
46      /**
47       * Field idMap.
48       */
49      private java.util.Map idMap;
50  
51  
52        //----------------/
53       //- Constructors -/
54      //----------------/
55  
56      public ContinuumPrepareReleasesModelStaxWriter()
57      {
58          idMap = new java.util.HashMap();
59      } //-- org.apache.continuum.release.model.io.stax.ContinuumPrepareReleasesModelStaxWriter()
60  
61  
62        //-----------/
63       //- Methods -/
64      //-----------/
65  
66      /**
67       * Method write.
68       * 
69       * @param writer
70       * @param preparedReleaseModel
71       * @throws java.io.IOException
72       * @throws XMLStreamException
73       */
74      public void write( Writer writer, PreparedReleaseModel preparedReleaseModel )
75          throws java.io.IOException, XMLStreamException
76      {
77          XMLOutputFactory factory = XMLOutputFactory.newInstance();
78          boolean supportWindowsLineEndings = false;
79          if ( factory.isPropertySupported( "com.ctc.wstx.outputEscapeCr" ) )
80          {
81              factory.setProperty( "com.ctc.wstx.outputEscapeCr", Boolean.FALSE );
82              supportWindowsLineEndings = true;
83          }
84          if ( factory.isPropertySupported( "org.codehaus.stax2.automaticEmptyElements" ) )
85          {
86              factory.setProperty( "org.codehaus.stax2.automaticEmptyElements", Boolean.FALSE );
87          }
88          IndentingXMLStreamWriter serializer = new IndentingXMLStreamWriter( factory.createXMLStreamWriter( writer ) );
89          if ( supportWindowsLineEndings )
90          {
91              serializer.setNewLine( serializer.getLineSeparator() );
92          }
93          serializer.writeStartDocument( preparedReleaseModel.getModelEncoding(), "1.0" );
94          writePreparedReleaseModel( preparedReleaseModel, "prepared-releases", serializer );
95          serializer.writeEndDocument();
96      } //-- void write( Writer, PreparedReleaseModel )
97  
98      /**
99       * Method writeDom.
100      * 
101      * @param dom
102      * @param serializer
103      * @throws XMLStreamException
104      */
105     private void writeDom( Xpp3Dom dom, XMLStreamWriter serializer )
106         throws XMLStreamException
107     {
108         serializer.writeStartElement( dom.getName() );
109         String[] attributeNames = dom.getAttributeNames();
110         for ( int i = 0; i < attributeNames.length; i++ )
111         {
112             String attributeName = attributeNames[i];
113             serializer.writeAttribute( attributeName, dom.getAttribute( attributeName ) );
114         }
115         Xpp3Dom[] children = dom.getChildren();
116         for ( int i = 0; i < children.length; i++ )
117         {
118             writeDom( children[i], serializer );
119         }
120         String value = dom.getValue();
121         if ( value != null )
122         {
123             serializer.writeCharacters( value );
124         }
125         serializer.writeEndElement();
126     } //-- void writeDom( Xpp3Dom, XMLStreamWriter )
127 
128     /**
129      * Method writePreparedRelease.
130      * 
131      * @param preparedRelease
132      * @param serializer
133      * @param tagName
134      * @throws java.io.IOException
135      * @throws XMLStreamException
136      */
137     private void writePreparedRelease( PreparedRelease preparedRelease, String tagName, XMLStreamWriter serializer )
138         throws java.io.IOException, XMLStreamException
139     {
140         if ( preparedRelease != null )
141         {
142             serializer.writeStartElement( tagName );
143             if ( preparedRelease.getReleaseId() != null )
144             {
145                 serializer.writeStartElement( "releaseId" );
146                 serializer.writeCharacters( preparedRelease.getReleaseId() );
147                 serializer.writeEndElement();
148             }
149             if ( preparedRelease.getReleaseName() != null )
150             {
151                 serializer.writeStartElement( "releaseName" );
152                 serializer.writeCharacters( preparedRelease.getReleaseName() );
153                 serializer.writeEndElement();
154             }
155             if ( preparedRelease.getBuildAgentUrl() != null )
156             {
157                 serializer.writeStartElement( "buildAgentUrl" );
158                 serializer.writeCharacters( preparedRelease.getBuildAgentUrl() );
159                 serializer.writeEndElement();
160             }
161             if ( preparedRelease.getReleaseType() != null )
162             {
163                 serializer.writeStartElement( "releaseType" );
164                 serializer.writeCharacters( preparedRelease.getReleaseType() );
165                 serializer.writeEndElement();
166             }
167             if ( preparedRelease.getReleaseGoals() != null )
168             {
169                 serializer.writeStartElement( "releaseGoals" );
170                 serializer.writeCharacters( preparedRelease.getReleaseGoals() );
171                 serializer.writeEndElement();
172             }
173             if ( preparedRelease.getReleaseBy() != null )
174             {
175                 serializer.writeStartElement( "releaseBy" );
176                 serializer.writeCharacters( preparedRelease.getReleaseBy() );
177                 serializer.writeEndElement();
178             }
179             serializer.writeEndElement();
180         }
181     } //-- void writePreparedRelease( PreparedRelease, String, XMLStreamWriter )
182 
183     /**
184      * Method writePreparedReleaseModel.
185      * 
186      * @param preparedReleaseModel
187      * @param serializer
188      * @param tagName
189      * @throws java.io.IOException
190      * @throws XMLStreamException
191      */
192     private void writePreparedReleaseModel( PreparedReleaseModel preparedReleaseModel, String tagName, XMLStreamWriter serializer )
193         throws java.io.IOException, XMLStreamException
194     {
195         if ( preparedReleaseModel != null )
196         {
197             serializer.writeStartElement( tagName );
198             if ( ( preparedReleaseModel.getPreparedReleases() != null ) && ( preparedReleaseModel.getPreparedReleases().size() > 0 ) )
199             {
200                 serializer.writeStartElement( "preparedReleases" );
201                 for ( Iterator iter = preparedReleaseModel.getPreparedReleases().iterator(); iter.hasNext(); )
202                 {
203                     PreparedRelease o = (PreparedRelease) iter.next();
204                     writePreparedRelease( o, "preparedRelease", serializer );
205                 }
206                 serializer.writeEndElement();
207             }
208             serializer.writeEndElement();
209         }
210     } //-- void writePreparedReleaseModel( PreparedReleaseModel, String, XMLStreamWriter )
211 
212 }