package com.itemanalysis.squiggle.criteria; import java.util.Set; import com.itemanalysis.squiggle.base.Criteria; import com.itemanalysis.squiggle.base.Table; import com.itemanalysis.squiggle.output.Output; /** * See OR and AND * * @author <a href="mailto:joe@truemesh.com">Joe Walnes</a> */ public abstract class BaseLogicGroup extends Criteria { private String operator; private Criteria left; private Criteria right; public BaseLogicGroup(String operator, Criteria left, Criteria right) { this.left = left; this.right = right; this.operator = operator; } public void write(Output out) { out.print("( "); left.write(out); out.print(' ') .print(operator) .print(' '); right.write(out); out.print(" )"); } public void addReferencedTablesTo(Set<Table> tables) { left.addReferencedTablesTo(tables); right.addReferencedTablesTo(tables); } }