001 // =================== DO NOT EDIT THIS FILE ==================== 002 // Generated by Modello 1.7, 003 // any modifications will be overwritten. 004 // ============================================================== 005 006 package org.apache.maven.profiles.io.xpp3; 007 008 //---------------------------------/ 009 //- Imported classes and packages -/ 010 //---------------------------------/ 011 012 import java.io.OutputStream; 013 import java.io.Writer; 014 import java.util.Iterator; 015 import org.apache.maven.profiles.Activation; 016 import org.apache.maven.profiles.ActivationFile; 017 import org.apache.maven.profiles.ActivationOS; 018 import org.apache.maven.profiles.ActivationProperty; 019 import org.apache.maven.profiles.Profile; 020 import org.apache.maven.profiles.ProfilesRoot; 021 import org.apache.maven.profiles.Repository; 022 import org.apache.maven.profiles.RepositoryBase; 023 import org.apache.maven.profiles.RepositoryPolicy; 024 import org.codehaus.plexus.util.xml.pull.MXSerializer; 025 import org.codehaus.plexus.util.xml.pull.XmlSerializer; 026 027 /** 028 * Class ProfilesXpp3Writer. 029 * 030 * @version $Revision$ $Date$ 031 */ 032 @SuppressWarnings( "all" ) 033 public class ProfilesXpp3Writer 034 { 035 036 //--------------------------/ 037 //- Class/Member Variables -/ 038 //--------------------------/ 039 040 /** 041 * Field NAMESPACE. 042 */ 043 private static final String NAMESPACE = null; 044 045 046 //-----------/ 047 //- Methods -/ 048 //-----------/ 049 050 /** 051 * Method write. 052 * 053 * @param writer 054 * @param profilesRoot 055 * @throws java.io.IOException 056 */ 057 public void write( Writer writer, ProfilesRoot profilesRoot ) 058 throws java.io.IOException 059 { 060 XmlSerializer serializer = new MXSerializer(); 061 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", " " ); 062 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" ); 063 serializer.setOutput( writer ); 064 serializer.startDocument( profilesRoot.getModelEncoding(), null ); 065 writeProfilesRoot( profilesRoot, "profilesXml", serializer ); 066 serializer.endDocument(); 067 } //-- void write( Writer, ProfilesRoot ) 068 069 /** 070 * Method write. 071 * 072 * @param stream 073 * @param profilesRoot 074 * @throws java.io.IOException 075 */ 076 public void write( OutputStream stream, ProfilesRoot profilesRoot ) 077 throws java.io.IOException 078 { 079 XmlSerializer serializer = new MXSerializer(); 080 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", " " ); 081 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" ); 082 serializer.setOutput( stream, profilesRoot.getModelEncoding() ); 083 serializer.startDocument( profilesRoot.getModelEncoding(), null ); 084 writeProfilesRoot( profilesRoot, "profilesXml", serializer ); 085 serializer.endDocument(); 086 } //-- void write( OutputStream, ProfilesRoot ) 087 088 /** 089 * Method writeActivation. 090 * 091 * @param activation 092 * @param serializer 093 * @param tagName 094 * @throws java.io.IOException 095 */ 096 private void writeActivation( Activation activation, String tagName, XmlSerializer serializer ) 097 throws java.io.IOException 098 { 099 serializer.startTag( NAMESPACE, tagName ); 100 if ( activation.isActiveByDefault() != false ) 101 { 102 serializer.startTag( NAMESPACE, "activeByDefault" ).text( String.valueOf( activation.isActiveByDefault() ) ).endTag( NAMESPACE, "activeByDefault" ); 103 } 104 if ( activation.getJdk() != null ) 105 { 106 serializer.startTag( NAMESPACE, "jdk" ).text( activation.getJdk() ).endTag( NAMESPACE, "jdk" ); 107 } 108 if ( activation.getOs() != null ) 109 { 110 writeActivationOS( (ActivationOS) activation.getOs(), "os", serializer ); 111 } 112 if ( activation.getProperty() != null ) 113 { 114 writeActivationProperty( (ActivationProperty) activation.getProperty(), "property", serializer ); 115 } 116 if ( activation.getFile() != null ) 117 { 118 writeActivationFile( (ActivationFile) activation.getFile(), "file", serializer ); 119 } 120 serializer.endTag( NAMESPACE, tagName ); 121 } //-- void writeActivation( Activation, String, XmlSerializer ) 122 123 /** 124 * Method writeActivationFile. 125 * 126 * @param activationFile 127 * @param serializer 128 * @param tagName 129 * @throws java.io.IOException 130 */ 131 private void writeActivationFile( ActivationFile activationFile, String tagName, XmlSerializer serializer ) 132 throws java.io.IOException 133 { 134 serializer.startTag( NAMESPACE, tagName ); 135 if ( activationFile.getMissing() != null ) 136 { 137 serializer.startTag( NAMESPACE, "missing" ).text( activationFile.getMissing() ).endTag( NAMESPACE, "missing" ); 138 } 139 if ( activationFile.getExists() != null ) 140 { 141 serializer.startTag( NAMESPACE, "exists" ).text( activationFile.getExists() ).endTag( NAMESPACE, "exists" ); 142 } 143 serializer.endTag( NAMESPACE, tagName ); 144 } //-- void writeActivationFile( ActivationFile, String, XmlSerializer ) 145 146 /** 147 * Method writeActivationOS. 148 * 149 * @param activationOS 150 * @param serializer 151 * @param tagName 152 * @throws java.io.IOException 153 */ 154 private void writeActivationOS( ActivationOS activationOS, String tagName, XmlSerializer serializer ) 155 throws java.io.IOException 156 { 157 serializer.startTag( NAMESPACE, tagName ); 158 if ( activationOS.getName() != null ) 159 { 160 serializer.startTag( NAMESPACE, "name" ).text( activationOS.getName() ).endTag( NAMESPACE, "name" ); 161 } 162 if ( activationOS.getFamily() != null ) 163 { 164 serializer.startTag( NAMESPACE, "family" ).text( activationOS.getFamily() ).endTag( NAMESPACE, "family" ); 165 } 166 if ( activationOS.getArch() != null ) 167 { 168 serializer.startTag( NAMESPACE, "arch" ).text( activationOS.getArch() ).endTag( NAMESPACE, "arch" ); 169 } 170 if ( activationOS.getVersion() != null ) 171 { 172 serializer.startTag( NAMESPACE, "version" ).text( activationOS.getVersion() ).endTag( NAMESPACE, "version" ); 173 } 174 serializer.endTag( NAMESPACE, tagName ); 175 } //-- void writeActivationOS( ActivationOS, String, XmlSerializer ) 176 177 /** 178 * Method writeActivationProperty. 179 * 180 * @param activationProperty 181 * @param serializer 182 * @param tagName 183 * @throws java.io.IOException 184 */ 185 private void writeActivationProperty( ActivationProperty activationProperty, String tagName, XmlSerializer serializer ) 186 throws java.io.IOException 187 { 188 serializer.startTag( NAMESPACE, tagName ); 189 if ( activationProperty.getName() != null ) 190 { 191 serializer.startTag( NAMESPACE, "name" ).text( activationProperty.getName() ).endTag( NAMESPACE, "name" ); 192 } 193 if ( activationProperty.getValue() != null ) 194 { 195 serializer.startTag( NAMESPACE, "value" ).text( activationProperty.getValue() ).endTag( NAMESPACE, "value" ); 196 } 197 serializer.endTag( NAMESPACE, tagName ); 198 } //-- void writeActivationProperty( ActivationProperty, String, XmlSerializer ) 199 200 /** 201 * Method writeProfile. 202 * 203 * @param profile 204 * @param serializer 205 * @param tagName 206 * @throws java.io.IOException 207 */ 208 private void writeProfile( Profile profile, String tagName, XmlSerializer serializer ) 209 throws java.io.IOException 210 { 211 serializer.startTag( NAMESPACE, tagName ); 212 if ( profile.getId() != null ) 213 { 214 serializer.startTag( NAMESPACE, "id" ).text( profile.getId() ).endTag( NAMESPACE, "id" ); 215 } 216 if ( profile.getActivation() != null ) 217 { 218 writeActivation( (Activation) profile.getActivation(), "activation", serializer ); 219 } 220 if ( ( profile.getProperties() != null ) && ( profile.getProperties().size() > 0 ) ) 221 { 222 serializer.startTag( NAMESPACE, "properties" ); 223 for ( Iterator iter = profile.getProperties().keySet().iterator(); iter.hasNext(); ) 224 { 225 String key = (String) iter.next(); 226 String value = (String) profile.getProperties().get( key ); 227 serializer.startTag( NAMESPACE, "" + key + "" ).text( value ).endTag( NAMESPACE, "" + key + "" ); 228 } 229 serializer.endTag( NAMESPACE, "properties" ); 230 } 231 if ( ( profile.getRepositories() != null ) && ( profile.getRepositories().size() > 0 ) ) 232 { 233 serializer.startTag( NAMESPACE, "repositories" ); 234 for ( Iterator iter = profile.getRepositories().iterator(); iter.hasNext(); ) 235 { 236 Repository o = (Repository) iter.next(); 237 writeRepository( o, "repository", serializer ); 238 } 239 serializer.endTag( NAMESPACE, "repositories" ); 240 } 241 if ( ( profile.getPluginRepositories() != null ) && ( profile.getPluginRepositories().size() > 0 ) ) 242 { 243 serializer.startTag( NAMESPACE, "pluginRepositories" ); 244 for ( Iterator iter = profile.getPluginRepositories().iterator(); iter.hasNext(); ) 245 { 246 Repository o = (Repository) iter.next(); 247 writeRepository( o, "pluginRepository", serializer ); 248 } 249 serializer.endTag( NAMESPACE, "pluginRepositories" ); 250 } 251 serializer.endTag( NAMESPACE, tagName ); 252 } //-- void writeProfile( Profile, String, XmlSerializer ) 253 254 /** 255 * Method writeProfilesRoot. 256 * 257 * @param profilesRoot 258 * @param serializer 259 * @param tagName 260 * @throws java.io.IOException 261 */ 262 private void writeProfilesRoot( ProfilesRoot profilesRoot, String tagName, XmlSerializer serializer ) 263 throws java.io.IOException 264 { 265 serializer.setPrefix( "", "http://maven.apache.org/PROFILES/1.0.0" ); 266 serializer.setPrefix( "xsi", "http://www.w3.org/2001/XMLSchema-instance" ); 267 serializer.startTag( NAMESPACE, tagName ); 268 serializer.attribute( "", "xsi:schemaLocation", "http://maven.apache.org/PROFILES/1.0.0 http://maven.apache.org/xsd/profiles-1.0.0.xsd" ); 269 if ( ( profilesRoot.getProfiles() != null ) && ( profilesRoot.getProfiles().size() > 0 ) ) 270 { 271 serializer.startTag( NAMESPACE, "profiles" ); 272 for ( Iterator iter = profilesRoot.getProfiles().iterator(); iter.hasNext(); ) 273 { 274 Profile o = (Profile) iter.next(); 275 writeProfile( o, "profile", serializer ); 276 } 277 serializer.endTag( NAMESPACE, "profiles" ); 278 } 279 if ( ( profilesRoot.getActiveProfiles() != null ) && ( profilesRoot.getActiveProfiles().size() > 0 ) ) 280 { 281 serializer.startTag( NAMESPACE, "activeProfiles" ); 282 for ( Iterator iter = profilesRoot.getActiveProfiles().iterator(); iter.hasNext(); ) 283 { 284 String activeProfile = (String) iter.next(); 285 serializer.startTag( NAMESPACE, "activeProfile" ).text( activeProfile ).endTag( NAMESPACE, "activeProfile" ); 286 } 287 serializer.endTag( NAMESPACE, "activeProfiles" ); 288 } 289 serializer.endTag( NAMESPACE, tagName ); 290 } //-- void writeProfilesRoot( ProfilesRoot, String, XmlSerializer ) 291 292 /** 293 * Method writeRepository. 294 * 295 * @param repository 296 * @param serializer 297 * @param tagName 298 * @throws java.io.IOException 299 */ 300 private void writeRepository( Repository repository, String tagName, XmlSerializer serializer ) 301 throws java.io.IOException 302 { 303 serializer.startTag( NAMESPACE, tagName ); 304 if ( repository.getReleases() != null ) 305 { 306 writeRepositoryPolicy( (RepositoryPolicy) repository.getReleases(), "releases", serializer ); 307 } 308 if ( repository.getSnapshots() != null ) 309 { 310 writeRepositoryPolicy( (RepositoryPolicy) repository.getSnapshots(), "snapshots", serializer ); 311 } 312 if ( repository.getId() != null ) 313 { 314 serializer.startTag( NAMESPACE, "id" ).text( repository.getId() ).endTag( NAMESPACE, "id" ); 315 } 316 if ( repository.getName() != null ) 317 { 318 serializer.startTag( NAMESPACE, "name" ).text( repository.getName() ).endTag( NAMESPACE, "name" ); 319 } 320 if ( repository.getUrl() != null ) 321 { 322 serializer.startTag( NAMESPACE, "url" ).text( repository.getUrl() ).endTag( NAMESPACE, "url" ); 323 } 324 if ( ( repository.getLayout() != null ) && !repository.getLayout().equals( "default" ) ) 325 { 326 serializer.startTag( NAMESPACE, "layout" ).text( repository.getLayout() ).endTag( NAMESPACE, "layout" ); 327 } 328 serializer.endTag( NAMESPACE, tagName ); 329 } //-- void writeRepository( Repository, String, XmlSerializer ) 330 331 /** 332 * Method writeRepositoryBase. 333 * 334 * @param repositoryBase 335 * @param serializer 336 * @param tagName 337 * @throws java.io.IOException 338 */ 339 private void writeRepositoryBase( RepositoryBase repositoryBase, String tagName, XmlSerializer serializer ) 340 throws java.io.IOException 341 { 342 serializer.startTag( NAMESPACE, tagName ); 343 if ( repositoryBase.getId() != null ) 344 { 345 serializer.startTag( NAMESPACE, "id" ).text( repositoryBase.getId() ).endTag( NAMESPACE, "id" ); 346 } 347 if ( repositoryBase.getName() != null ) 348 { 349 serializer.startTag( NAMESPACE, "name" ).text( repositoryBase.getName() ).endTag( NAMESPACE, "name" ); 350 } 351 if ( repositoryBase.getUrl() != null ) 352 { 353 serializer.startTag( NAMESPACE, "url" ).text( repositoryBase.getUrl() ).endTag( NAMESPACE, "url" ); 354 } 355 if ( ( repositoryBase.getLayout() != null ) && !repositoryBase.getLayout().equals( "default" ) ) 356 { 357 serializer.startTag( NAMESPACE, "layout" ).text( repositoryBase.getLayout() ).endTag( NAMESPACE, "layout" ); 358 } 359 serializer.endTag( NAMESPACE, tagName ); 360 } //-- void writeRepositoryBase( RepositoryBase, String, XmlSerializer ) 361 362 /** 363 * Method writeRepositoryPolicy. 364 * 365 * @param repositoryPolicy 366 * @param serializer 367 * @param tagName 368 * @throws java.io.IOException 369 */ 370 private void writeRepositoryPolicy( RepositoryPolicy repositoryPolicy, String tagName, XmlSerializer serializer ) 371 throws java.io.IOException 372 { 373 serializer.startTag( NAMESPACE, tagName ); 374 if ( repositoryPolicy.isEnabled() != true ) 375 { 376 serializer.startTag( NAMESPACE, "enabled" ).text( String.valueOf( repositoryPolicy.isEnabled() ) ).endTag( NAMESPACE, "enabled" ); 377 } 378 if ( repositoryPolicy.getUpdatePolicy() != null ) 379 { 380 serializer.startTag( NAMESPACE, "updatePolicy" ).text( repositoryPolicy.getUpdatePolicy() ).endTag( NAMESPACE, "updatePolicy" ); 381 } 382 if ( repositoryPolicy.getChecksumPolicy() != null ) 383 { 384 serializer.startTag( NAMESPACE, "checksumPolicy" ).text( repositoryPolicy.getChecksumPolicy() ).endTag( NAMESPACE, "checksumPolicy" ); 385 } 386 serializer.endTag( NAMESPACE, tagName ); 387 } //-- void writeRepositoryPolicy( RepositoryPolicy, String, XmlSerializer ) 388 389 }