package com.chenyang.nse.bussiness.engine.infa.basic.xmlbean;

import java.util.ArrayList;
import java.util.List;
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.XmlElements;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.NormalizedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(
   name = "",
   propOrder = {"treatinputlinkasand", "tasktype", "taskname", "reusable", "name", "isenabled", "failparentifinstancefails", "failparentifinstancedidnotrun", "description", "attribute", "workflowvariable", "valuepair", "configreference", "sessioncomponent", "sessionextension", "resourcereferenceOrTRANSFORMRESOURCEREF"}
)
@XmlRootElement(
   name = "TASKINSTANCE"
)
public class TASKINSTANCE {
   @XmlAttribute(
      name = "NAME",
      required = true
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String name;
   @XmlAttribute(
      name = "DESCRIPTION"
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String description;
   @XmlAttribute(
      name = "TASKTYPE",
      required = true
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String tasktype;
   @XmlAttribute(
      name = "TASKNAME",
      required = true
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String taskname;
   @XmlAttribute(
      name = "ISENABLED"
   )
   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
   protected String isenabled;
   @XmlAttribute(
      name = "REUSABLE",
      required = true
   )
   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
   protected String reusable;
   @XmlAttribute(
      name = "TREAT_INPUTLINK_AS_AND"
   )
   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
   protected String treatinputlinkasand;
   @XmlAttribute(
      name = "FAIL_PARENT_IF_INSTANCE_FAILS"
   )
   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
   protected String failparentifinstancefails;
   @XmlAttribute(
      name = "FAIL_PARENT_IF_INSTANCE_DID_NOT_RUN"
   )
   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
   protected String failparentifinstancedidnotrun;
   @XmlAttribute(
      name = "SERVER_OVERRIDE"
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String serveroverride;
   @XmlElement(
      name = "ATTRIBUTE"
   )
   protected List<ATTRIBUTE> attribute;
   @XmlElement(
      name = "WORKFLOWVARIABLE"
   )
   protected List<WORKFLOWVARIABLE> workflowvariable;
   @XmlElement(
      name = "VALUEPAIR"
   )
   protected List<VALUEPAIR> valuepair;
   @XmlElement(
      name = "CONFIGREFERENCE"
   )
   protected CONFIGREFERENCE configreference;
   @XmlElement(
      name = "SESSIONCOMPONENT"
   )
   protected List<SESSIONCOMPONENT> sessioncomponent;
   @XmlElement(
      name = "SESSIONEXTENSION"
   )
   protected List<SESSIONEXTENSION> sessionextension;
   @XmlElements({@XmlElement(
   name = "RESOURCEREFERENCE",
   type = RESOURCEREFERENCE.class
), @XmlElement(
   name = "TRANSFORMRESOURCEREF",
   type = TRANSFORMRESOURCEREF.class
)})
   protected List<Object> resourcereferenceOrTRANSFORMRESOURCEREF;

   public String getNAME() {
      return this.name;
   }

   public void setNAME(String value) {
      this.name = value;
   }

   public String getDESCRIPTION() {
      return this.description;
   }

   public void setDESCRIPTION(String value) {
      this.description = value;
   }

   public String getTASKTYPE() {
      return this.tasktype;
   }

   public void setTASKTYPE(String value) {
      this.tasktype = value;
   }

   public String getTASKNAME() {
      return this.taskname;
   }

   public void setTASKNAME(String value) {
      this.taskname = value;
   }

   public String getISENABLED() {
      return this.isenabled;
   }

   public void setISENABLED(String value) {
      this.isenabled = value;
   }

   public String getREUSABLE() {
      return this.reusable;
   }

   public void setREUSABLE(String value) {
      this.reusable = value;
   }

   public String getTREATINPUTLINKASAND() {
      return this.treatinputlinkasand;
   }

   public void setTREATINPUTLINKASAND(String value) {
      this.treatinputlinkasand = value;
   }

   public String getFAILPARENTIFINSTANCEFAILS() {
      return this.failparentifinstancefails;
   }

   public void setFAILPARENTIFINSTANCEFAILS(String value) {
      this.failparentifinstancefails = value;
   }

   public String getFAILPARENTIFINSTANCEDIDNOTRUN() {
      return this.failparentifinstancedidnotrun;
   }

   public void setFAILPARENTIFINSTANCEDIDNOTRUN(String value) {
      this.failparentifinstancedidnotrun = value;
   }

   public String getSERVEROVERRIDE() {
      return this.serveroverride;
   }

   public void setSERVEROVERRIDE(String value) {
      this.serveroverride = value;
   }

   public List<ATTRIBUTE> getATTRIBUTE() {
      if (this.attribute == null) {
         this.attribute = new ArrayList();
      }

      return this.attribute;
   }

   public List<WORKFLOWVARIABLE> getWORKFLOWVARIABLE() {
      if (this.workflowvariable == null) {
         this.workflowvariable = new ArrayList();
      }

      return this.workflowvariable;
   }

   public List<VALUEPAIR> getVALUEPAIR() {
      if (this.valuepair == null) {
         this.valuepair = new ArrayList();
      }

      return this.valuepair;
   }

   public CONFIGREFERENCE getCONFIGREFERENCE() {
      return this.configreference;
   }

   public void setCONFIGREFERENCE(CONFIGREFERENCE value) {
      this.configreference = value;
   }

   public List<SESSIONCOMPONENT> getSESSIONCOMPONENT() {
      if (this.sessioncomponent == null) {
         this.sessioncomponent = new ArrayList();
      }

      return this.sessioncomponent;
   }

   public List<SESSIONEXTENSION> getSESSIONEXTENSION() {
      if (this.sessionextension == null) {
         this.sessionextension = new ArrayList();
      }

      return this.sessionextension;
   }

   public List<Object> getRESOURCEREFERENCEOrTRANSFORMRESOURCEREF() {
      if (this.resourcereferenceOrTRANSFORMRESOURCEREF == null) {
         this.resourcereferenceOrTRANSFORMRESOURCEREF = new ArrayList();
      }

      return this.resourcereferenceOrTRANSFORMRESOURCEREF;
   }
}
