package com.tesora.dve.sql.node.structural;
/*
* #%L
* Tesora Inc.
* Database Virtualization Engine
* %%
* Copyright (C) 2011 - 2014 Tesora Inc.
* %%
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
import java.util.ArrayList;
import java.util.List;
import com.tesora.dve.sql.node.expression.ExpressionNode;
import com.tesora.dve.sql.schema.Name;
public class JoinClauseType
{
public enum ClauseType {
ON, USING
}
private ClauseType clauseType = ClauseType.ON;
private ExpressionNode node = null;
private List<Name> columnIdentifiers = null;
public JoinClauseType(ExpressionNode en, List<Name> columnIdentifiers, ClauseType clauseType) {
this.setNode(en);
if (columnIdentifiers != null) {
this.columnIdentifiers = new ArrayList<Name>();
this.columnIdentifiers.addAll(columnIdentifiers);
}
this.clauseType = clauseType;
}
public ClauseType getClauseType() {
return clauseType;
}
public void setClauseType(ClauseType clauseType) {
this.clauseType = clauseType;
}
public ExpressionNode getNode() {
return node;
}
public void setNode(ExpressionNode node) {
this.node = node;
}
public List<Name> getColumnIdentifiers() {
return columnIdentifiers;
}
public void setColumnIdentifiers(List<Name> columnIdentifiers) {
this.columnIdentifiers = columnIdentifiers;
}
}