001package gudusoft.gsqlparser.dlineage.dataflow.sqlenv.model;
002
003import java.util.ArrayList;
004import java.util.List;
005
006import javax.xml.bind.annotation.XmlAttribute;
007import javax.xml.bind.annotation.XmlElement;
008import javax.xml.bind.annotation.XmlType;
009
010@XmlType(
011        propOrder = {"name", "tables","oraclePackages", "procedures"}
012)
013public class Schema {
014    private String name;
015    private List<Table> tables;
016    private List<OraclePackage> oraclePackages;
017    private List<Procedure> procedures;
018
019    @XmlAttribute(required = true)
020    public String getName() {
021        return name;
022    }
023
024    public void setName(String name) {
025        this.name = name;
026    }
027
028    @XmlElement(name = "table", required = false)
029    public List<Table> getTables() {
030        return tables;
031    }
032
033    public void setTables(List<Table> tables) {
034        this.tables = tables;
035    }
036
037    public void appendTable(Table table) {
038        if (tables == null) {
039            tables = new ArrayList<>();
040        }
041        tables.add(table);
042    }
043
044    @XmlElement(name = "oraclePackage", required = false)
045    public List<OraclePackage> getOraclePackages() {
046        return oraclePackages;
047    }
048
049    public void setOraclePackages(List<OraclePackage> oraclePackages) {
050        this.oraclePackages = oraclePackages;
051    }
052
053    public void appendOraclePackage(OraclePackage oraclePackage) {
054        if (oraclePackages == null) {
055            oraclePackages = new ArrayList<>();
056        }
057        oraclePackages.add(oraclePackage);
058    }
059    
060    @XmlElement(name = "procedure", required = false)
061    public List<Procedure> getProcedures() {
062        return procedures;
063    }
064
065    public void setProcedures(List<Procedure> procedures) {
066        this.procedures = procedures;
067    }
068
069    public void appendProcedure(Procedure procedure) {
070        if (procedures == null) {
071            procedures = new ArrayList<>();
072        }
073        procedures.add(procedure);
074    }
075}