All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.sonatype.plexus.components.sec.dispatcher.model.io.xpp3.SecurityConfigurationXpp3Writer Maven / Gradle / Ivy

There is a newer version: 4.1.2
Show newest version
/*
 =================== DO NOT EDIT THIS FILE ====================
 Generated by Modello 1.2-SNAPSHOT on 2009-12-16 07:21:30,
 any modifications will be overwritten.
 ==============================================================
 */

package org.sonatype.plexus.components.sec.dispatcher.model.io.xpp3;

  //---------------------------------/
 //- Imported classes and packages -/
//---------------------------------/

import java.io.Writer;
import java.text.DateFormat;
import java.util.Iterator;
import java.util.Locale;
import org.codehaus.plexus.util.xml.pull.MXSerializer;
import org.codehaus.plexus.util.xml.pull.XmlSerializer;
import org.sonatype.plexus.components.sec.dispatcher.model.Config;
import org.sonatype.plexus.components.sec.dispatcher.model.ConfigProperty;
import org.sonatype.plexus.components.sec.dispatcher.model.SettingsSecurity;

/**
 * Class SecurityConfigurationXpp3Writer.
 * 
 * @version $Revision$ $Date$
 */
public class SecurityConfigurationXpp3Writer
{

      //--------------------------/
     //- Class/Member Variables -/
    //--------------------------/

    /**
     * Field NAMESPACE.
     */
    private static final String NAMESPACE = null;


      //-----------/
     //- Methods -/
    //-----------/

    /**
     * Method write.
     * 
     * @param writer
     * @param settingsSecurity
     * @throws java.io.IOException
     */
    public void write( Writer writer, SettingsSecurity settingsSecurity )
        throws java.io.IOException
    {
        XmlSerializer serializer = new MXSerializer();
        serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", "  " );
        serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
        serializer.setOutput( writer );
        serializer.startDocument( settingsSecurity.getModelEncoding(), null );
        writeSettingsSecurity( settingsSecurity, "settingsSecurity", serializer );
        serializer.endDocument();
    } //-- void write( Writer, SettingsSecurity )

    /**
     * Method writeConfig.
     * 
     * @param config
     * @param serializer
     * @param tagName
     * @throws java.io.IOException
     */
    private void writeConfig( Config config, String tagName, XmlSerializer serializer )
        throws java.io.IOException
    {
        if ( config != null )
        {
            serializer.startTag( NAMESPACE, tagName );
            if ( config.getName() != null )
            {
                serializer.startTag( NAMESPACE, "name" ).text( config.getName() ).endTag( NAMESPACE, "name" );
            }
            if ( ( config.getProperties() != null ) && ( config.getProperties().size() > 0 ) )
            {
                serializer.startTag( NAMESPACE, "properties" );
                for ( Iterator iter = config.getProperties().iterator(); iter.hasNext(); )
                {
                    ConfigProperty o = (ConfigProperty) iter.next();
                    writeConfigProperty( o, "property", serializer );
                }
                serializer.endTag( NAMESPACE, "properties" );
            }
            serializer.endTag( NAMESPACE, tagName );
        }
    } //-- void writeConfig( Config, String, XmlSerializer )

    /**
     * Method writeConfigProperty.
     * 
     * @param configProperty
     * @param serializer
     * @param tagName
     * @throws java.io.IOException
     */
    private void writeConfigProperty( ConfigProperty configProperty, String tagName, XmlSerializer serializer )
        throws java.io.IOException
    {
        if ( configProperty != null )
        {
            serializer.startTag( NAMESPACE, tagName );
            if ( configProperty.getName() != null )
            {
                serializer.startTag( NAMESPACE, "name" ).text( configProperty.getName() ).endTag( NAMESPACE, "name" );
            }
            if ( configProperty.getValue() != null )
            {
                serializer.startTag( NAMESPACE, "value" ).text( configProperty.getValue() ).endTag( NAMESPACE, "value" );
            }
            serializer.endTag( NAMESPACE, tagName );
        }
    } //-- void writeConfigProperty( ConfigProperty, String, XmlSerializer )

    /**
     * Method writeSettingsSecurity.
     * 
     * @param settingsSecurity
     * @param serializer
     * @param tagName
     * @throws java.io.IOException
     */
    private void writeSettingsSecurity( SettingsSecurity settingsSecurity, String tagName, XmlSerializer serializer )
        throws java.io.IOException
    {
        if ( settingsSecurity != null )
        {
            serializer.startTag( NAMESPACE, tagName );
            if ( settingsSecurity.getMaster() != null )
            {
                serializer.startTag( NAMESPACE, "master" ).text( settingsSecurity.getMaster() ).endTag( NAMESPACE, "master" );
            }
            if ( settingsSecurity.getRelocation() != null )
            {
                serializer.startTag( NAMESPACE, "relocation" ).text( settingsSecurity.getRelocation() ).endTag( NAMESPACE, "relocation" );
            }
            if ( ( settingsSecurity.getConfigurations() != null ) && ( settingsSecurity.getConfigurations().size() > 0 ) )
            {
                serializer.startTag( NAMESPACE, "configurations" );
                for ( Iterator iter = settingsSecurity.getConfigurations().iterator(); iter.hasNext(); )
                {
                    Config o = (Config) iter.next();
                    writeConfig( o, "configuration", serializer );
                }
                serializer.endTag( NAMESPACE, "configurations" );
            }
            serializer.endTag( NAMESPACE, tagName );
        }
    } //-- void writeSettingsSecurity( SettingsSecurity, String, XmlSerializer )

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy