/*
 * XML Type:  EndpointReferenceType
 * Namespace: http://schemas.xmlsoap.org/ws/2004/08/addressing
 * Java type: org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType
 *
 * Automatically generated - do not modify.
 */
package org.codehaus.activemq.ws.schema.addressing;


/**
 * An XML EndpointReferenceType(@http://schemas.xmlsoap.org/ws/2004/08/addressing).
 * <p/>
 * This is a complex type.
 */
public interface EndpointReferenceType extends org.apache.xmlbeans.XmlObject {
    public static final org.apache.xmlbeans.SchemaType type = (org.apache.xmlbeans.SchemaType) schema.system.s3A9E7247E37A34A5E3891BE64349C3B8.TypeSystemHolder.typeSystem.resolveHandle("endpointreferencetype404ftype");

    /**
     * Gets the "Address" element
     */
    org.codehaus.activemq.ws.schema.addressing.AttributedURI getAddress();

    /**
     * Sets the "Address" element
     */
    void setAddress(org.codehaus.activemq.ws.schema.addressing.AttributedURI address);

    /**
     * Appends and returns a new empty "Address" element
     */
    org.codehaus.activemq.ws.schema.addressing.AttributedURI addNewAddress();

    /**
     * Gets the "ReferenceProperties" element
     */
    org.codehaus.activemq.ws.schema.addressing.ReferencePropertiesType getReferenceProperties();

    /**
     * True if has "ReferenceProperties" element
     */
    boolean isSetReferenceProperties();

    /**
     * Sets the "ReferenceProperties" element
     */
    void setReferenceProperties(org.codehaus.activemq.ws.schema.addressing.ReferencePropertiesType referenceProperties);

    /**
     * Appends and returns a new empty "ReferenceProperties" element
     */
    org.codehaus.activemq.ws.schema.addressing.ReferencePropertiesType addNewReferenceProperties();

    /**
     * Unsets the "ReferenceProperties" element
     */
    void unsetReferenceProperties();

    /**
     * Gets the "ReferenceParameters" element
     */
    org.codehaus.activemq.ws.schema.addressing.ReferenceParametersType getReferenceParameters();

    /**
     * True if has "ReferenceParameters" element
     */
    boolean isSetReferenceParameters();

    /**
     * Sets the "ReferenceParameters" element
     */
    void setReferenceParameters(org.codehaus.activemq.ws.schema.addressing.ReferenceParametersType referenceParameters);

    /**
     * Appends and returns a new empty "ReferenceParameters" element
     */
    org.codehaus.activemq.ws.schema.addressing.ReferenceParametersType addNewReferenceParameters();

    /**
     * Unsets the "ReferenceParameters" element
     */
    void unsetReferenceParameters();

    /**
     * Gets the "PortType" element
     */
    org.codehaus.activemq.ws.schema.addressing.AttributedQName getPortType();

    /**
     * True if has "PortType" element
     */
    boolean isSetPortType();

    /**
     * Sets the "PortType" element
     */
    void setPortType(org.codehaus.activemq.ws.schema.addressing.AttributedQName portType);

    /**
     * Appends and returns a new empty "PortType" element
     */
    org.codehaus.activemq.ws.schema.addressing.AttributedQName addNewPortType();

    /**
     * Unsets the "PortType" element
     */
    void unsetPortType();

    /**
     * Gets the "ServiceName" element
     */
    org.codehaus.activemq.ws.schema.addressing.ServiceNameType getServiceName();

    /**
     * True if has "ServiceName" element
     */
    boolean isSetServiceName();

    /**
     * Sets the "ServiceName" element
     */
    void setServiceName(org.codehaus.activemq.ws.schema.addressing.ServiceNameType serviceName);

    /**
     * Appends and returns a new empty "ServiceName" element
     */
    org.codehaus.activemq.ws.schema.addressing.ServiceNameType addNewServiceName();

    /**
     * Unsets the "ServiceName" element
     */
    void unsetServiceName();

    /**
     * A factory class with static methods for creating instances
     * of this type.
     */

    public static final class Factory {
        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType newInstance() {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance(type, null);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType newInstance(org.apache.xmlbeans.XmlOptions options) {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance(type, options);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(java.lang.String s) throws org.apache.xmlbeans.XmlException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(s, type, null);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(java.lang.String s, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(s, type, options);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(java.io.File f) throws org.apache.xmlbeans.XmlException, java.io.IOException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(f, type, null);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(java.io.File f, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(f, type, options);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(java.net.URL u) throws org.apache.xmlbeans.XmlException, java.io.IOException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(u, type, null);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(java.net.URL u, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(u, type, options);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(java.io.InputStream is) throws org.apache.xmlbeans.XmlException, java.io.IOException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(is, type, null);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(java.io.InputStream is, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(is, type, options);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(java.io.Reader r) throws org.apache.xmlbeans.XmlException, java.io.IOException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(r, type, null);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(java.io.Reader r, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(r, type, options);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(org.w3c.dom.Node node) throws org.apache.xmlbeans.XmlException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(node, type, null);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(org.w3c.dom.Node node, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(node, type, options);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(xis, type, null);
        }

        public static org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
            return (org.codehaus.activemq.ws.schema.addressing.EndpointReferenceType) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse(xis, type, options);
        }

        public static org.apache.xmlbeans.xml.stream.XMLInputStream newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
            return org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newValidatingXMLInputStream(xis, type, null);
        }

        public static org.apache.xmlbeans.xml.stream.XMLInputStream newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
            return org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newValidatingXMLInputStream(xis, type, options);
        }

        private Factory() {
        } // No instance of this class allowed
    }
}
