// Path: sempala-translator/src/main/java/de/uni_freiburg/informatik/dbis/sempala/translator/sql/SQLStatement.java
// public abstract class SQLStatement {
// 
// 	protected String statementName;
// 	protected boolean isDistinct = false;
// 
// 	public String getName() {
// 		return statementName;
// 	}
// 
// 	public SQLStatement(String name) {
// 		this.statementName = name;
// 	}
// 
// 	public abstract void addWhereConjunction(String where);
// 
// 	public abstract void addOrder(String byColumn);
// 
// 	public abstract String getOrder();
// 
// 	@Override
// 	public abstract String toString();
// 
// 	/**
// 	 *
// 	 * @return String representation with item name, e.g. (SELECT ...) table1.
// 	 */
// 	public String toNamedString() {
// 		return this.toString() + " " + statementName;
// 	}
// 
// 	public abstract void addSelector(String alias, String[] selector);
// 
// 	public abstract HashMap<String, String[]> getSelectors();
// 
// 	public abstract void updateSelection(Map<String, String[]> resultSchema);
// 
// 
// 	public abstract void addLimit(int i);
// 	public abstract boolean addOffset(int i);
// 
// 	public void setDistinct(boolean b) {
// 		this.isDistinct = b;
// 	}
// 
// 	public abstract void removeNullFilters();
// }


import java.util.HashMap;
import com.hp.hpl.jena.shared.PrefixMapping;
import de.uni_freiburg.informatik.dbis.sempala.translator.sql.SQLStatement;
package de.uni_freiburg.informatik.dbis.sempala.translator.op;




/**
 *
 * @author Antony Neu
 */
public abstract class ImpalaOp1 extends ImpalaBase {

	protected ImpalaOp subOp;


	protected ImpalaOp1(ImpalaOp _subOp, PrefixMapping _prefixes) {
		subOp = _subOp;
		prefixes = _prefixes;
		resultSchema = new HashMap<String, String[]>();
	}

	public ImpalaOp getSubOp() {
		return subOp;
	}

// Path: sempala-translator/src/main/java/de/uni_freiburg/informatik/dbis/sempala/translator/sql/SQLStatement.java
// public abstract class SQLStatement {
// 
// 	protected String statementName;
// 	protected boolean isDistinct = false;
// 
// 	public String getName() {
// 		return statementName;
// 	}
// 
// 	public SQLStatement(String name) {
// 		this.statementName = name;
// 	}
// 
// 	public abstract void addWhereConjunction(String where);
// 
// 	public abstract void addOrder(String byColumn);
// 
// 	public abstract String getOrder();
// 
// 	@Override
// 	public abstract String toString();
// 
// 	/**
// 	 *
// 	 * @return String representation with item name, e.g. (SELECT ...) table1.
// 	 */
// 	public String toNamedString() {
// 		return this.toString() + " " + statementName;
// 	}
// 
// 	public abstract void addSelector(String alias, String[] selector);
// 
// 	public abstract HashMap<String, String[]> getSelectors();
// 
// 	public abstract void updateSelection(Map<String, String[]> resultSchema);
// 
// 
// 	public abstract void addLimit(int i);
// 	public abstract boolean addOffset(int i);
// 
// 	public void setDistinct(boolean b) {
// 		this.isDistinct = b;
// 	}
// 
// 	public abstract void removeNullFilters();
// }


// Path: sempala-translator/src/main/java/de/uni_freiburg/informatik/dbis/sempala/translator/op/ImpalaOp1.java
import java.util.HashMap;
import com.hp.hpl.jena.shared.PrefixMapping;
import de.uni_freiburg.informatik.dbis.sempala.translator.sql.SQLStatement;

package de.uni_freiburg.informatik.dbis.sempala.translator.op;




/**
 *
 * @author Antony Neu
 */
public abstract class ImpalaOp1 extends ImpalaBase {

	protected ImpalaOp subOp;


	protected ImpalaOp1(ImpalaOp _subOp, PrefixMapping _prefixes) {
		subOp = _subOp;
		prefixes = _prefixes;
		resultSchema = new HashMap<String, String[]>();
	}

	public ImpalaOp getSubOp() {
		return subOp;
	}

	public abstract SQLStatement translate(String name, SQLStatement child);