/*
 * An XML document type.
 * Localname: trading-partner-management
 * Namespace: http://www.bea.com/2003/03/wli/tpm
 * Java type: com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument
 *
 * Automatically generated - do not modify.
 */
package com.bea.x2003.x03.wli.tpm;


/**
 * A document containing one trading-partner-management(@http://www.bea.com/2003/03/wli/tpm) element.
 *
 * This is a complex type.
 */
public interface TradingPartnerManagementDocument extends org.apache.xmlbeans.XmlObject
{
    public static final org.apache.xmlbeans.SchemaType type = (org.apache.xmlbeans.SchemaType)
        org.apache.xmlbeans.XmlBeans.typeSystemForClassLoader(TradingPartnerManagementDocument.class.getClassLoader(), "schemaorg_apache_xmlbeans.system.SchemasTypeSystem").resolveHandle("tradingpartnermanagement97c4doctype");
    
    /**
     * Gets the "trading-partner-management" element
     */
    com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement getTradingPartnerManagement();
    
    /**
     * Sets the "trading-partner-management" element
     */
    void setTradingPartnerManagement(com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement tradingPartnerManagement);
    
    /**
     * Appends and returns a new empty "trading-partner-management" element
     */
    com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement addNewTradingPartnerManagement();
    
    /**
     * An XML trading-partner-management(@http://www.bea.com/2003/03/wli/tpm).
     *
     * This is a complex type.
     */
    public interface TradingPartnerManagement extends org.apache.xmlbeans.XmlObject
    {
        public static final org.apache.xmlbeans.SchemaType type = (org.apache.xmlbeans.SchemaType)
            org.apache.xmlbeans.XmlBeans.typeSystemForClassLoader(TradingPartnerManagement.class.getClassLoader(), "schemaorg_apache_xmlbeans.system.SchemasTypeSystem").resolveHandle("tradingpartnermanagement38f4elemtype");
        
        /**
         * Gets a List of "trading-partner" elements
         */
        java.util.List<com.bea.x2003.x03.wli.tpm.TradingPartnerDocument.TradingPartner> getTradingPartnerList();
        
        /**
         * Gets array of all "trading-partner" elements
         * @deprecated
         */
        com.bea.x2003.x03.wli.tpm.TradingPartnerDocument.TradingPartner[] getTradingPartnerArray();
        
        /**
         * Gets ith "trading-partner" element
         */
        com.bea.x2003.x03.wli.tpm.TradingPartnerDocument.TradingPartner getTradingPartnerArray(int i);
        
        /**
         * Returns number of "trading-partner" element
         */
        int sizeOfTradingPartnerArray();
        
        /**
         * Sets array of all "trading-partner" element
         */
        void setTradingPartnerArray(com.bea.x2003.x03.wli.tpm.TradingPartnerDocument.TradingPartner[] tradingPartnerArray);
        
        /**
         * Sets ith "trading-partner" element
         */
        void setTradingPartnerArray(int i, com.bea.x2003.x03.wli.tpm.TradingPartnerDocument.TradingPartner tradingPartner);
        
        /**
         * Inserts and returns a new empty value (as xml) as the ith "trading-partner" element
         */
        com.bea.x2003.x03.wli.tpm.TradingPartnerDocument.TradingPartner insertNewTradingPartner(int i);
        
        /**
         * Appends and returns a new empty value (as xml) as the last "trading-partner" element
         */
        com.bea.x2003.x03.wli.tpm.TradingPartnerDocument.TradingPartner addNewTradingPartner();
        
        /**
         * Removes the ith "trading-partner" element
         */
        void removeTradingPartner(int i);
        
        /**
         * Gets a List of "service" elements
         */
        java.util.List<com.bea.x2003.x03.wli.tpm.ServiceDocument.Service> getServiceList();
        
        /**
         * Gets array of all "service" elements
         * @deprecated
         */
        com.bea.x2003.x03.wli.tpm.ServiceDocument.Service[] getServiceArray();
        
        /**
         * Gets ith "service" element
         */
        com.bea.x2003.x03.wli.tpm.ServiceDocument.Service getServiceArray(int i);
        
        /**
         * Returns number of "service" element
         */
        int sizeOfServiceArray();
        
        /**
         * Sets array of all "service" element
         */
        void setServiceArray(com.bea.x2003.x03.wli.tpm.ServiceDocument.Service[] serviceArray);
        
        /**
         * Sets ith "service" element
         */
        void setServiceArray(int i, com.bea.x2003.x03.wli.tpm.ServiceDocument.Service service);
        
        /**
         * Inserts and returns a new empty value (as xml) as the ith "service" element
         */
        com.bea.x2003.x03.wli.tpm.ServiceDocument.Service insertNewService(int i);
        
        /**
         * Appends and returns a new empty value (as xml) as the last "service" element
         */
        com.bea.x2003.x03.wli.tpm.ServiceDocument.Service addNewService();
        
        /**
         * Removes the ith "service" element
         */
        void removeService(int i);
        
        /**
         * Gets the "message-tracking-default" attribute
         */
        com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement.MessageTrackingDefault.Enum getMessageTrackingDefault();
        
        /**
         * Gets (as xml) the "message-tracking-default" attribute
         */
        com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement.MessageTrackingDefault xgetMessageTrackingDefault();
        
        /**
         * True if has "message-tracking-default" attribute
         */
        boolean isSetMessageTrackingDefault();
        
        /**
         * Sets the "message-tracking-default" attribute
         */
        void setMessageTrackingDefault(com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement.MessageTrackingDefault.Enum messageTrackingDefault);
        
        /**
         * Sets (as xml) the "message-tracking-default" attribute
         */
        void xsetMessageTrackingDefault(com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement.MessageTrackingDefault messageTrackingDefault);
        
        /**
         * Unsets the "message-tracking-default" attribute
         */
        void unsetMessageTrackingDefault();
        
        /**
         * Gets the "message-trace" attribute
         */
        boolean getMessageTrace();
        
        /**
         * Gets (as xml) the "message-trace" attribute
         */
        org.apache.xmlbeans.XmlBoolean xgetMessageTrace();
        
        /**
         * True if has "message-trace" attribute
         */
        boolean isSetMessageTrace();
        
        /**
         * Sets the "message-trace" attribute
         */
        void setMessageTrace(boolean messageTrace);
        
        /**
         * Sets (as xml) the "message-trace" attribute
         */
        void xsetMessageTrace(org.apache.xmlbeans.XmlBoolean messageTrace);
        
        /**
         * Unsets the "message-trace" attribute
         */
        void unsetMessageTrace();
        
        /**
         * Gets the "message-trace-directory" attribute
         */
        java.lang.String getMessageTraceDirectory();
        
        /**
         * Gets (as xml) the "message-trace-directory" attribute
         */
        org.apache.xmlbeans.XmlString xgetMessageTraceDirectory();
        
        /**
         * True if has "message-trace-directory" attribute
         */
        boolean isSetMessageTraceDirectory();
        
        /**
         * Sets the "message-trace-directory" attribute
         */
        void setMessageTraceDirectory(java.lang.String messageTraceDirectory);
        
        /**
         * Sets (as xml) the "message-trace-directory" attribute
         */
        void xsetMessageTraceDirectory(org.apache.xmlbeans.XmlString messageTraceDirectory);
        
        /**
         * Unsets the "message-trace-directory" attribute
         */
        void unsetMessageTraceDirectory();
        
        /**
         * Gets the "secure-audit-logging" attribute
         */
        boolean getSecureAuditLogging();
        
        /**
         * Gets (as xml) the "secure-audit-logging" attribute
         */
        org.apache.xmlbeans.XmlBoolean xgetSecureAuditLogging();
        
        /**
         * True if has "secure-audit-logging" attribute
         */
        boolean isSetSecureAuditLogging();
        
        /**
         * Sets the "secure-audit-logging" attribute
         */
        void setSecureAuditLogging(boolean secureAuditLogging);
        
        /**
         * Sets (as xml) the "secure-audit-logging" attribute
         */
        void xsetSecureAuditLogging(org.apache.xmlbeans.XmlBoolean secureAuditLogging);
        
        /**
         * Unsets the "secure-audit-logging" attribute
         */
        void unsetSecureAuditLogging();
        
        /**
         * Gets the "test-mode" attribute
         */
        boolean getTestMode();
        
        /**
         * Gets (as xml) the "test-mode" attribute
         */
        org.apache.xmlbeans.XmlBoolean xgetTestMode();
        
        /**
         * True if has "test-mode" attribute
         */
        boolean isSetTestMode();
        
        /**
         * Sets the "test-mode" attribute
         */
        void setTestMode(boolean testMode);
        
        /**
         * Sets (as xml) the "test-mode" attribute
         */
        void xsetTestMode(org.apache.xmlbeans.XmlBoolean testMode);
        
        /**
         * Unsets the "test-mode" attribute
         */
        void unsetTestMode();
        
        /**
         * An XML message-tracking-default(@).
         *
         * This is an atomic type that is a restriction of com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument$TradingPartnerManagement$MessageTrackingDefault.
         */
        public interface MessageTrackingDefault extends org.apache.xmlbeans.XmlNMTOKEN
        {
            public static final org.apache.xmlbeans.SchemaType type = (org.apache.xmlbeans.SchemaType)
                org.apache.xmlbeans.XmlBeans.typeSystemForClassLoader(MessageTrackingDefault.class.getClassLoader(), "schemaorg_apache_xmlbeans.system.SchemasTypeSystem").resolveHandle("messagetrackingdefaultf443attrtype");
            
            org.apache.xmlbeans.StringEnumAbstractBase enumValue();
            void set(org.apache.xmlbeans.StringEnumAbstractBase e);
            
            static final Enum NONE = Enum.forString("NONE");
            static final Enum METADATA = Enum.forString("METADATA");
            static final Enum ALL = Enum.forString("ALL");
            
            static final int INT_NONE = Enum.INT_NONE;
            static final int INT_METADATA = Enum.INT_METADATA;
            static final int INT_ALL = Enum.INT_ALL;
            
            /**
             * Enumeration value class for com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument$TradingPartnerManagement$MessageTrackingDefault.
             * These enum values can be used as follows:
             * <pre>
             * enum.toString(); // returns the string value of the enum
             * enum.intValue(); // returns an int value, useful for switches
             * // e.g., case Enum.INT_NONE
             * Enum.forString(s); // returns the enum value for a string
             * Enum.forInt(i); // returns the enum value for an int
             * </pre>
             * Enumeration objects are immutable singleton objects that
             * can be compared using == object equality. They have no
             * public constructor. See the constants defined within this
             * class for all the valid values.
             */
            static final class Enum extends org.apache.xmlbeans.StringEnumAbstractBase
            {
                /**
                 * Returns the enum value for a string, or null if none.
                 */
                public static Enum forString(java.lang.String s)
                    { return (Enum)table.forString(s); }
                /**
                 * Returns the enum value corresponding to an int, or null if none.
                 */
                public static Enum forInt(int i)
                    { return (Enum)table.forInt(i); }
                
                private Enum(java.lang.String s, int i)
                    { super(s, i); }
                
                static final int INT_NONE = 1;
                static final int INT_METADATA = 2;
                static final int INT_ALL = 3;
                
                public static final org.apache.xmlbeans.StringEnumAbstractBase.Table table =
                    new org.apache.xmlbeans.StringEnumAbstractBase.Table
                (
                    new Enum[]
                    {
                      new Enum("NONE", INT_NONE),
                      new Enum("METADATA", INT_METADATA),
                      new Enum("ALL", INT_ALL),
                    }
                );
                private static final long serialVersionUID = 1L;
                private java.lang.Object readResolve() { return forInt(intValue()); } 
            }
            
            /**
             * A factory class with static methods for creating instances
             * of this type.
             */
            
            public static final class Factory
            {
                public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement.MessageTrackingDefault newValue(java.lang.Object obj) {
                  return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement.MessageTrackingDefault) type.newValue( obj ); }
                
                public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement.MessageTrackingDefault newInstance() {
                  return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement.MessageTrackingDefault) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, null ); }
                
                public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement.MessageTrackingDefault newInstance(org.apache.xmlbeans.XmlOptions options) {
                  return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement.MessageTrackingDefault) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, options ); }
                
                private Factory() { } // No instance of this class allowed
            }
        }
        
        /**
         * A factory class with static methods for creating instances
         * of this type.
         */
        
        public static final class Factory
        {
            public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement newInstance() {
              return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, null ); }
            
            public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement newInstance(org.apache.xmlbeans.XmlOptions options) {
              return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument.TradingPartnerManagement) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, options ); }
            
            private Factory() { } // No instance of this class allowed
        }
    }
    
    /**
     * A factory class with static methods for creating instances
     * of this type.
     */
    
    public static final class Factory
    {
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument newInstance() {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, null ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument newInstance(org.apache.xmlbeans.XmlOptions options) {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, options ); }
        
        /** @param xmlAsString the string value to parse */
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(java.lang.String xmlAsString) throws org.apache.xmlbeans.XmlException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( xmlAsString, type, null ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(java.lang.String xmlAsString, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( xmlAsString, type, options ); }
        
        /** @param file the file from which to load an xml document */
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(java.io.File file) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( file, type, null ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(java.io.File file, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( file, type, options ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(java.net.URL u) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( u, type, null ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(java.net.URL u, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( u, type, options ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(java.io.InputStream is) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( is, type, null ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(java.io.InputStream is, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( is, type, options ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(java.io.Reader r) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( r, type, null ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(java.io.Reader r, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( r, type, options ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(javax.xml.stream.XMLStreamReader sr) throws org.apache.xmlbeans.XmlException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( sr, type, null ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(javax.xml.stream.XMLStreamReader sr, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( sr, type, options ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(org.w3c.dom.Node node) throws org.apache.xmlbeans.XmlException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( node, type, null ); }
        
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(org.w3c.dom.Node node, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( node, type, options ); }
        
        /** @deprecated {@link XMLInputStream} */
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
          return (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( xis, type, null ); }
        
        /** @deprecated {@link XMLInputStream} */
        public static com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument 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 (com.bea.x2003.x03.wli.tpm.TradingPartnerManagementDocument) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( xis, type, options ); }
        
        /** @deprecated {@link XMLInputStream} */
        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 ); }
        
        /** @deprecated {@link XMLInputStream} */
        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
    }
}
