Author: bpapez
Date: Tue Jan 15 13:26:15 2008
New Revision: 19511

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D19511&repname=
=3Djahia
Log:
add abstract query model

Added:
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/And.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Comparison.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Constraint.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/ConstraintInterpreter.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/ContentDefinitionNameConstraint.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/FullTextSearch.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Literal.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/NoTerminalConstraint.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Not.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Operand.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Or.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Ordering.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/PropertyValue.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModel.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModelConstants.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModelFactory.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModelTools.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryService.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/RangeConstraint.java
    branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/TerminalConstraint.java

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/And.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/And.java&rev=3D1=
9511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/And.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/And.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,42 @@
+package org.jahia.query;
+
+import org.jahia.exceptions.JahiaException;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 10:21:50
+ * To change this template use File | Settings | File Templates.
+ */
+public class And extends Constraint implements NoTerminalConstraint {
+
+    private Constraint constraint1;
+    private Constraint constraint2;
+
+    public And(Constraint constraint1, Constraint constraint2) {
+        this.constraint1 =3D constraint1;
+        this.constraint2 =3D constraint2;
+    }
+
+    public Constraint getConstraint1() {
+        return constraint1;
+    }
+
+    public void setConstraint1(Constraint constraint1) {
+        this.constraint1 =3D constraint1;
+    }
+
+    public Constraint getConstraint2() {
+        return constraint2;
+    }
+
+    public void setConstraint2(Constraint constraint2) {
+        this.constraint2 =3D constraint2;
+    }
+
+    public void accept(ConstraintInterpreter interpreter) throws JahiaExce=
ption {
+        interpreter.and(this);
+    }
+
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/Comparison.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/Comparison.java&=
rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Comparison.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Comparison.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,52 @@
+package org.jahia.query;
+
+import org.jahia.exceptions.JahiaException;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 10:28:39
+ * To change this template use File | Settings | File Templates.
+ */
+public class Comparison extends Constraint implements TerminalConstraint {
+
+    private PropertyValue operand1;
+    private Literal operand2;
+    private int operator;
+
+    public Comparison( PropertyValue operand1, int operator, Literal opera=
nd2 ) {
+        this.operand1 =3D operand1;
+        this.operator =3D operator;
+        this.operand2 =3D operand2;
+    }
+
+    public PropertyValue getOperand1() {
+        return operand1;
+    }
+
+    public void setOperand1(PropertyValue operand1) {
+        this.operand1 =3D operand1;
+    }
+
+    public Literal getOperand2() {
+        return operand2;
+    }
+
+    public void setOperand2(Literal operand2) {
+        this.operand2 =3D operand2;
+    }
+
+    public int getOperator() {
+        return operator;
+    }
+
+    public void setOperator(int operator) {
+        this.operator =3D operator;
+    }
+
+    public void accept(ConstraintInterpreter interpreter) throws JahiaExce=
ption {
+        interpreter.comparison(this);
+    }
+    =

+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/Constraint.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/Constraint.java&=
rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Constraint.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Constraint.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,16 @@
+package org.jahia.query;
+
+import org.jahia.exceptions.JahiaException;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 10:00:06
+ * To change this template use File | Settings | File Templates.
+ */
+public abstract class Constraint {
+
+    public abstract void accept(ConstraintInterpreter interpreter) throws =
JahiaException;
+    =

+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/ConstraintInterpreter.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/ConstraintInterp=
reter.java&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/ConstraintInterpreter.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/ConstraintInterpreter.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,27 @@
+package org.jahia.query;
+
+import org.jahia.exceptions.JahiaException;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 9 nov. 2007
+ * Time: 12:09:58
+ * To change this template use File | Settings | File Templates.
+ */
+public interface ConstraintInterpreter {
+
+    public void and(And c) throws JahiaException;
+
+    public void comparison(Comparison c) throws JahiaException;
+
+    public void range(RangeConstraint c) throws JahiaException;
+
+    public void fullTextSearch(FullTextSearch c) throws JahiaException;
+
+    public void not(Not c) throws JahiaException;
+
+    public void or(Or c) throws JahiaException;
+
+    public void contentDefinitionName(ContentDefinitionNameConstraint c) t=
hrows JahiaException;
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/ContentDefinitionNameConstraint.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/ContentDefinitio=
nNameConstraint.java&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/ContentDefinitionNameConstraint.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/ContentDefinitionNameConstraint.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,32 @@
+package org.jahia.query;
+
+import org.jahia.exceptions.JahiaException;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 10:42:55
+ * To change this template use File | Settings | File Templates.
+ */
+public class ContentDefinitionNameConstraint extends Constraint implements=
 TerminalConstraint {
+
+    public String[] getDefinitionNames() {
+        return definitionNames;
+    }
+
+    public void setDefinitionNames(String[] definitionNames) {
+        this.definitionNames =3D definitionNames;
+    }
+
+    private String[] definitionNames;
+
+    public ContentDefinitionNameConstraint(String[] definitionNames) {
+        this.definitionNames =3D definitionNames;
+    }
+
+    public void accept(ConstraintInterpreter interpreter) throws JahiaExce=
ption {
+        interpreter.contentDefinitionName(this);
+    }
+
+}
\ No newline at end of file

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/FullTextSearch.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/FullTextSearch.j=
ava&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/FullTextSearch.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/FullTextSearch.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,42 @@
+package org.jahia.query;
+
+import org.jahia.exceptions.JahiaException;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 10:42:55
+ * To change this template use File | Settings | File Templates.
+ */
+public class FullTextSearch extends Constraint implements TerminalConstrai=
nt {
+
+    private String fullTextSearchExpression;
+    private String propertyName;
+
+    public FullTextSearch(String propertyName,String fullTextSearchExpress=
ion) {
+        this.fullTextSearchExpression =3D fullTextSearchExpression;
+        this.propertyName =3D propertyName;
+    }
+
+    public String getPropertyName() {
+        return propertyName;
+    }
+
+    public void setPropertyName(String propertyName) {
+        this.propertyName =3D propertyName;
+    }
+
+    public String getFullTextSearchExpression() {
+        return fullTextSearchExpression;
+    }
+
+    public void setFullTextSearchExpression(String fullTextSearchExpressio=
n) {
+        this.fullTextSearchExpression =3D fullTextSearchExpression;
+    }
+
+    public void accept(ConstraintInterpreter interpreter) throws JahiaExce=
ption {
+        interpreter.fullTextSearch(this);
+    }
+
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/Literal.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/Literal.java&rev=
=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Literal.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Literal.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,61 @@
+package org.jahia.query;
+
+import org.jahia.utils.JahiaTools;
+
+import java.util.Iterator;
+import java.util.List;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 11:17:36
+ * To change this template use File | Settings | File Templates.
+ */
+public class Literal extends Operand {
+
+    private Object value;
+
+    public Literal(Object value) {
+        this.value =3D value;
+    }
+
+    public Object getValue() {
+        return value;
+    }
+
+    public void setValue(Object value) {
+        this.value =3D value;
+    }
+
+    public String getValueAsString() {
+        if ( value =3D=3D null ){
+            return null;
+        }
+        if ( value instanceof String ){
+            return (String)value;
+        } else if ( value instanceof List ) {
+            StringBuffer buff =3D new StringBuffer();
+            Iterator it =3D ((List)value).iterator();
+            while(it.hasNext()){
+                buff.append(it.next().toString());
+                if (it.hasNext()){
+                    buff.append(",");
+                }
+            }
+            return buff.toString();
+        }
+        return value.toString();
+    }
+
+    public String[] getValueAsStringArray() {
+        if ( value =3D=3D null ){
+            return null;
+        }
+        if ( value instanceof List){
+            return (String[])((List)value).toArray(new String[]{});
+        } else {
+            return JahiaTools.getTokens(value.toString(),",");
+        }
+    }
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/NoTerminalConstraint.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/NoTerminalConstr=
aint.java&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/NoTerminalConstraint.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/NoTerminalConstraint.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,11 @@
+package org.jahia.query;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 9 nov. 2007
+ * Time: 12:21:02
+ * To change this template use File | Settings | File Templates.
+ */
+public interface NoTerminalConstraint {
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/Not.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/Not.java&rev=3D1=
9511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Not.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Not.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,32 @@
+package org.jahia.query;
+
+import org.jahia.exceptions.JahiaException;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 10:26:32
+ * To change this template use File | Settings | File Templates.
+ */
+public class Not extends Constraint implements NoTerminalConstraint {
+
+    private Constraint constraint;
+
+    public Not(Constraint constraint) {
+        this.constraint =3D constraint;
+    }
+
+    public Constraint getConstraint() {
+        return constraint;
+    }
+
+    public void setConstraint(Constraint constraint) {
+        this.constraint =3D constraint;
+    }
+
+    public void accept(ConstraintInterpreter interpreter) throws JahiaExce=
ption {
+        interpreter.not(this);
+    }
+
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/Operand.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/Operand.java&rev=
=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Operand.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Operand.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,12 @@
+package org.jahia.query;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 11:10:23
+ * To change this template use File | Settings | File Templates.
+ */
+public abstract class Operand {
+
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/Or.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/Or.java&rev=3D19=
511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Or.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Or.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,42 @@
+package org.jahia.query;
+
+import org.jahia.exceptions.JahiaException;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 10:25:01
+ * To change this template use File | Settings | File Templates.
+ */
+public class Or extends Constraint {
+
+    private Constraint constraint1;
+    private Constraint constraint2;
+
+    public Or(Constraint constraint1, Constraint constraint2) {
+        this.constraint1 =3D constraint1;
+        this.constraint2 =3D constraint2;
+    }
+
+    public Constraint getConstraint1() {
+        return constraint1;
+    }
+
+    public void setConstraint1(Constraint constraint1) {
+        this.constraint1 =3D constraint1;
+    }
+
+    public Constraint getConstraint2() {
+        return constraint2;
+    }
+
+    public void setConstraint2(Constraint constraint2) {
+        this.constraint2 =3D constraint2;
+    }
+
+    public void accept(ConstraintInterpreter interpreter) throws JahiaExce=
ption {
+        interpreter.or(this);
+    }
+
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/Ordering.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/Ordering.java&re=
v=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Ordering.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/Ordering.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,42 @@
+package org.jahia.query;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 10:02:01
+ * To change this template use File | Settings | File Templates.
+ */
+public class Ordering {
+
+    // sorting by publication date
+    public static final String PUBLICATION_DATE =3D "PUBLICATION_DATE";
+
+    // sorting by expiration date
+    public static final String EXPIRATION_DATE =3D "EXPIRATION_DATE";
+
+    private Operand operand;
+    private int order;
+
+    public Ordering(Operand operand, int order) {
+        this.operand =3D operand;
+        this.order =3D order;
+    }
+
+    public Operand getOperand() {
+        return operand;
+    }
+
+    public void setOperand(Operand operand) {
+        this.operand =3D operand;
+    }
+
+    public int getOrder() {
+        return order;
+    }
+
+    public void setOrder(int order) {
+        this.order =3D order;
+    }
+
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/PropertyValue.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/PropertyValue.ja=
va&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/PropertyValue.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/PropertyValue.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,26 @@
+package org.jahia.query;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 11:10:55
+ * To change this template use File | Settings | File Templates.
+ */
+public class PropertyValue extends Operand {
+
+    private String propertyName;
+
+    public PropertyValue(String propertyName) {
+        this.propertyName =3D propertyName;
+    }
+
+    public String getPropertyName() {
+        return propertyName;
+    }
+
+    public void setPropertyName(String propertyName) {
+        this.propertyName =3D propertyName;
+    }
+
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/QueryModel.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/QueryModel.java&=
rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModel.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModel.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,74 @@
+package org.jahia.query;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Properties;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 09:58:49
+ * To change this template use File | Settings | File Templates.
+ */
+public class QueryModel {
+
+    private Constraint constraint;
+    private Ordering[] orderings;
+    private Properties paramaters;
+
+    public QueryModel(Constraint constraint, Ordering[] orderings) {
+        this(constraint,orderings,new Properties());
+    }
+
+    public QueryModel(Constraint constraint, Ordering[] orderings, Propert=
ies parameters) {
+        this.constraint =3D constraint;
+        this.orderings =3D orderings;
+        if ( this.orderings =3D=3D null ){
+            this.orderings =3D new Ordering[]{};
+        }
+        this.paramaters =3D parameters;
+        if ( this.paramaters =3D=3D null ){
+            this.paramaters =3D new Properties();
+        }
+    }
+
+    public Constraint getConstraint() {
+        return constraint;
+    }
+
+    public void setConstraint(Constraint constraint) {
+        this.constraint =3D constraint;
+    }
+
+    public void addOrdering(Ordering ordering) {
+        if ( ordering =3D=3D null ){
+            return;
+        }
+        if ( this.orderings =3D=3D null ){
+            this.orderings =3D new Ordering[]{ordering};
+        } else {
+            ArrayList orderingsList =3D new ArrayList();
+            orderingsList.addAll(Arrays.asList(this.orderings));
+            orderingsList.add(ordering);
+            this.orderings =3D (Ordering[])orderingsList.toArray(orderings=
);
+        }
+    }
+
+    public Ordering[] getOrderings() {
+        return orderings;
+    }
+
+    public void setOrderings(Ordering[] orderings) {
+        this.orderings =3D orderings;
+    }
+
+    public Properties getParamaters() {
+        return paramaters;
+    }
+
+    public void setParamaters(Properties paramaters) {
+        this.paramaters =3D paramaters;
+    }
+
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/QueryModelConstants.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/QueryModelConsta=
nts.java&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModelConstants.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModelConstants.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,38 @@
+package org.jahia.query;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 10:40:01
+ * To change this template use File | Settings | File Templates.
+ */
+public class QueryModelConstants {
+
+    public static final int OPERATOR_EQUAL_TO =3D 1;
+    public static final int OPERATOR_GREATER_THAN =3D 2;
+    public static final int OPERATOR_GREATER_THAN_OR_EQUAL_TO =3D 3;
+    public static final int OPERATOR_LESS_THAN =3D 4;
+    public static final int OPERATOR_LESS_THAN_OR_EQUAL_TO =3D 5;
+    public static final int OPERATOR_LIKE =3D 6;
+    public static final int OPERATOR_NOT_EQUAL_TO =3D 7;
+    public static final int OPERATOR_IS_NULL =3D 8;
+    public static final int OPERATOR_IS_NOT_NULL =3D 9;
+
+    public static final int ORDER_ASCENDING =3D 0;
+    public static final int ORDER_DESCENDING =3D 1;
+    public static final String ORDER_ASCENDING_LITERAL =3D "ASC";
+    public static final String ORDER_DESCENDING_LITERAL =3D "DESC";
+
+    public static final int CONTAINER_QUERY =3D 1;
+    public static final int PAGE_QUERY =3D 2;
+    public static final int CONTAINER_AND_PAGE_QUERY =3D PAGE_QUERY | CONT=
AINER_QUERY;
+
+    public static final String DEFINITION_NAMES_PARAMS =3D "DEFINITION_NAM=
ES";
+    public static final String LANGUAGE_CODES_PARAMS =3D "LANGUAGE_CODES";
+    public static final String SITE_IDS_PARAMS =3D "SITE_IDS";
+    public static final String SITE_LEVEL_QUERY_PARAMS =3D "SITE_LEVEL_QUE=
RY";
+
+    public static final String FILTER_CREATORS =3D "FILTER_CREATORS";
+    =

+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/QueryModelFactory.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/QueryModelFactor=
y.java&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModelFactory.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModelFactory.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,113 @@
+package org.jahia.query;
+
+import java.util.Iterator;
+import java.util.List;
+import java.util.Properties;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 7 nov. 2007
+ * Time: 09:57:44
+ * To change this template use File | Settings | File Templates.
+ */
+public class QueryModelFactory {
+
+    public QueryModelFactory(){
+    }
+
+    public QueryModel createQuery(Constraint constraint, Ordering[] orderi=
ngs, Properties parameters){
+        return new QueryModel(constraint, orderings, parameters);
+    }
+
+    public QueryModel createQuery(Constraint constraint, List orderings, P=
roperties parameters){
+        Ordering[] ordAr =3D new Ordering[]{};
+        if (orderings !=3D null && !orderings.isEmpty()){
+            ordAr =3D (Ordering[])orderings.toArray(ordAr);
+        }
+        return new QueryModel(constraint, ordAr, parameters);
+    }
+
+    public And and(Constraint constraint1, Constraint constraint2){
+        return new And(constraint1, constraint2);
+    }
+
+    public And and(List constraints){
+        And andConstraint =3D null;
+        Iterator it =3D constraints.iterator();
+        Constraint c1 =3D null;
+        Constraint c2 =3D null;
+        while (it.hasNext()){
+            if ( andConstraint =3D=3D null ){
+                c1 =3D (Constraint)it.next();
+                c2 =3D (Constraint)it.next();
+                andConstraint =3D this.and(c1,c2);
+            } else {
+                c1 =3D (Constraint)it.next();
+                andConstraint =3D this.and(andConstraint,c1);
+            }
+        }
+        return andConstraint;
+    }
+
+
+    public Or or(Constraint constraint1, Constraint constraint2){
+        return new Or(constraint1, constraint2);
+    }
+
+    public Or or(List constraints){
+        Or orConstraint =3D null;
+        Iterator it =3D constraints.iterator();
+        Constraint c1 =3D null;
+        Constraint c2 =3D null;
+        while (it.hasNext()){
+            if ( orConstraint =3D=3D null ){
+                c1 =3D (Constraint)it.next();
+                c2 =3D (Constraint)it.next();
+                orConstraint =3D this.or(c1,c2);
+            } else {
+                c1 =3D (Constraint)it.next();
+                orConstraint =3D this.or(orConstraint,c1);
+            }
+        }
+        return orConstraint;
+    }
+
+    public Not not(Constraint constraint){
+        return new Not(constraint);
+    }
+
+    public And not(List constraints){
+        And andConstraint =3D null;
+        Iterator it =3D constraints.iterator();
+        Constraint c1 =3D null;
+        Constraint c2 =3D null;
+        while (it.hasNext()){
+            if ( andConstraint =3D=3D null ){
+                c1 =3D (Constraint)it.next();
+                c2 =3D (Constraint)it.next();
+                andConstraint =3D this.and(this.not(c1),this.not(c2));
+            } else {
+                c1 =3D (Constraint)it.next();
+                andConstraint =3D this.and(andConstraint,this.not(c1));
+            }
+        }
+        return andConstraint;
+    }
+
+    public Comparison comparison(PropertyValue operand1, int operator, Lit=
eral operand2){
+        return new Comparison(operand1, operator, operand2);
+    }
+
+    public FullTextSearch fullTextSearch(String propertyName, String fullT=
extSearchExpression){
+        return new FullTextSearch(propertyName,fullTextSearchExpression);
+    }
+
+    public Ordering descending(Operand operand){
+        return new Ordering(operand,QueryModelConstants.ORDER_DESCENDING);
+    }
+    public Ordering ascending(Operand operand){
+        return new Ordering(operand,QueryModelConstants.ORDER_ASCENDING);
+    }
+
+}
\ No newline at end of file

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/QueryModelTools.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/QueryModelTools.=
java&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModelTools.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryModelTools.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,31 @@
+package org.jahia.query;
+
+import java.util.Properties;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 8 nov. 2007
+ * Time: 14:39:57
+ * To change this template use File | Settings | File Templates.
+ */
+public class QueryModelTools {
+
+    public static void appendParameterValue(Properties parameters, String =
parameterName,
+                                            String value){
+        if ( parameters =3D=3D null || !isNotEmptyStringOrNull(value) ||
+                !isNotEmptyStringOrNull(parameterName)){
+            return;
+        }
+        String paramValue =3D parameters.getProperty(parameterName);
+        if (paramValue=3D=3Dnull||paramValue.trim().equals("")){
+            parameters.setProperty(parameterName,value);
+        } else{
+            paramValue +=3D "," + value;            =

+        }
+    }
+
+    public static boolean isNotEmptyStringOrNull(String value){
+        return (value !=3D null && !"".equals(value.trim()));
+    }
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/QueryService.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/QueryService.jav=
a&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryService.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/QueryService.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,69 @@
+package org.jahia.query;
+
+import org.jahia.exceptions.JahiaInitializationException;
+import org.jahia.services.JahiaService;
+
+import java.util.*;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 20 nov. 2007
+ * Time: 10:45:14
+ * To change this template use File | Settings | File Templates.
+ */
+public class QueryService extends JahiaService {
+
+    private static QueryService singletonInstance =3D null;
+
+    private String defaultFilterCreatorName;
+
+    private Map filterCreators;
+
+    protected QueryService() {
+        filterCreators =3D new HashMap();
+    }
+
+    /**
+     * Return the unique service instance. If the instance does not exist,
+     * a new instance is created.
+     *
+     * @return The unique service instance.
+     */
+    public synchronized static QueryService getInstance() {
+        if (singletonInstance =3D=3D null) {
+            singletonInstance =3D new QueryService();
+        }
+        return singletonInstance;
+    }
+
+    /**
+     * Initializes the servlet dispatching service with parameters loaded
+     * from the Jahia configuration file.
+     * @throws org.jahia.exceptions.JahiaInitializationException thrown in=
 the case of an error
+     * during this initialization, that will be treated as a critical error
+     * in Jahia and probably stop execution of Jahia once and for all.
+     */
+    public void start()
+        throws JahiaInitializationException {
+    }
+
+    public void stop() {
+    }
+
+    public Map getFilterCreators() {
+        return filterCreators;
+    }
+
+    public void setFilterCreators(Map filterCreators) {
+        this.filterCreators =3D filterCreators;
+    }
+
+    public String getDefaultFilterCreatorName() {
+        return defaultFilterCreatorName;
+    }
+
+    public void setDefaultFilterCreatorName(String defaultFilterCreatorNam=
e) {
+        this.defaultFilterCreatorName =3D defaultFilterCreatorName;
+    }
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/RangeConstraint.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/RangeConstraint.=
java&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/RangeConstraint.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/RangeConstraint.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,73 @@
+package org.jahia.query;
+
+import org.jahia.exceptions.JahiaException;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 21 nov. 2007
+ * Time: 16:05:02
+ * To change this template use File | Settings | File Templates.
+ */
+public class RangeConstraint extends Constraint implements TerminalConstra=
int {
+
+    private PropertyValue operand;
+    private Literal lowerLiteral;
+    private int lowerOperator;
+
+    private Literal upperLiteral;
+    private int upperOperator;
+
+    public RangeConstraint(PropertyValue operand, Literal lowerLiteral, in=
t lowerOperator, Literal upperLiteral,
+                           int upperOperator) {
+        this.operand =3D operand;
+        this.lowerLiteral =3D lowerLiteral;
+        this.lowerOperator =3D lowerOperator;
+        this.upperLiteral =3D upperLiteral;
+        this.upperOperator =3D upperOperator;
+    }
+
+    public PropertyValue getOperand() {
+        return operand;
+    }
+
+    public void setOperand(PropertyValue operand) {
+        this.operand =3D operand;
+    }
+
+    public Literal getLowerLiteral() {
+        return lowerLiteral;
+    }
+
+    public void setLowerLiteral(Literal lowerLiteral) {
+        this.lowerLiteral =3D lowerLiteral;
+    }
+
+    public int getLowerOperator() {
+        return lowerOperator;
+    }
+
+    public void setLowerOperator(int lowerOperator) {
+        this.lowerOperator =3D lowerOperator;
+    }
+
+    public Literal getUpperLiteral() {
+        return upperLiteral;
+    }
+
+    public void setUpperLiteral(Literal upperLiteral) {
+        this.upperLiteral =3D upperLiteral;
+    }
+
+    public int getUpperOperator() {
+        return upperOperator;
+    }
+
+    public void setUpperOperator(int upperOperator) {
+        this.upperOperator =3D upperOperator;
+    }
+
+    public void accept(ConstraintInterpreter interpreter) throws JahiaExce=
ption {
+        interpreter.range(this);
+    }
+}

Added: branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/q=
uery/TerminalConstraint.java
URL: https://svndev.jahia.net/websvn/filedetails.php?path=3D/branches/JAHIA=
-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/query/TerminalConstrai=
nt.java&rev=3D19511&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/TerminalConstraint.java (added)
+++ branches/JAHIA-5-0-3-DMS-JACKRABBIT-BRANCH/core/src/java/org/jahia/quer=
y/TerminalConstraint.java Tue Jan 15 13:26:15 2008
@@ -0,0 +1,11 @@
+package org.jahia.query;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: hollis
+ * Date: 9 nov. 2007
+ * Time: 12:21:14
+ * To change this template use File | Settings | File Templates.
+ */
+public interface TerminalConstraint {
+}

_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list

Reply via email to