/* Generated By:JJTree: Do not edit this line. SetClauseList.java Version 4.3 */ /* JavaCCOptions:MULTI=true,NODE_USES_PARSER=true,VISITOR=true,TRACK_TOKENS=false,NODE_PREFIX=,NODE_EXTENDS=,NODE_FACTORY=,SUPPORT_CLASS_VISIBILITY_PUBLIC=true */ package org.teiid.query.sql.lang; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import org.teiid.designer.query.sql.lang.ISetClauseList; import org.teiid.designer.runtime.version.spi.ITeiidServerVersion; import org.teiid.query.parser.LanguageVisitor; import org.teiid.query.sql.symbol.ElementSymbol; import org.teiid.query.sql.symbol.Expression; /** * */ public class SetClauseList extends SimpleNode implements ISetClauseList<LanguageVisitor> { private List<SetClause> setClauses = new ArrayList<SetClause>(); /** * @param p * @param id */ public SetClauseList(ITeiidServerVersion p, int id) { super(p, id); } /** * @return a non-updateable map representation */ public LinkedHashMap<ElementSymbol, Expression> getClauseMap() { LinkedHashMap<ElementSymbol, Expression> result = new LinkedHashMap<ElementSymbol, Expression>(); for (SetClause clause : this.setClauses) { result.put(clause.getSymbol(), clause.getValue()); } return result; } /** * @return set clauses */ public List<SetClause> getClauses() { return this.setClauses; } /** * @return clauses is empty */ public boolean isEmpty() { return this.setClauses.isEmpty(); } /** * @param clause */ public void addClause(SetClause clause) { this.setClauses.add(clause); } @Override public int hashCode() { final int prime = 31; int result = super.hashCode(); result = prime * result + ((this.setClauses == null) ? 0 : this.setClauses.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (!super.equals(obj)) return false; if (getClass() != obj.getClass()) return false; SetClauseList other = (SetClauseList)obj; if (this.setClauses == null) { if (other.setClauses != null) return false; } else if (!this.setClauses.equals(other.setClauses)) return false; return true; } /** Accept the visitor. **/ @Override public void acceptVisitor(LanguageVisitor visitor) { visitor.visit(this); } @Override public SetClauseList clone() { SetClauseList clone = new SetClauseList(getTeiidVersion(), this.id); clone.getClauses().addAll(cloneList(getClauses())); return clone; } } /* JavaCC - OriginalChecksum=03e0d8ce7120831af6c8c5e5b956b453 (do not edit this line) */