1
2
3
4
5
6
7
8 package org.apache.continuum.buildagent.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.buildagent.model.ContinuumBuildAgentConfigurationModel;
19 import org.apache.continuum.buildagent.model.Installation;
20 import org.apache.continuum.buildagent.model.LocalRepository;
21 import org.codehaus.plexus.util.xml.pull.MXSerializer;
22 import org.codehaus.plexus.util.xml.pull.XmlSerializer;
23
24
25
26
27
28
29 @SuppressWarnings( "all" )
30 public class ContinuumBuildAgentConfigurationModelXpp3Writer
31 {
32
33
34
35
36
37
38
39
40 private static final String NAMESPACE = null;
41
42
43
44
45
46
47
48
49
50
51
52
53
54 public void write( Writer writer, ContinuumBuildAgentConfigurationModel continuumBuildAgentConfigurationModel )
55 throws java.io.IOException
56 {
57 XmlSerializer serializer = new MXSerializer();
58 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", " " );
59 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
60 serializer.setOutput( writer );
61 serializer.startDocument( continuumBuildAgentConfigurationModel.getModelEncoding(), null );
62 writeContinuumBuildAgentConfigurationModel( continuumBuildAgentConfigurationModel, "continuum-buildagent-configuration", serializer );
63 serializer.endDocument();
64 }
65
66
67
68
69
70
71
72
73
74 private void writeContinuumBuildAgentConfigurationModel( ContinuumBuildAgentConfigurationModel continuumBuildAgentConfigurationModel, String tagName, XmlSerializer serializer )
75 throws java.io.IOException
76 {
77 if ( continuumBuildAgentConfigurationModel != null )
78 {
79 serializer.startTag( NAMESPACE, tagName );
80 if ( continuumBuildAgentConfigurationModel.getBuildOutputDirectory() != null )
81 {
82 serializer.startTag( NAMESPACE, "buildOutputDirectory" ).text( continuumBuildAgentConfigurationModel.getBuildOutputDirectory() ).endTag( NAMESPACE, "buildOutputDirectory" );
83 }
84 if ( continuumBuildAgentConfigurationModel.getWorkingDirectory() != null )
85 {
86 serializer.startTag( NAMESPACE, "workingDirectory" ).text( continuumBuildAgentConfigurationModel.getWorkingDirectory() ).endTag( NAMESPACE, "workingDirectory" );
87 }
88 if ( continuumBuildAgentConfigurationModel.getContinuumServerUrl() != null )
89 {
90 serializer.startTag( NAMESPACE, "continuumServerUrl" ).text( continuumBuildAgentConfigurationModel.getContinuumServerUrl() ).endTag( NAMESPACE, "continuumServerUrl" );
91 }
92 if ( ( continuumBuildAgentConfigurationModel.getInstallations() != null ) && ( continuumBuildAgentConfigurationModel.getInstallations().size() > 0 ) )
93 {
94 serializer.startTag( NAMESPACE, "installations" );
95 for ( Iterator iter = continuumBuildAgentConfigurationModel.getInstallations().iterator(); iter.hasNext(); )
96 {
97 Installation o = (Installation) iter.next();
98 writeInstallation( o, "installation", serializer );
99 }
100 serializer.endTag( NAMESPACE, "installations" );
101 }
102 if ( ( continuumBuildAgentConfigurationModel.getLocalRepositories() != null ) && ( continuumBuildAgentConfigurationModel.getLocalRepositories().size() > 0 ) )
103 {
104 serializer.startTag( NAMESPACE, "localRepositories" );
105 for ( Iterator iter = continuumBuildAgentConfigurationModel.getLocalRepositories().iterator(); iter.hasNext(); )
106 {
107 LocalRepository o = (LocalRepository) iter.next();
108 writeLocalRepository( o, "localRepository", serializer );
109 }
110 serializer.endTag( NAMESPACE, "localRepositories" );
111 }
112 if ( continuumBuildAgentConfigurationModel.getSharedSecretPassword() != null )
113 {
114 serializer.startTag( NAMESPACE, "sharedSecretPassword" ).text( continuumBuildAgentConfigurationModel.getSharedSecretPassword() ).endTag( NAMESPACE, "sharedSecretPassword" );
115 }
116 serializer.endTag( NAMESPACE, tagName );
117 }
118 }
119
120
121
122
123
124
125
126
127
128 private void writeInstallation( Installation installation, String tagName, XmlSerializer serializer )
129 throws java.io.IOException
130 {
131 if ( installation != null )
132 {
133 serializer.startTag( NAMESPACE, tagName );
134 if ( installation.getType() != null )
135 {
136 serializer.startTag( NAMESPACE, "type" ).text( installation.getType() ).endTag( NAMESPACE, "type" );
137 }
138 if ( installation.getVarValue() != null )
139 {
140 serializer.startTag( NAMESPACE, "varValue" ).text( installation.getVarValue() ).endTag( NAMESPACE, "varValue" );
141 }
142 if ( installation.getVarName() != null )
143 {
144 serializer.startTag( NAMESPACE, "varName" ).text( installation.getVarName() ).endTag( NAMESPACE, "varName" );
145 }
146 if ( installation.getName() != null )
147 {
148 serializer.startTag( NAMESPACE, "name" ).text( installation.getName() ).endTag( NAMESPACE, "name" );
149 }
150 serializer.endTag( NAMESPACE, tagName );
151 }
152 }
153
154
155
156
157
158
159
160
161
162 private void writeLocalRepository( LocalRepository localRepository, String tagName, XmlSerializer serializer )
163 throws java.io.IOException
164 {
165 if ( localRepository != null )
166 {
167 serializer.startTag( NAMESPACE, tagName );
168 if ( localRepository.getName() != null )
169 {
170 serializer.startTag( NAMESPACE, "name" ).text( localRepository.getName() ).endTag( NAMESPACE, "name" );
171 }
172 if ( localRepository.getLocation() != null )
173 {
174 serializer.startTag( NAMESPACE, "location" ).text( localRepository.getLocation() ).endTag( NAMESPACE, "location" );
175 }
176 if ( ( localRepository.getLayout() != null ) && !localRepository.getLayout().equals( "default" ) )
177 {
178 serializer.startTag( NAMESPACE, "layout" ).text( localRepository.getLayout() ).endTag( NAMESPACE, "layout" );
179 }
180 serializer.endTag( NAMESPACE, tagName );
181 }
182 }
183
184 }