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.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 = {"type", "transformationtype", "transformationname", "name", "description", "dbdname", "tableattribute", "exprmacrodependency", "initprop", "associatedsourceinstance"}
)
@XmlRootElement(
   name = "INSTANCE"
)
public class INSTANCE {
   @XmlAttribute(
      name = "NAME",
      required = true
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String name;
   @XmlAttribute(
      name = "DESCRIPTION"
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String description;
   @XmlAttribute(
      name = "TYPE"
   )
   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
   protected String type;
   @XmlAttribute(
      name = "REUSABLE"
   )
   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
   protected String reusable;
   @XmlAttribute(
      name = "TRANSFORMATION_TYPE"
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String transformationtype;
   @XmlAttribute(
      name = "TRANSFORMATION_NAME"
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String transformationname;
   @XmlAttribute(
      name = "DBDNAME"
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String dbdname;
   @XmlAttribute(
      name = "ASSOCIATED_DSQ"
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String associateddsq;
   @XmlAttribute(
      name = "ASSOCIATED_DSQ_TYPE"
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String associateddsqtype;
   @XmlAttribute(
      name = "INSTANCEID"
   )
   @XmlJavaTypeAdapter(NormalizedStringAdapter.class)
   protected String instanceid;
   @XmlElement(
      name = "TABLEATTRIBUTE"
   )
   protected List<TABLEATTRIBUTE> tableattribute;
   @XmlElement(
      name = "EXPRMACRODEPENDENCY"
   )
   protected List<EXPRMACRODEPENDENCY> exprmacrodependency;
   @XmlElement(
      name = "INITPROP"
   )
   protected List<INITPROP> initprop;
   @XmlElement(
      name = "ASSOCIATED_SOURCE_INSTANCE"
   )
   protected List<ASSOCIATEDSOURCEINSTANCE> associatedsourceinstance;

   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 getTYPE() {
      return this.type;
   }

   public void setTYPE(String value) {
      this.type = value;
   }

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

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

   public String getTRANSFORMATIONTYPE() {
      return this.transformationtype;
   }

   public void setTRANSFORMATIONTYPE(String value) {
      this.transformationtype = value;
   }

   public String getTRANSFORMATIONNAME() {
      return this.transformationname;
   }

   public void setTRANSFORMATIONNAME(String value) {
      this.transformationname = value;
   }

   public String getDBDNAME() {
      return this.dbdname;
   }

   public void setDBDNAME(String value) {
      this.dbdname = value;
   }

   public String getASSOCIATEDDSQ() {
      return this.associateddsq;
   }

   public void setASSOCIATEDDSQ(String value) {
      this.associateddsq = value;
   }

   public String getASSOCIATEDDSQTYPE() {
      return this.associateddsqtype;
   }

   public void setASSOCIATEDDSQTYPE(String value) {
      this.associateddsqtype = value;
   }

   public String getINSTANCEID() {
      return this.instanceid;
   }

   public void setINSTANCEID(String value) {
      this.instanceid = value;
   }

   public List<TABLEATTRIBUTE> getTABLEATTRIBUTE() {
      if (this.tableattribute == null) {
         this.tableattribute = new ArrayList();
      }

      return this.tableattribute;
   }

   public List<EXPRMACRODEPENDENCY> getEXPRMACRODEPENDENCY() {
      if (this.exprmacrodependency == null) {
         this.exprmacrodependency = new ArrayList();
      }

      return this.exprmacrodependency;
   }

   public List<INITPROP> getINITPROP() {
      if (this.initprop == null) {
         this.initprop = new ArrayList();
      }

      return this.initprop;
   }

   public List<ASSOCIATEDSOURCEINSTANCE> getASSOCIATEDSOURCEINSTANCE() {
      if (this.associatedsourceinstance == null) {
         this.associatedsourceinstance = new ArrayList();
      }

      return this.associatedsourceinstance;
   }
}
