package com.itemanalysis.squiggle.base; import java.util.Set; import com.itemanalysis.squiggle.output.Output; import com.itemanalysis.squiggle.output.Outputable; /** * ORDER BY clause. See SelectQuery.addOrder(Order). * * @author <a href="joe@truemesh.com">Joe Walnes</a> */ public class Order implements Outputable { public static final boolean ASCENDING = true; public static final boolean DESCENDING = false; private Column column; private boolean ascending; /** * @param column Column to order by. * @param ascending Order.ASCENDING or Order.DESCENDING */ public Order(Column column, boolean ascending) { this.column = column; this.ascending = ascending; } public Projection getColumn() { return column; } public void write(Output out) { column.write(out); if (!ascending) { out.print(" DESC"); } } public void addReferencedTablesTo(Set<Table> tables) { column.addReferencedTablesTo(tables); } }