
package gov.va.med.esr.client.ws;

import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlElementDecl;
import javax.xml.bind.annotation.XmlRegistry;
import javax.xml.namespace.QName;


/**
 * This object contains factory methods for each 
 * Java content interface and Java element interface 
 * generated in the gov.va.med.esr.client.ws 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.
 * 
 */
@XmlRegistry
public class ObjectFactory {

    private final static QName _IntegerOutput_QNAME = new QName("http://example.org/complex2", "IntegerOutput");
    private final static QName _EchoOrderStatusReturnMessage_QNAME = new QName("http://example.org/complex2", "EchoOrderStatusReturnMessage");
    private final static QName _EchoComplexTypeResponse_QNAME = new QName("http://esr.med.DNS   /", "echoComplexTypeResponse");
    private final static QName _EchoStructReturnMessage_QNAME = new QName("http://example.org/complex2", "EchoStructReturnMessage");
    private final static QName _EchoInt_QNAME = new QName("http://esr.med.DNS   /", "echoInt");
    private final static QName _EchoComplexType_QNAME = new QName("http://esr.med.DNS   /", "echoComplexType");
    private final static QName _EchoIntResponse_QNAME = new QName("http://esr.med.DNS   /", "echoIntResponse");
    private final static QName _EchoOrderStatus_QNAME = new QName("http://esr.med.DNS   /", "echoOrderStatus");
    private final static QName _EchoOrderStatusResponse_QNAME = new QName("http://esr.med.DNS   /", "echoOrderStatusResponse");
    private final static QName _IntegerInput_QNAME = new QName("http://example.org/complex2", "IntegerInput");

    /**
     * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: gov.va.med.esr.client.ws
     * 
     */
    public ObjectFactory() {
    }

    /**
     * Create an instance of {@link EchoInt }
     * 
     */
    public EchoInt createEchoInt() {
        return new EchoInt();
    }

    /**
     * Create an instance of {@link BasicStruct }
     * 
     */
    public BasicStruct createBasicStruct() {
        return new BasicStruct();
    }

    /**
     * Create an instance of {@link OrderStatus }
     * 
     */
    public OrderStatus createOrderStatus() {
        return new OrderStatus();
    }

    /**
     * Create an instance of {@link EchoIntResponse }
     * 
     */
    public EchoIntResponse createEchoIntResponse() {
        return new EchoIntResponse();
    }

    /**
     * Create an instance of {@link EchoOrderStatus }
     * 
     */
    public EchoOrderStatus createEchoOrderStatus() {
        return new EchoOrderStatus();
    }

    /**
     * Create an instance of {@link Order }
     * 
     */
    public Order createOrder() {
        return new Order();
    }

    /**
     * Create an instance of {@link EchoComplexTypeResponse }
     * 
     */
    public EchoComplexTypeResponse createEchoComplexTypeResponse() {
        return new EchoComplexTypeResponse();
    }

    /**
     * Create an instance of {@link EchoComplexType }
     * 
     */
    public EchoComplexType createEchoComplexType() {
        return new EchoComplexType();
    }

    /**
     * Create an instance of {@link EchoOrderStatusResponse }
     * 
     */
    public EchoOrderStatusResponse createEchoOrderStatusResponse() {
        return new EchoOrderStatusResponse();
    }

    /**
     * Create an instance of {@link JAXBElement }{@code <}{@link Integer }{@code >}}
     * 
     */
    @XmlElementDecl(namespace = "http://example.org/complex2", name = "IntegerOutput")
    public JAXBElement<Integer> createIntegerOutput(Integer value) {
        return new JAXBElement<Integer>(_IntegerOutput_QNAME, Integer.class, null, value);
    }

    /**
     * Create an instance of {@link JAXBElement }{@code <}{@link OrderStatus }{@code >}}
     * 
     */
    @XmlElementDecl(namespace = "http://example.org/complex2", name = "EchoOrderStatusReturnMessage")
    public JAXBElement<OrderStatus> createEchoOrderStatusReturnMessage(OrderStatus value) {
        return new JAXBElement<OrderStatus>(_EchoOrderStatusReturnMessage_QNAME, OrderStatus.class, null, value);
    }

    /**
     * Create an instance of {@link JAXBElement }{@code <}{@link EchoComplexTypeResponse }{@code >}}
     * 
     */
    @XmlElementDecl(namespace = "http://esr.med.DNS   /", name = "echoComplexTypeResponse")
    public JAXBElement<EchoComplexTypeResponse> createEchoComplexTypeResponse(EchoComplexTypeResponse value) {
        return new JAXBElement<EchoComplexTypeResponse>(_EchoComplexTypeResponse_QNAME, EchoComplexTypeResponse.class, null, value);
    }

    /**
     * Create an instance of {@link JAXBElement }{@code <}{@link BasicStruct }{@code >}}
     * 
     */
    @XmlElementDecl(namespace = "http://example.org/complex2", name = "EchoStructReturnMessage")
    public JAXBElement<BasicStruct> createEchoStructReturnMessage(BasicStruct value) {
        return new JAXBElement<BasicStruct>(_EchoStructReturnMessage_QNAME, BasicStruct.class, null, value);
    }

    /**
     * Create an instance of {@link JAXBElement }{@code <}{@link EchoInt }{@code >}}
     * 
     */
    @XmlElementDecl(namespace = "http://esr.med.DNS   /", name = "echoInt")
    public JAXBElement<EchoInt> createEchoInt(EchoInt value) {
        return new JAXBElement<EchoInt>(_EchoInt_QNAME, EchoInt.class, null, value);
    }

    /**
     * Create an instance of {@link JAXBElement }{@code <}{@link EchoComplexType }{@code >}}
     * 
     */
    @XmlElementDecl(namespace = "http://esr.med.DNS   /", name = "echoComplexType")
    public JAXBElement<EchoComplexType> createEchoComplexType(EchoComplexType value) {
        return new JAXBElement<EchoComplexType>(_EchoComplexType_QNAME, EchoComplexType.class, null, value);
    }

    /**
     * Create an instance of {@link JAXBElement }{@code <}{@link EchoIntResponse }{@code >}}
     * 
     */
    @XmlElementDecl(namespace = "http://esr.med.DNS   /", name = "echoIntResponse")
    public JAXBElement<EchoIntResponse> createEchoIntResponse(EchoIntResponse value) {
        return new JAXBElement<EchoIntResponse>(_EchoIntResponse_QNAME, EchoIntResponse.class, null, value);
    }

    /**
     * Create an instance of {@link JAXBElement }{@code <}{@link EchoOrderStatus }{@code >}}
     * 
     */
    @XmlElementDecl(namespace = "http://esr.med.DNS   /", name = "echoOrderStatus")
    public JAXBElement<EchoOrderStatus> createEchoOrderStatus(EchoOrderStatus value) {
        return new JAXBElement<EchoOrderStatus>(_EchoOrderStatus_QNAME, EchoOrderStatus.class, null, value);
    }

    /**
     * Create an instance of {@link JAXBElement }{@code <}{@link EchoOrderStatusResponse }{@code >}}
     * 
     */
    @XmlElementDecl(namespace = "http://esr.med.DNS   /", name = "echoOrderStatusResponse")
    public JAXBElement<EchoOrderStatusResponse> createEchoOrderStatusResponse(EchoOrderStatusResponse value) {
        return new JAXBElement<EchoOrderStatusResponse>(_EchoOrderStatusResponse_QNAME, EchoOrderStatusResponse.class, null, value);
    }

    /**
     * Create an instance of {@link JAXBElement }{@code <}{@link Integer }{@code >}}
     * 
     */
    @XmlElementDecl(namespace = "http://example.org/complex2", name = "IntegerInput")
    public JAXBElement<Integer> createIntegerInput(Integer value) {
        return new JAXBElement<Integer>(_IntegerInput_QNAME, Integer.class, null, value);
    }

}
