X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=src%2Forg%2Fz3950%2Fzing%2Fcql%2FCQLRelation.java;h=6f007bc41dcf5d93184d7a3d7769a7dba79f928f;hb=d437bf5b5983b0c7e3a43ab5e5cb5d6b1670896c;hp=f82b91e36196bed407d877e20c37d3e05e694a44;hpb=1dde5651ae05693f3afd0fa286c30dfa0d40c4e2;p=cql-java-moved-to-github.git diff --git a/src/org/z3950/zing/cql/CQLRelation.java b/src/org/z3950/zing/cql/CQLRelation.java index f82b91e..6f007bc 100644 --- a/src/org/z3950/zing/cql/CQLRelation.java +++ b/src/org/z3950/zing/cql/CQLRelation.java @@ -1,4 +1,4 @@ -// $Id: CQLRelation.java,v 1.4 2002-11-06 00:14:32 mike Exp $ +// $Id: CQLRelation.java,v 1.7 2002-11-20 01:15:15 mike Exp $ package org.z3950.zing.cql; import java.util.Vector; @@ -7,28 +7,59 @@ import java.lang.StringBuffer; /** * Represents a relation between a CQL qualifier and term. - * ## * - * @version $Id: CQLRelation.java,v 1.4 2002-11-06 00:14:32 mike Exp $ + * @version $Id: CQLRelation.java,v 1.7 2002-11-20 01:15:15 mike Exp $ */ public class CQLRelation extends CQLNode { ModifierSet ms; + /** + * Creates a new CQLRelation with the specified base relation. + * Typical base relations include the usual six ordering relations + * (<=, >, etc.), the text + * relations any, all and exact and the + * server-choice relation scr. + */ public CQLRelation(String base) { ms = new ModifierSet(base); } + /** + * Returns the base relation with which the CQLRelation was + * originally created. + */ public String getBase() { return ms.getBase(); } + /** + * Adds a new relation modifier to the specified CQLRelation. + * Typical relation modifiers include relevant, + * fuzzy, stem and phonetic. On the + * whole, these modifiers have a meaningful interpretation only + * for the text relations. + */ public void addModifier(String modifier) { ms.addModifier(null, modifier); } - // ### should have a public method to retrieve all modifiers + /** + * Returns an array of the modifiers associated with a CQLRelation. + * @return + * An array of zero or more Strings, each representing a + * modifier associated with the specified CQLRelation. + */ + public String[] getModifiers() { + Vector[] v = ms.getModifiers(); + int n = v.length; + String[] s = new String[n]; + for (int i = 0; i < n; i++) { + s[i] = (String) v[i].get(1); + } + return s; + } - public String toXCQL(int level) { + public String toXCQL(int level, Vector prefixes) { return ms.toXCQL(level, "relation"); } @@ -36,8 +67,7 @@ public class CQLRelation extends CQLNode { return ms.toCQL(); } - public String toPQF(Properties config) - throws UnknownQualifierException, UnknownRelationException { - throw Error("CQLRelation.toPQF() can never be called"); + public String toPQF(Properties config) throws PQFTranslationException { + throw new Error("CQLRelation.toPQF() can never be called"); } }