1
2
3
4
5
6
7
8 package org.apache.continuum.configuration.model.io.xpp3;
9
10
11
12
13
14 import java.io.Writer;
15 import java.text.DateFormat;
16 import java.util.Iterator;
17 import java.util.Locale;
18 import org.apache.continuum.configuration.model.BuildAgentConfiguration;
19 import org.apache.continuum.configuration.model.BuildAgentGroupConfiguration;
20 import org.apache.continuum.configuration.model.ContinuumConfigurationModel;
21 import org.apache.continuum.configuration.model.ProxyConfiguration;
22 import org.codehaus.plexus.util.xml.pull.MXSerializer;
23 import org.codehaus.plexus.util.xml.pull.XmlSerializer;
24
25
26
27
28
29
30 @SuppressWarnings( "all" )
31 public class ContinuumConfigurationModelXpp3Writer
32 {
33
34
35
36
37
38
39
40
41 private static final String NAMESPACE = null;
42
43
44
45
46
47
48
49
50
51
52
53
54
55 public void write( Writer writer, ContinuumConfigurationModel continuumConfigurationModel )
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( continuumConfigurationModel.getModelEncoding(), null );
63 writeContinuumConfigurationModel( continuumConfigurationModel, "continuum-configuration", serializer );
64 serializer.endDocument();
65 }
66
67
68
69
70
71
72
73
74
75 private void writeBuildAgentConfiguration( BuildAgentConfiguration buildAgentConfiguration, String tagName, XmlSerializer serializer )
76 throws java.io.IOException
77 {
78 if ( buildAgentConfiguration != null )
79 {
80 serializer.startTag( NAMESPACE, tagName );
81 if ( buildAgentConfiguration.getUrl() != null )
82 {
83 serializer.startTag( NAMESPACE, "url" ).text( buildAgentConfiguration.getUrl() ).endTag( NAMESPACE, "url" );
84 }
85 if ( buildAgentConfiguration.getDescription() != null )
86 {
87 serializer.startTag( NAMESPACE, "description" ).text( buildAgentConfiguration.getDescription() ).endTag( NAMESPACE, "description" );
88 }
89 if ( buildAgentConfiguration.isEnabled() != false )
90 {
91 serializer.startTag( NAMESPACE, "enabled" ).text( String.valueOf( buildAgentConfiguration.isEnabled() ) ).endTag( NAMESPACE, "enabled" );
92 }
93 serializer.endTag( NAMESPACE, tagName );
94 }
95 }
96
97
98
99
100
101
102
103
104
105 private void writeBuildAgentGroupConfiguration( BuildAgentGroupConfiguration buildAgentGroupConfiguration, String tagName, XmlSerializer serializer )
106 throws java.io.IOException
107 {
108 if ( buildAgentGroupConfiguration != null )
109 {
110 serializer.startTag( NAMESPACE, tagName );
111 if ( buildAgentGroupConfiguration.getName() != null )
112 {
113 serializer.startTag( NAMESPACE, "name" ).text( buildAgentGroupConfiguration.getName() ).endTag( NAMESPACE, "name" );
114 }
115 if ( ( buildAgentGroupConfiguration.getBuildAgents() != null ) && ( buildAgentGroupConfiguration.getBuildAgents().size() > 0 ) )
116 {
117 serializer.startTag( NAMESPACE, "buildAgents" );
118 for ( Iterator iter = buildAgentGroupConfiguration.getBuildAgents().iterator(); iter.hasNext(); )
119 {
120 BuildAgentConfiguration o = (BuildAgentConfiguration) iter.next();
121 writeBuildAgentConfiguration( o, "buildAgent", serializer );
122 }
123 serializer.endTag( NAMESPACE, "buildAgents" );
124 }
125 serializer.endTag( NAMESPACE, tagName );
126 }
127 }
128
129
130
131
132
133
134
135
136
137 private void writeContinuumConfigurationModel( ContinuumConfigurationModel continuumConfigurationModel, String tagName, XmlSerializer serializer )
138 throws java.io.IOException
139 {
140 if ( continuumConfigurationModel != null )
141 {
142 serializer.startTag( NAMESPACE, tagName );
143 if ( continuumConfigurationModel.getBaseUrl() != null )
144 {
145 serializer.startTag( NAMESPACE, "baseUrl" ).text( continuumConfigurationModel.getBaseUrl() ).endTag( NAMESPACE, "baseUrl" );
146 }
147 if ( continuumConfigurationModel.getBuildOutputDirectory() != null )
148 {
149 serializer.startTag( NAMESPACE, "buildOutputDirectory" ).text( continuumConfigurationModel.getBuildOutputDirectory() ).endTag( NAMESPACE, "buildOutputDirectory" );
150 }
151 if ( continuumConfigurationModel.getDeploymentRepositoryDirectory() != null )
152 {
153 serializer.startTag( NAMESPACE, "deploymentRepositoryDirectory" ).text( continuumConfigurationModel.getDeploymentRepositoryDirectory() ).endTag( NAMESPACE, "deploymentRepositoryDirectory" );
154 }
155 if ( continuumConfigurationModel.getWorkingDirectory() != null )
156 {
157 serializer.startTag( NAMESPACE, "workingDirectory" ).text( continuumConfigurationModel.getWorkingDirectory() ).endTag( NAMESPACE, "workingDirectory" );
158 }
159 if ( continuumConfigurationModel.getProxyConfiguration() != null )
160 {
161 writeProxyConfiguration( (ProxyConfiguration) continuumConfigurationModel.getProxyConfiguration(), "proxyConfiguration", serializer );
162 }
163 if ( continuumConfigurationModel.getReleaseOutputDirectory() != null )
164 {
165 serializer.startTag( NAMESPACE, "releaseOutputDirectory" ).text( continuumConfigurationModel.getReleaseOutputDirectory() ).endTag( NAMESPACE, "releaseOutputDirectory" );
166 }
167 if ( continuumConfigurationModel.getNumberOfBuildsInParallel() != 0 )
168 {
169 serializer.startTag( NAMESPACE, "numberOfBuildsInParallel" ).text( String.valueOf( continuumConfigurationModel.getNumberOfBuildsInParallel() ) ).endTag( NAMESPACE, "numberOfBuildsInParallel" );
170 }
171 if ( continuumConfigurationModel.isDistributedBuildEnabled() != false )
172 {
173 serializer.startTag( NAMESPACE, "distributedBuildEnabled" ).text( String.valueOf( continuumConfigurationModel.isDistributedBuildEnabled() ) ).endTag( NAMESPACE, "distributedBuildEnabled" );
174 }
175 if ( continuumConfigurationModel.getSharedSecretPassword() != null )
176 {
177 serializer.startTag( NAMESPACE, "sharedSecretPassword" ).text( continuumConfigurationModel.getSharedSecretPassword() ).endTag( NAMESPACE, "sharedSecretPassword" );
178 }
179 if ( ( continuumConfigurationModel.getBuildAgents() != null ) && ( continuumConfigurationModel.getBuildAgents().size() > 0 ) )
180 {
181 serializer.startTag( NAMESPACE, "buildAgents" );
182 for ( Iterator iter = continuumConfigurationModel.getBuildAgents().iterator(); iter.hasNext(); )
183 {
184 BuildAgentConfiguration o = (BuildAgentConfiguration) iter.next();
185 writeBuildAgentConfiguration( o, "buildAgent", serializer );
186 }
187 serializer.endTag( NAMESPACE, "buildAgents" );
188 }
189 if ( ( continuumConfigurationModel.getBuildAgentGroups() != null ) && ( continuumConfigurationModel.getBuildAgentGroups().size() > 0 ) )
190 {
191 serializer.startTag( NAMESPACE, "buildAgentGroups" );
192 for ( Iterator iter = continuumConfigurationModel.getBuildAgentGroups().iterator(); iter.hasNext(); )
193 {
194 BuildAgentGroupConfiguration o = (BuildAgentGroupConfiguration) iter.next();
195 writeBuildAgentGroupConfiguration( o, "buildAgentGroup", serializer );
196 }
197 serializer.endTag( NAMESPACE, "buildAgentGroups" );
198 }
199 if ( continuumConfigurationModel.isInitialized() != false )
200 {
201 serializer.startTag( NAMESPACE, "initialized" ).text( String.valueOf( continuumConfigurationModel.isInitialized() ) ).endTag( NAMESPACE, "initialized" );
202 }
203 serializer.endTag( NAMESPACE, tagName );
204 }
205 }
206
207
208
209
210
211
212
213
214
215 private void writeProxyConfiguration( ProxyConfiguration proxyConfiguration, String tagName, XmlSerializer serializer )
216 throws java.io.IOException
217 {
218 if ( proxyConfiguration != null )
219 {
220 serializer.startTag( NAMESPACE, tagName );
221 if ( proxyConfiguration.getProxyHost() != null )
222 {
223 serializer.startTag( NAMESPACE, "proxyHost" ).text( proxyConfiguration.getProxyHost() ).endTag( NAMESPACE, "proxyHost" );
224 }
225 if ( proxyConfiguration.getProxyPort() != 0 )
226 {
227 serializer.startTag( NAMESPACE, "proxyPort" ).text( String.valueOf( proxyConfiguration.getProxyPort() ) ).endTag( NAMESPACE, "proxyPort" );
228 }
229 if ( proxyConfiguration.getProxyUser() != null )
230 {
231 serializer.startTag( NAMESPACE, "proxyUser" ).text( proxyConfiguration.getProxyUser() ).endTag( NAMESPACE, "proxyUser" );
232 }
233 if ( proxyConfiguration.getProxyPassword() != null )
234 {
235 serializer.startTag( NAMESPACE, "proxyPassword" ).text( proxyConfiguration.getProxyPassword() ).endTag( NAMESPACE, "proxyPassword" );
236 }
237 serializer.endTag( NAMESPACE, tagName );
238 }
239 }
240
241 }