X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fz3950%2Fzing%2Fcql%2FCQLSortNode.java;h=efc190ba39224274a783ff23be15d43b805f73dc;hb=6e0bb6cfb1bc2fefdbbe1b88a097e7dc29cc88f9;hp=306f8c657c841fc0b1a3c99fec1dd37cafe23fc7;hpb=791833362f2e87616d70ffc3f1ce6b0191ff7a0f;p=cql-java-moved-to-github.git diff --git a/src/main/java/org/z3950/zing/cql/CQLSortNode.java b/src/main/java/org/z3950/zing/cql/CQLSortNode.java index 306f8c6..efc190b 100644 --- a/src/main/java/org/z3950/zing/cql/CQLSortNode.java +++ b/src/main/java/org/z3950/zing/cql/CQLSortNode.java @@ -1,4 +1,3 @@ -// $Id: CQLSortNode.java,v 1.2 2008-04-11 12:05:15 mike Exp $ package org.z3950.zing.cql; import java.util.ArrayList; @@ -9,7 +8,6 @@ import java.util.Properties; /** * Represents a sort node in a CQL parse-tree. * - * @version $Id: CQLSortNode.java,v 1.2 2008-04-11 12:05:15 mike Exp $ */ public class CQLSortNode extends CQLNode { /** @@ -42,31 +40,41 @@ public class CQLSortNode extends CQLNode { return keys; } - public String toXCQL(int level, List prefixes, + @Override + public void traverse(CQLNodeVisitor visitor) { + visitor.onSortNode(this); + subtree.traverse(visitor); + } + + @Override + void toXCQLInternal(XCQLBuilder b, int level, List prefixes, List sortkeys) { if (sortkeys != null) throw new Error("CQLSortNode.toXCQL() called with sortkeys"); - return subtree.toXCQL(level, prefixes, keys); + subtree.toXCQLInternal(b, level, prefixes, keys); } + @Override public String toCQL() { - StringBuffer buf = new StringBuffer(subtree.toCQL()); + StringBuilder buf = new StringBuilder(subtree.toCQL()); if (keys != null) { buf.append(" sortby"); for (int i = 0; i < keys.size(); i++) { ModifierSet key = keys.get(i); - buf.append(" " + key.toCQL()); + buf.append(" ").append(key.toCQL()); } } return buf.toString(); } + @Override public String toPQF(Properties config) throws PQFTranslationException { return "@attr 1=oops \"###\""; } + @Override public byte[] toType1BER(Properties config) throws PQFTranslationException { // There is no way to represent sorting in a standard Z39.50