This project has retired. For details please refer to its Attic page.
UsersManagementStaxWriter xref
View Javadoc

1   // =================== DO NOT EDIT THIS FILE ====================
2   // Generated by Modello 1.7,
3   // any modifications will be overwritten.
4   // ==============================================================
5   
6   package org.apache.archiva.redback.users.jdo.io.stax;
7   
8     //---------------------------------/
9    //- Imported classes and packages -/
10  //---------------------------------/
11  
12  import java.io.IOException;
13  import java.io.OutputStream;
14  import java.io.StringWriter;
15  import java.io.Writer;
16  import java.text.DateFormat;
17  import java.util.Iterator;
18  import java.util.Locale;
19  import java.util.jar.Manifest;
20  import javax.xml.stream.*;
21  import org.apache.archiva.redback.users.jdo.JdoUser;
22  import org.apache.archiva.redback.users.jdo.UserDatabase;
23  
24  /**
25   * Class UsersManagementStaxWriter.
26   * 
27   * @version $Revision$ $Date$
28   */
29  public class UsersManagementStaxWriter
30  {
31  
32        //--------------------------/
33       //- Class/Member Variables -/
34      //--------------------------/
35  
36      /**
37       * Field curId.
38       */
39      private int curId;
40  
41      /**
42       * Field idMap.
43       */
44      private java.util.Map idMap;
45  
46  
47        //----------------/
48       //- Constructors -/
49      //----------------/
50  
51      public UsersManagementStaxWriter()
52      {
53          idMap = new java.util.HashMap();
54      } //-- org.apache.archiva.redback.users.jdo.io.stax.UsersManagementStaxWriter()
55  
56  
57        //-----------/
58       //- Methods -/
59      //-----------/
60  
61      /**
62       * Method write.
63       * 
64       * @param writer
65       * @param userDatabase
66       * @throws java.io.IOException
67       * @throws XMLStreamException
68       */
69      public void write( Writer writer, UserDatabase userDatabase )
70          throws java.io.IOException, XMLStreamException
71      {
72          XMLOutputFactory factory = XMLOutputFactory.newInstance();
73          boolean supportWindowsLineEndings = false;
74          if ( factory.isPropertySupported( "com.ctc.wstx.outputEscapeCr" ) )
75          {
76              factory.setProperty( "com.ctc.wstx.outputEscapeCr", Boolean.FALSE );
77              supportWindowsLineEndings = true;
78          }
79          if ( factory.isPropertySupported( "org.codehaus.stax2.automaticEmptyElements" ) )
80          {
81              factory.setProperty( "org.codehaus.stax2.automaticEmptyElements", Boolean.FALSE );
82          }
83          IndentingXMLStreamWriter serializer = new IndentingXMLStreamWriter( factory.createXMLStreamWriter( writer ) );
84          if ( supportWindowsLineEndings )
85          {
86              serializer.setNewLine( serializer.getLineSeparator() );
87          }
88          serializer.writeStartDocument( userDatabase.getModelEncoding(), "1.0" );
89          writeUserDatabase( userDatabase, "userDatabase", serializer );
90          serializer.writeEndDocument();
91      } //-- void write( Writer, UserDatabase )
92  
93      /**
94       * Method write.
95       * 
96       * @param stream
97       * @param userDatabase
98       * @throws java.io.IOException
99       * @throws XMLStreamException
100      */
101     public void write( OutputStream stream, UserDatabase userDatabase )
102         throws java.io.IOException, XMLStreamException
103     {
104         XMLOutputFactory factory = XMLOutputFactory.newInstance();
105         boolean supportWindowsLineEndings = false;
106         if ( factory.isPropertySupported( "com.ctc.wstx.outputEscapeCr" ) )
107         {
108             factory.setProperty( "com.ctc.wstx.outputEscapeCr", Boolean.FALSE );
109             supportWindowsLineEndings = true;
110         }
111         if ( factory.isPropertySupported( "org.codehaus.stax2.automaticEmptyElements" ) )
112         {
113             factory.setProperty( "org.codehaus.stax2.automaticEmptyElements", Boolean.FALSE );
114         }
115         IndentingXMLStreamWriter serializer = new IndentingXMLStreamWriter( factory.createXMLStreamWriter( stream, userDatabase.getModelEncoding() ) );
116         if ( supportWindowsLineEndings )
117         {
118             serializer.setNewLine( serializer.getLineSeparator() );
119         }
120         serializer.writeStartDocument( userDatabase.getModelEncoding(), "1.0" );
121         writeUserDatabase( userDatabase, "userDatabase", serializer );
122         serializer.writeEndDocument();
123     } //-- void write( OutputStream, UserDatabase )
124 
125     /**
126      * Method writeJdoUser.
127      * 
128      * @param jdoUser
129      * @param serializer
130      * @param tagName
131      * @throws java.io.IOException
132      * @throws XMLStreamException
133      */
134     private void writeJdoUser( JdoUser jdoUser, String tagName, XMLStreamWriter serializer )
135         throws java.io.IOException, XMLStreamException
136     {
137         if ( jdoUser != null )
138         {
139             serializer.writeStartElement( tagName );
140             if ( jdoUser.getUsername() != null )
141             {
142                 serializer.writeStartElement( "username" );
143                 serializer.writeCharacters( jdoUser.getUsername() );
144                 serializer.writeEndElement();
145             }
146             if ( jdoUser.getPassword() != null )
147             {
148                 serializer.writeStartElement( "password" );
149                 serializer.writeCharacters( jdoUser.getPassword() );
150                 serializer.writeEndElement();
151             }
152             if ( jdoUser.getEncodedPassword() != null )
153             {
154                 serializer.writeStartElement( "encodedPassword" );
155                 serializer.writeCharacters( jdoUser.getEncodedPassword() );
156                 serializer.writeEndElement();
157             }
158             if ( jdoUser.getFullName() != null )
159             {
160                 serializer.writeStartElement( "fullName" );
161                 serializer.writeCharacters( jdoUser.getFullName() );
162                 serializer.writeEndElement();
163             }
164             if ( jdoUser.getEmail() != null )
165             {
166                 serializer.writeStartElement( "email" );
167                 serializer.writeCharacters( jdoUser.getEmail() );
168                 serializer.writeEndElement();
169             }
170             if ( jdoUser.getLastPasswordChange() != null )
171             {
172                 serializer.writeStartElement( "lastPasswordChange" );
173                 serializer.writeCharacters( String.valueOf( jdoUser.getLastPasswordChange().getTime() ) );
174                 serializer.writeEndElement();
175             }
176             if ( jdoUser.getLastLoginDate() != null )
177             {
178                 serializer.writeStartElement( "lastLoginDate" );
179                 serializer.writeCharacters( String.valueOf( jdoUser.getLastLoginDate().getTime() ) );
180                 serializer.writeEndElement();
181             }
182             if ( jdoUser.getCountFailedLoginAttempts() != 0 )
183             {
184                 serializer.writeStartElement( "countFailedLoginAttempts" );
185                 serializer.writeCharacters( String.valueOf( jdoUser.getCountFailedLoginAttempts() ) );
186                 serializer.writeEndElement();
187             }
188             if ( jdoUser.isLocked() != false )
189             {
190                 serializer.writeStartElement( "locked" );
191                 serializer.writeCharacters( String.valueOf( jdoUser.isLocked() ) );
192                 serializer.writeEndElement();
193             }
194             if ( jdoUser.isPermanent() != false )
195             {
196                 serializer.writeStartElement( "permanent" );
197                 serializer.writeCharacters( String.valueOf( jdoUser.isPermanent() ) );
198                 serializer.writeEndElement();
199             }
200             if ( jdoUser.isValidated() != false )
201             {
202                 serializer.writeStartElement( "validated" );
203                 serializer.writeCharacters( String.valueOf( jdoUser.isValidated() ) );
204                 serializer.writeEndElement();
205             }
206             if ( jdoUser.isPasswordChangeRequired() != false )
207             {
208                 serializer.writeStartElement( "passwordChangeRequired" );
209                 serializer.writeCharacters( String.valueOf( jdoUser.isPasswordChangeRequired() ) );
210                 serializer.writeEndElement();
211             }
212             if ( ( jdoUser.getPreviousEncodedPasswords() != null ) && ( jdoUser.getPreviousEncodedPasswords().size() > 0 ) )
213             {
214                 serializer.writeStartElement( "previousEncodedPasswords" );
215                 for ( Iterator iter = jdoUser.getPreviousEncodedPasswords().iterator(); iter.hasNext(); )
216                 {
217                     String previousEncodedPassword = (String) iter.next();
218                     serializer.writeStartElement( "previousEncodedPassword" );
219                     serializer.writeCharacters( previousEncodedPassword );
220                     serializer.writeEndElement();
221                 }
222                 serializer.writeEndElement();
223             }
224             if ( jdoUser.getAccountCreationDate() != null )
225             {
226                 serializer.writeStartElement( "accountCreationDate" );
227                 serializer.writeCharacters( String.valueOf( jdoUser.getAccountCreationDate().getTime() ) );
228                 serializer.writeEndElement();
229             }
230             serializer.writeEndElement();
231         }
232     } //-- void writeJdoUser( JdoUser, String, XMLStreamWriter )
233 
234     /**
235      * Method writeUserDatabase.
236      * 
237      * @param userDatabase
238      * @param serializer
239      * @param tagName
240      * @throws java.io.IOException
241      * @throws XMLStreamException
242      */
243     private void writeUserDatabase( UserDatabase userDatabase, String tagName, XMLStreamWriter serializer )
244         throws java.io.IOException, XMLStreamException
245     {
246         if ( userDatabase != null )
247         {
248             serializer.writeStartElement( tagName );
249             if ( ( userDatabase.getUsers() != null ) && ( userDatabase.getUsers().size() > 0 ) )
250             {
251                 serializer.writeStartElement( "users" );
252                 for ( Iterator iter = userDatabase.getUsers().iterator(); iter.hasNext(); )
253                 {
254                     JdoUser o = (JdoUser) iter.next();
255                     writeJdoUser( o, "user", serializer );
256                 }
257                 serializer.writeEndElement();
258             }
259             serializer.writeEndElement();
260         }
261     } //-- void writeUserDatabase( UserDatabase, String, XMLStreamWriter )
262 
263 }