001// =================== DO NOT EDIT THIS FILE ====================
002// Generated by Modello 1.8.2,
003// any modifications will be overwritten.
004// ==============================================================
005
006package org.apache.maven.scm.providers.svn.settings.io.xpp3;
007
008  //---------------------------------/
009 //- Imported classes and packages -/
010//---------------------------------/
011
012import java.io.OutputStream;
013import java.io.Writer;
014import java.util.Iterator;
015import org.apache.maven.scm.providers.svn.settings.Settings;
016import org.codehaus.plexus.util.xml.pull.MXSerializer;
017import org.codehaus.plexus.util.xml.pull.XmlSerializer;
018
019/**
020 * Class SvnXpp3Writer.
021 * 
022 * @version $Revision$ $Date$
023 */
024@SuppressWarnings( "all" )
025public class SvnXpp3Writer
026{
027
028      //--------------------------/
029     //- Class/Member Variables -/
030    //--------------------------/
031
032    /**
033     * Field NAMESPACE.
034     */
035    private static final String NAMESPACE = null;
036
037
038      //-----------/
039     //- Methods -/
040    //-----------/
041
042    /**
043     * Method write.
044     * 
045     * @param writer
046     * @param settings
047     * @throws java.io.IOException
048     */
049    public void write( Writer writer, Settings settings )
050        throws java.io.IOException
051    {
052        XmlSerializer serializer = new MXSerializer();
053        serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
054        serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
055        serializer.setOutput( writer );
056        serializer.startDocument( settings.getModelEncoding(), null );
057        writeSettings( settings, "svn-settings", serializer );
058        serializer.endDocument();
059    } //-- void write( Writer, Settings )
060
061    /**
062     * Method write.
063     * 
064     * @param stream
065     * @param settings
066     * @throws java.io.IOException
067     */
068    public void write( OutputStream stream, Settings settings )
069        throws java.io.IOException
070    {
071        XmlSerializer serializer = new MXSerializer();
072        serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
073        serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
074        serializer.setOutput( stream, settings.getModelEncoding() );
075        serializer.startDocument( settings.getModelEncoding(), null );
076        writeSettings( settings, "svn-settings", serializer );
077        serializer.endDocument();
078    } //-- void write( OutputStream, Settings )
079
080    /**
081     * Method writeSettings.
082     * 
083     * @param settings
084     * @param serializer
085     * @param tagName
086     * @throws java.io.IOException
087     */
088    private void writeSettings( Settings settings, String tagName, XmlSerializer serializer )
089        throws java.io.IOException
090    {
091        serializer.setPrefix( "", "http://maven.apache.org/SCM/SVN/1.1.0" );
092        serializer.setPrefix( "xsi", "http://www.w3.org/2001/XMLSchema-instance" );
093        serializer.startTag( NAMESPACE, tagName );
094        serializer.attribute( "", "xsi:schemaLocation", "http://maven.apache.org/SCM/SVN/1.1.0 http://maven.apache.org/xsd/svn-settings-1.1.0.xsd" );
095        if ( settings.getConfigDirectory() != null )
096        {
097            serializer.startTag( NAMESPACE, "configDirectory" ).text( settings.getConfigDirectory() ).endTag( NAMESPACE, "configDirectory" );
098        }
099        if ( settings.isUseCygwinPath() != false )
100        {
101            serializer.startTag( NAMESPACE, "useCygwinPath" ).text( String.valueOf( settings.isUseCygwinPath() ) ).endTag( NAMESPACE, "useCygwinPath" );
102        }
103        if ( ( settings.getCygwinMountPath() != null ) && !settings.getCygwinMountPath().equals( "/cygwin" ) )
104        {
105            serializer.startTag( NAMESPACE, "cygwinMountPath" ).text( settings.getCygwinMountPath() ).endTag( NAMESPACE, "cygwinMountPath" );
106        }
107        if ( settings.isUseNonInteractive() != true )
108        {
109            serializer.startTag( NAMESPACE, "useNonInteractive" ).text( String.valueOf( settings.isUseNonInteractive() ) ).endTag( NAMESPACE, "useNonInteractive" );
110        }
111        if ( settings.isUseAuthCache() != false )
112        {
113            serializer.startTag( NAMESPACE, "useAuthCache" ).text( String.valueOf( settings.isUseAuthCache() ) ).endTag( NAMESPACE, "useAuthCache" );
114        }
115        if ( settings.isTrustServerCert() != false )
116        {
117            serializer.startTag( NAMESPACE, "trustServerCert" ).text( String.valueOf( settings.isTrustServerCert() ) ).endTag( NAMESPACE, "trustServerCert" );
118        }
119        serializer.endTag( NAMESPACE, tagName );
120    } //-- void writeSettings( Settings, String, XmlSerializer )
121
122}