//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v1.0.6-b27-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: 2012.06.11 at 10:34:16 AM PDT 
//


package com.sun.identity.wsfederation.jaxb.wsu;


/**
 * This object contains factory methods for each 
 * Java content interface and Java element interface 
 * generated in the com.sun.identity.wsfederation.jaxb.wsu 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 com.sun.identity.wsfederation.jaxb.entityconfig.impl.runtime.DefaultJAXBContextImpl
{

    private static java.util.HashMap defaultImplementations = new java.util.HashMap(16, 0.75F);
    private static java.util.HashMap rootTagMap = new java.util.HashMap();
    public final static com.sun.identity.wsfederation.jaxb.entityconfig.impl.runtime.GrammarInfo grammarInfo = new com.sun.identity.wsfederation.jaxb.entityconfig.impl.runtime.GrammarInfoImpl(rootTagMap, defaultImplementations, (com.sun.identity.wsfederation.jaxb.wsu.ObjectFactory.class));
    public final static java.lang.Class version = (com.sun.identity.wsfederation.jaxb.wsu.impl.JAXBVersion.class);

    static {
        defaultImplementations.put((com.sun.identity.wsfederation.jaxb.wsu.TimestampType.class), "com.sun.identity.wsfederation.jaxb.wsu.impl.TimestampTypeImpl");
        defaultImplementations.put((com.sun.identity.wsfederation.jaxb.wsu.AttributedDateTime.class), "com.sun.identity.wsfederation.jaxb.wsu.impl.AttributedDateTimeImpl");
        defaultImplementations.put((com.sun.identity.wsfederation.jaxb.wsu.CreatedElement.class), "com.sun.identity.wsfederation.jaxb.wsu.impl.CreatedElementImpl");
        defaultImplementations.put((com.sun.identity.wsfederation.jaxb.wsu.ExpiresElement.class), "com.sun.identity.wsfederation.jaxb.wsu.impl.ExpiresElementImpl");
        defaultImplementations.put((com.sun.identity.wsfederation.jaxb.wsu.TimestampElement.class), "com.sun.identity.wsfederation.jaxb.wsu.impl.TimestampElementImpl");
        defaultImplementations.put((com.sun.identity.wsfederation.jaxb.wsu.AttributedURI.class), "com.sun.identity.wsfederation.jaxb.wsu.impl.AttributedURIImpl");
        rootTagMap.put(new javax.xml.namespace.QName("http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd", "Expires"), (com.sun.identity.wsfederation.jaxb.wsu.ExpiresElement.class));
        rootTagMap.put(new javax.xml.namespace.QName("http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd", "Created"), (com.sun.identity.wsfederation.jaxb.wsu.CreatedElement.class));
        rootTagMap.put(new javax.xml.namespace.QName("http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd", "Timestamp"), (com.sun.identity.wsfederation.jaxb.wsu.TimestampElement.class));
    }

    /**
     * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: com.sun.identity.wsfederation.jaxb.wsu
     * 
     */
    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 name
     *     the name of the property to retrieve
     * @param value
     *     the value of the property to be set
     * @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 TimestampType
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public com.sun.identity.wsfederation.jaxb.wsu.TimestampType createTimestampType()
        throws javax.xml.bind.JAXBException
    {
        return new com.sun.identity.wsfederation.jaxb.wsu.impl.TimestampTypeImpl();
    }

    /**
     * Create an instance of AttributedDateTime
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public com.sun.identity.wsfederation.jaxb.wsu.AttributedDateTime createAttributedDateTime()
        throws javax.xml.bind.JAXBException
    {
        return new com.sun.identity.wsfederation.jaxb.wsu.impl.AttributedDateTimeImpl();
    }

    /**
     * Create an instance of CreatedElement
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public com.sun.identity.wsfederation.jaxb.wsu.CreatedElement createCreatedElement()
        throws javax.xml.bind.JAXBException
    {
        return new com.sun.identity.wsfederation.jaxb.wsu.impl.CreatedElementImpl();
    }

    /**
     * Create an instance of ExpiresElement
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public com.sun.identity.wsfederation.jaxb.wsu.ExpiresElement createExpiresElement()
        throws javax.xml.bind.JAXBException
    {
        return new com.sun.identity.wsfederation.jaxb.wsu.impl.ExpiresElementImpl();
    }

    /**
     * Create an instance of TimestampElement
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public com.sun.identity.wsfederation.jaxb.wsu.TimestampElement createTimestampElement()
        throws javax.xml.bind.JAXBException
    {
        return new com.sun.identity.wsfederation.jaxb.wsu.impl.TimestampElementImpl();
    }

    /**
     * Create an instance of AttributedURI
     * 
     * @throws JAXBException
     *     if an error occurs
     */
    public com.sun.identity.wsfederation.jaxb.wsu.AttributedURI createAttributedURI()
        throws javax.xml.bind.JAXBException
    {
        return new com.sun.identity.wsfederation.jaxb.wsu.impl.AttributedURIImpl();
    }

}
