//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802 
// 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: 2023.03.02 at 02:44:49 PM BRT 
//


package br.jus.tst.esocial.esquemas.eventos.cdbenterm;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlID;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import javax.xml.datatype.XMLGregorianCalendar;


/**
 * <p>Java class for anonymous complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType>
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="evtCdBenTerm">
 *           &lt;complexType>
 *             &lt;complexContent>
 *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                 &lt;sequence>
 *                   &lt;element name="ideEvento" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}T_ideEvento_trab_PJ"/>
 *                   &lt;element name="ideEmpregador" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}T_ideEmpregador_cnpj"/>
 *                   &lt;element name="ideBeneficio" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}T_ideBeneficio"/>
 *                   &lt;element name="infoBenTermino">
 *                     &lt;complexType>
 *                       &lt;complexContent>
 *                         &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *                           &lt;sequence>
 *                             &lt;element name="dtTermBeneficio" type="{http://www.w3.org/2001/XMLSchema}date"/>
 *                             &lt;element name="mtvTermino">
 *                               &lt;simpleType>
 *                                 &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
 *                                   &lt;pattern value="\d{2}"/>
 *                                 &lt;/restriction>
 *                               &lt;/simpleType>
 *                             &lt;/element>
 *                             &lt;element name="cnpjOrgaoSuc" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}TS_cnpj" minOccurs="0"/>
 *                             &lt;element name="novoCPF" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}TS_cpf" minOccurs="0"/>
 *                           &lt;/sequence>
 *                         &lt;/restriction>
 *                       &lt;/complexContent>
 *                     &lt;/complexType>
 *                   &lt;/element>
 *                 &lt;/sequence>
 *                 &lt;attribute name="Id" use="required" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}TS_Id" />
 *               &lt;/restriction>
 *             &lt;/complexContent>
 *           &lt;/complexType>
 *         &lt;/element>
 *         &lt;element ref="{http://www.w3.org/2000/09/xmldsig#}Signature"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "evtCdBenTerm",
    "signature"
})
@XmlRootElement(name = "eSocial")
public class ESocial {

    @XmlElement(required = true)
    protected ESocial.EvtCdBenTerm evtCdBenTerm;
    @XmlElement(name = "Signature", namespace = "http://www.w3.org/2000/09/xmldsig#", required = true)
    protected SignatureType signature;

    /**
     * Gets the value of the evtCdBenTerm property.
     * 
     * @return
     *     possible object is
     *     {@link ESocial.EvtCdBenTerm }
     *     
     */
    public ESocial.EvtCdBenTerm getEvtCdBenTerm() {
        return evtCdBenTerm;
    }

    /**
     * Sets the value of the evtCdBenTerm property.
     * 
     * @param value
     *     allowed object is
     *     {@link ESocial.EvtCdBenTerm }
     *     
     */
    public void setEvtCdBenTerm(ESocial.EvtCdBenTerm value) {
        this.evtCdBenTerm = value;
    }

    /**
     * Gets the value of the signature property.
     * 
     * @return
     *     possible object is
     *     {@link SignatureType }
     *     
     */
    public SignatureType getSignature() {
        return signature;
    }

    /**
     * Sets the value of the signature property.
     * 
     * @param value
     *     allowed object is
     *     {@link SignatureType }
     *     
     */
    public void setSignature(SignatureType value) {
        this.signature = value;
    }


    /**
     * <p>Java class for anonymous complex type.
     * 
     * <p>The following schema fragment specifies the expected content contained within this class.
     * 
     * <pre>
     * &lt;complexType>
     *   &lt;complexContent>
     *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *       &lt;sequence>
     *         &lt;element name="ideEvento" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}T_ideEvento_trab_PJ"/>
     *         &lt;element name="ideEmpregador" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}T_ideEmpregador_cnpj"/>
     *         &lt;element name="ideBeneficio" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}T_ideBeneficio"/>
     *         &lt;element name="infoBenTermino">
     *           &lt;complexType>
     *             &lt;complexContent>
     *               &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
     *                 &lt;sequence>
     *                   &lt;element name="dtTermBeneficio" type="{http://www.w3.org/2001/XMLSchema}date"/>
     *                   &lt;element name="mtvTermino">
     *                     &lt;simpleType>
     *                       &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
     *                         &lt;pattern value="\d{2}"/>
     *                       &lt;/restriction>
     *                     &lt;/simpleType>
     *                   &lt;/element>
     *                   &lt;element name="cnpjOrgaoSuc" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}TS_cnpj" minOccurs="0"/>
     *                   &lt;element name="novoCPF" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}TS_cpf" minOccurs="0"/>
     *                 &lt;/sequence>
     *               &lt;/restriction>
     *             &lt;/complexContent>
     *           &lt;/complexType>
     *         &lt;/element>
     *       &lt;/sequence>
     *       &lt;attribute name="Id" use="required" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}TS_Id" />
     *     &lt;/restriction>
     *   &lt;/complexContent>
     * &lt;/complexType>
     * </pre>
     * 
     * 
     */
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "", propOrder = {
        "ideEvento",
        "ideEmpregador",
        "ideBeneficio",
        "infoBenTermino"
    })
    public static class EvtCdBenTerm {

        @XmlElement(required = true)
        protected TIdeEventoTrabPJ ideEvento;
        @XmlElement(required = true)
        protected TIdeEmpregadorCnpj ideEmpregador;
        @XmlElement(required = true)
        protected TIdeBeneficio ideBeneficio;
        @XmlElement(required = true)
        protected ESocial.EvtCdBenTerm.InfoBenTermino infoBenTermino;
        @XmlAttribute(name = "Id", required = true)
        @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
        @XmlID
        protected String id;

        /**
         * Gets the value of the ideEvento property.
         * 
         * @return
         *     possible object is
         *     {@link TIdeEventoTrabPJ }
         *     
         */
        public TIdeEventoTrabPJ getIdeEvento() {
            return ideEvento;
        }

        /**
         * Sets the value of the ideEvento property.
         * 
         * @param value
         *     allowed object is
         *     {@link TIdeEventoTrabPJ }
         *     
         */
        public void setIdeEvento(TIdeEventoTrabPJ value) {
            this.ideEvento = value;
        }

        /**
         * Gets the value of the ideEmpregador property.
         * 
         * @return
         *     possible object is
         *     {@link TIdeEmpregadorCnpj }
         *     
         */
        public TIdeEmpregadorCnpj getIdeEmpregador() {
            return ideEmpregador;
        }

        /**
         * Sets the value of the ideEmpregador property.
         * 
         * @param value
         *     allowed object is
         *     {@link TIdeEmpregadorCnpj }
         *     
         */
        public void setIdeEmpregador(TIdeEmpregadorCnpj value) {
            this.ideEmpregador = value;
        }

        /**
         * Gets the value of the ideBeneficio property.
         * 
         * @return
         *     possible object is
         *     {@link TIdeBeneficio }
         *     
         */
        public TIdeBeneficio getIdeBeneficio() {
            return ideBeneficio;
        }

        /**
         * Sets the value of the ideBeneficio property.
         * 
         * @param value
         *     allowed object is
         *     {@link TIdeBeneficio }
         *     
         */
        public void setIdeBeneficio(TIdeBeneficio value) {
            this.ideBeneficio = value;
        }

        /**
         * Gets the value of the infoBenTermino property.
         * 
         * @return
         *     possible object is
         *     {@link ESocial.EvtCdBenTerm.InfoBenTermino }
         *     
         */
        public ESocial.EvtCdBenTerm.InfoBenTermino getInfoBenTermino() {
            return infoBenTermino;
        }

        /**
         * Sets the value of the infoBenTermino property.
         * 
         * @param value
         *     allowed object is
         *     {@link ESocial.EvtCdBenTerm.InfoBenTermino }
         *     
         */
        public void setInfoBenTermino(ESocial.EvtCdBenTerm.InfoBenTermino value) {
            this.infoBenTermino = value;
        }

        /**
         * Gets the value of the id property.
         * 
         * @return
         *     possible object is
         *     {@link String }
         *     
         */
        public String getId() {
            return id;
        }

        /**
         * Sets the value of the id property.
         * 
         * @param value
         *     allowed object is
         *     {@link String }
         *     
         */
        public void setId(String value) {
            this.id = value;
        }


        /**
         * <p>Java class for anonymous complex type.
         * 
         * <p>The following schema fragment specifies the expected content contained within this class.
         * 
         * <pre>
         * &lt;complexType>
         *   &lt;complexContent>
         *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
         *       &lt;sequence>
         *         &lt;element name="dtTermBeneficio" type="{http://www.w3.org/2001/XMLSchema}date"/>
         *         &lt;element name="mtvTermino">
         *           &lt;simpleType>
         *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
         *               &lt;pattern value="\d{2}"/>
         *             &lt;/restriction>
         *           &lt;/simpleType>
         *         &lt;/element>
         *         &lt;element name="cnpjOrgaoSuc" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}TS_cnpj" minOccurs="0"/>
         *         &lt;element name="novoCPF" type="{http://www.esocial.gov.br/schema/evt/evtCdBenTerm/v_S_01_01_00}TS_cpf" minOccurs="0"/>
         *       &lt;/sequence>
         *     &lt;/restriction>
         *   &lt;/complexContent>
         * &lt;/complexType>
         * </pre>
         * 
         * 
         */
        @XmlAccessorType(XmlAccessType.FIELD)
        @XmlType(name = "", propOrder = {
            "dtTermBeneficio",
            "mtvTermino",
            "cnpjOrgaoSuc",
            "novoCPF"
        })
        public static class InfoBenTermino {

            @XmlElement(required = true)
            @XmlSchemaType(name = "date")
            protected XMLGregorianCalendar dtTermBeneficio;
            @XmlElement(required = true)
            protected String mtvTermino;
            protected String cnpjOrgaoSuc;
            protected String novoCPF;

            /**
             * Gets the value of the dtTermBeneficio property.
             * 
             * @return
             *     possible object is
             *     {@link XMLGregorianCalendar }
             *     
             */
            public XMLGregorianCalendar getDtTermBeneficio() {
                return dtTermBeneficio;
            }

            /**
             * Sets the value of the dtTermBeneficio property.
             * 
             * @param value
             *     allowed object is
             *     {@link XMLGregorianCalendar }
             *     
             */
            public void setDtTermBeneficio(XMLGregorianCalendar value) {
                this.dtTermBeneficio = value;
            }

            /**
             * Gets the value of the mtvTermino property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getMtvTermino() {
                return mtvTermino;
            }

            /**
             * Sets the value of the mtvTermino property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setMtvTermino(String value) {
                this.mtvTermino = value;
            }

            /**
             * Gets the value of the cnpjOrgaoSuc property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getCnpjOrgaoSuc() {
                return cnpjOrgaoSuc;
            }

            /**
             * Sets the value of the cnpjOrgaoSuc property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setCnpjOrgaoSuc(String value) {
                this.cnpjOrgaoSuc = value;
            }

            /**
             * Gets the value of the novoCPF property.
             * 
             * @return
             *     possible object is
             *     {@link String }
             *     
             */
            public String getNovoCPF() {
                return novoCPF;
            }

            /**
             * Sets the value of the novoCPF property.
             * 
             * @param value
             *     allowed object is
             *     {@link String }
             *     
             */
            public void setNovoCPF(String value) {
                this.novoCPF = value;
            }

        }

    }

}
