View Javadoc

1   /*
2    =================== DO NOT EDIT THIS FILE ====================
3    Generated by Modello 1.4.1 on 2011-05-07 21:20:49,
4    any modifications will be overwritten.
5    ==============================================================
6    */
7   
8   package com.soebes.maven.plugins.mlv.model.io.xpp3;
9   
10    //---------------------------------/
11   //- Imported classes and packages -/
12  //---------------------------------/
13  
14  import com.soebes.maven.plugins.mlv.model.LicenseItem;
15  import com.soebes.maven.plugins.mlv.model.LicensesContainer;
16  import com.soebes.maven.plugins.mlv.model.LicensesList;
17  import java.io.OutputStream;
18  import java.io.Writer;
19  import java.text.DateFormat;
20  import java.util.Iterator;
21  import java.util.Locale;
22  import org.codehaus.plexus.util.xml.pull.MXSerializer;
23  import org.codehaus.plexus.util.xml.pull.XmlSerializer;
24  
25  /**
26   * Class LicensesXpp3Writer.
27   * 
28   * @version $Revision$ $Date$
29   */
30  @SuppressWarnings( "all" )
31  public class LicensesXpp3Writer
32  {
33  
34        //--------------------------/
35       //- Class/Member Variables -/
36      //--------------------------/
37  
38      /**
39       * Field NAMESPACE.
40       */
41      private static final String NAMESPACE = null;
42  
43  
44        //-----------/
45       //- Methods -/
46      //-----------/
47  
48      /**
49       * Method write.
50       * 
51       * @param writer
52       * @param licensesContainer
53       * @throws java.io.IOException
54       */
55      public void write( Writer writer, LicensesContainer licensesContainer )
56          throws java.io.IOException
57      {
58          XmlSerializer serializer = new MXSerializer();
59          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
60          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
61          serializer.setOutput( writer );
62          serializer.startDocument( licensesContainer.getModelEncoding(), null );
63          writeLicensesContainer( licensesContainer, "licenses", serializer );
64          serializer.endDocument();
65      } //-- void write( Writer, LicensesContainer )
66  
67      /**
68       * Method write.
69       * 
70       * @param stream
71       * @param licensesContainer
72       * @throws java.io.IOException
73       */
74      public void write( OutputStream stream, LicensesContainer licensesContainer )
75          throws java.io.IOException
76      {
77          XmlSerializer serializer = new MXSerializer();
78          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
79          serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
80          serializer.setOutput( stream, licensesContainer.getModelEncoding() );
81          serializer.startDocument( licensesContainer.getModelEncoding(), null );
82          writeLicensesContainer( licensesContainer, "licenses", serializer );
83          serializer.endDocument();
84      } //-- void write( OutputStream, LicensesContainer )
85  
86      /**
87       * Method writeLicenseItem.
88       * 
89       * @param licenseItem
90       * @param serializer
91       * @param tagName
92       * @throws java.io.IOException
93       */
94      private void writeLicenseItem( LicenseItem licenseItem, String tagName, XmlSerializer serializer )
95          throws java.io.IOException
96      {
97          serializer.startTag( NAMESPACE, tagName );
98          if ( licenseItem.getId() != null )
99          {
100             serializer.startTag( NAMESPACE, "id" ).text( licenseItem.getId() ).endTag( NAMESPACE, "id" );
101         }
102         if ( licenseItem.getDescription() != null )
103         {
104             serializer.startTag( NAMESPACE, "description" ).text( licenseItem.getDescription() ).endTag( NAMESPACE, "description" );
105         }
106         if ( ( licenseItem.getNames() != null ) && ( licenseItem.getNames().size() > 0 ) )
107         {
108             serializer.startTag( NAMESPACE, "names" );
109             for ( Iterator iter = licenseItem.getNames().iterator(); iter.hasNext(); )
110             {
111                 String name = (String) iter.next();
112                 serializer.startTag( NAMESPACE, "name" ).text( name ).endTag( NAMESPACE, "name" );
113             }
114             serializer.endTag( NAMESPACE, "names" );
115         }
116         if ( ( licenseItem.getUrls() != null ) && ( licenseItem.getUrls().size() > 0 ) )
117         {
118             serializer.startTag( NAMESPACE, "urls" );
119             for ( Iterator iter = licenseItem.getUrls().iterator(); iter.hasNext(); )
120             {
121                 String url = (String) iter.next();
122                 serializer.startTag( NAMESPACE, "url" ).text( url ).endTag( NAMESPACE, "url" );
123             }
124             serializer.endTag( NAMESPACE, "urls" );
125         }
126         serializer.endTag( NAMESPACE, tagName );
127     } //-- void writeLicenseItem( LicenseItem, String, XmlSerializer )
128 
129     /**
130      * Method writeLicensesContainer.
131      * 
132      * @param licensesContainer
133      * @param serializer
134      * @param tagName
135      * @throws java.io.IOException
136      */
137     private void writeLicensesContainer( LicensesContainer licensesContainer, String tagName, XmlSerializer serializer )
138         throws java.io.IOException
139     {
140         serializer.startTag( NAMESPACE, tagName );
141         if ( licensesContainer.getValid() != null )
142         {
143             writeLicensesList( (LicensesList) licensesContainer.getValid(), "valid", serializer );
144         }
145         if ( licensesContainer.getInvalid() != null )
146         {
147             writeLicensesList( (LicensesList) licensesContainer.getInvalid(), "invalid", serializer );
148         }
149         if ( licensesContainer.getWarning() != null )
150         {
151             writeLicensesList( (LicensesList) licensesContainer.getWarning(), "warning", serializer );
152         }
153         serializer.endTag( NAMESPACE, tagName );
154     } //-- void writeLicensesContainer( LicensesContainer, String, XmlSerializer )
155 
156     /**
157      * Method writeLicensesList.
158      * 
159      * @param licensesList
160      * @param serializer
161      * @param tagName
162      * @throws java.io.IOException
163      */
164     private void writeLicensesList( LicensesList licensesList, String tagName, XmlSerializer serializer )
165         throws java.io.IOException
166     {
167         serializer.startTag( NAMESPACE, tagName );
168         if ( ( licensesList.getLicenses() != null ) && ( licensesList.getLicenses().size() > 0 ) )
169         {
170             for ( Iterator iter = licensesList.getLicenses().iterator(); iter.hasNext(); )
171             {
172                 LicenseItem o = (LicenseItem) iter.next();
173                 writeLicenseItem( o, "license", serializer );
174             }
175         }
176         serializer.endTag( NAMESPACE, tagName );
177     } //-- void writeLicensesList( LicensesList, String, XmlSerializer )
178 
179 }