//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v1.0.5-20051113-fcs 
// 	See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// 	Any modifications to this file will be lost upon recompilation of the source schema. 
// 	Generated on: 2006.03.16 um 02:41:50 CET 
//


package phex.xml;


/**
 * This object contains factory methods for each 
 * Java content interface and Java element interface 
 * generated in the phex.xml package. 
 * <p>An ObjectFactory allows you to programatically 
 * construct new instances of the Java representation 
 * for XML content. The Java representation of XML 
 * content can consist of schema derived interfaces 
 * and classes representing the binding of schema 
 * type definitions, element declarations and model 
 * groups.  Factory methods for each of these are 
 * provided in this class.
 * 
 */
public class ObjectFactory
    extends phex.xml.impl.runtime.DefaultJAXBContextImpl
{

    private static java.util.HashMap defaultImplementations = new java.util.HashMap(20, 0.75F);
    private static java.util.HashMap rootTagMap = new java.util.HashMap();
    public final static phex.xml.impl.runtime.GrammarInfo grammarInfo = new phex.xml.impl.runtime.GrammarInfoImpl(rootTagMap, defaultImplementations, (phex.xml.ObjectFactory.class));
    public final static java.lang.Class version = (phex.xml.impl.JAXBVersion.class);

    static {
        defaultImplementations.put((phex.xml.XJBUpdateResponse.class), "phex.xml.impl.XJBUpdateResponseImpl");
        defaultImplementations.put((phex.xml.XJBIPAccessRule.class), "phex.xml.impl.XJBIPAccessRuleImpl");
        defaultImplementations.put((phex.xml.XJBSWDownloadList.class), "phex.xml.impl.XJBSWDownloadListImpl");
        defaultImplementations.put((phex.xml.XJBSWDownloadSegment.class), "phex.xml.impl.XJBSWDownloadSegmentImpl");
        defaultImplementations.put((phex.xml.XJBDownloadScope.class), "phex.xml.impl.XJBDownloadScopeImpl");
        defaultImplementations.put((phex.xml.XJBSecurity.class), "phex.xml.impl.XJBSecurityImpl");
        defaultImplementations.put((phex.xml.XJBUpdateResponse.InfoType.class), "phex.xml.impl.XJBUpdateResponseImpl$InfoTypeImpl");
        defaultImplementations.put((phex.xml.PhexElement.class), "phex.xml.impl.PhexElementImpl");
        defaultImplementations.put((phex.xml.XJBPhex.class), "phex.xml.impl.XJBPhexImpl");
        defaultImplementations.put((phex.xml.XJBSecurityRule.class), "phex.xml.impl.XJBSecurityRuleImpl");
        defaultImplementations.put((phex.xml.XJBSWDownloadCandidate.class), "phex.xml.impl.XJBSWDownloadCandidateImpl");
        defaultImplementations.put((phex.xml.XJBUpdateResponse.VersionType.class), "phex.xml.impl.XJBUpdateResponseImpl$VersionTypeImpl");
        defaultImplementations.put((phex.xml.XJBSWDownloadCandidate.RatingElement.class), "phex.xml.impl.XJBSWDownloadCandidateImpl$RatingElementImpl");
        defaultImplementations.put((phex.xml.XJBSWDownloadFile.class), "phex.xml.impl.XJBSWDownloadFileImpl");
        rootTagMap.put(new javax.xml.namespace.QName("", "phex"), (phex.xml.PhexElement.class));
    }

    /**
     * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: phex.xml
     * 
     */
    public ObjectFactory() {
        super(grammarInfo);
    }

    /**
     * Create an instance of the specified Java content interface.
     * 
     * @param javaContentInterface
     *     the Class object of the javacontent interface to instantiate
     * @return
     *     a new instance
     * @throws JAXBException
     *     if an error occurs
     */
    public java.lang.Object newInstance(java.lang.Class javaContentInterface)
        throws javax.xml.bind.JAXBException
    {
        return super.newInstance(javaContentInterface);
    }

    /**
     * Get the specified property. This method can only be
     * used to get provider specific properties.
     * Attempting to get an undefined property will result
     * in a PropertyException being thrown.
     * 
     * @param name
     *     the name of the property to retrieve
     * @return
     *     the value of the requested property
     * @throws PropertyException
     *     when there is an error retrieving the given property or value
     */
    public java.lang.Object getProperty(java.lang.String name)
        throws javax.xml.bind.PropertyException
    {
        return super.getProperty(name);
    }

    /**
     * Set the specified property. This method can only be
     * used to set provider specific properties.
     * Attempting to set an undefined property will result
     * in a PropertyException being thrown.
     * 
     * @param value
     *     the value of the property to be set
     * @param name
     *     the name of the property to retrieve
     * @throws PropertyException
     *     when there is an error processing the given property or value
     */
    public void setProperty(java.lang.String name, java.lang.Object value)
        throws javax.xml.bind.PropertyException
    {
        super.setProperty(name, value);
    }

    /**
     * Create an instance of XJBUpdateResponse
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBUpdateResponse createXJBUpdateResponse()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBUpdateResponseImpl();
    }

    /**
     * Create an instance of XJBIPAccessRule
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBIPAccessRule createXJBIPAccessRule()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBIPAccessRuleImpl();
    }

    /**
     * Create an instance of XJBSWDownloadList
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBSWDownloadList createXJBSWDownloadList()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBSWDownloadListImpl();
    }

    /**
     * Create an instance of XJBSWDownloadSegment
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBSWDownloadSegment createXJBSWDownloadSegment()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBSWDownloadSegmentImpl();
    }

    /**
     * Create an instance of XJBDownloadScope
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBDownloadScope createXJBDownloadScope()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBDownloadScopeImpl();
    }

    /**
     * Create an instance of XJBSecurity
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBSecurity createXJBSecurity()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBSecurityImpl();
    }

    /**
     * Create an instance of XJBUpdateResponseInfoType
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBUpdateResponse.InfoType createXJBUpdateResponseInfoType()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBUpdateResponseImpl.InfoTypeImpl();
    }

    /**
     * Create an instance of PhexElement
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.PhexElement createPhexElement()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.PhexElementImpl();
    }

    /**
     * Create an instance of XJBPhex
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBPhex createXJBPhex()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBPhexImpl();
    }

    /**
     * Create an instance of XJBSecurityRule
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBSecurityRule createXJBSecurityRule()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBSecurityRuleImpl();
    }

    /**
     * Create an instance of XJBSWDownloadCandidate
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBSWDownloadCandidate createXJBSWDownloadCandidate()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBSWDownloadCandidateImpl();
    }

    /**
     * Create an instance of XJBUpdateResponseVersionType
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBUpdateResponse.VersionType createXJBUpdateResponseVersionType()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBUpdateResponseImpl.VersionTypeImpl();
    }

    /**
     * Create an instance of XJBSWDownloadCandidateRatingElement
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBSWDownloadCandidate.RatingElement createXJBSWDownloadCandidateRatingElement()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBSWDownloadCandidateImpl.RatingElementImpl();
    }

    /**
     * Create an instance of XJBSWDownloadCandidateRatingElement
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBSWDownloadCandidate.RatingElement createXJBSWDownloadCandidateRatingElement(short value)
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBSWDownloadCandidateImpl.RatingElementImpl(value);
    }

    /**
     * Create an instance of XJBSWDownloadFile
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public phex.xml.XJBSWDownloadFile createXJBSWDownloadFile()
        throws javax.xml.bind.JAXBException
    {
        return new phex.xml.impl.XJBSWDownloadFileImpl();
    }

}
