[Mulgara-svn] r409 - branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver

andrae at mulgara.org andrae at mulgara.org
Mon Sep 10 07:41:31 UTC 2007


Author: andrae
Date: 2007-09-10 02:41:30 -0500 (Mon, 10 Sep 2007)
New Revision: 409

Modified:
   branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/AppendAggregateTuples.java
   branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/DatabaseOperationContext.java
   branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/LocalQuery.java
   branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/LocalQueryResolver.java
Log:
Initial cut at simplifying LocalQuery - compiles, but untested.



Modified: branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/AppendAggregateTuples.java
===================================================================
--- branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/AppendAggregateTuples.java	2007-09-10 06:18:20 UTC (rev 408)
+++ branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/AppendAggregateTuples.java	2007-09-10 07:41:30 UTC (rev 409)
@@ -275,7 +275,7 @@
         }
 
         // Evaluate the aggregate query
-        Tuples tuples = localQuery.resolve(createBindingMap(this.tuples));
+        Tuples tuples = localQuery.resolveMap(createBindingMap(this.tuples));
 
         if (logger.isDebugEnabled()) {
           logger.debug("Resolved aggregate to " + tuples);

Modified: branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/DatabaseOperationContext.java
===================================================================
--- branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/DatabaseOperationContext.java	2007-09-10 06:18:20 UTC (rev 408)
+++ branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/DatabaseOperationContext.java	2007-09-10 07:41:30 UTC (rev 409)
@@ -781,7 +781,7 @@
     try {
       LocalQuery lq = (LocalQuery)localQuery.clone();
       transform(lq);
-      Tuples result = lq.resolve();
+      Tuples result = lq.resolveE();
       lq.close();
 
       return result;
@@ -835,7 +835,7 @@
     transform(localQuery);
 
     // Complete the numerical phase of resolution
-    Tuples tuples = localQuery.resolve();
+    Tuples tuples = localQuery.resolveE();
     result = new TransactionalAnswer(transaction, new SubqueryAnswer(this, systemResolver, tuples, query.getVariableList()));
     answers.put(result, null);
     tuples.close();

Modified: branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/LocalQuery.java
===================================================================
--- branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/LocalQuery.java	2007-09-10 06:18:20 UTC (rev 408)
+++ branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/LocalQuery.java	2007-09-10 07:41:30 UTC (rev 409)
@@ -98,8 +98,6 @@
   /** Variable list from select clause */
   private List select;
 
-  private Map cachedResults;
-
   //
   // Constructor
   //
@@ -142,7 +140,6 @@
     this.given = new LocalizedTuples(resolverSession, query.getGiven());
     this.having = query.getHavingExpression();
     this.select = query.getVariableList();
-    this.cachedResults = new HashMap();
 
     if (logger.isDebugEnabled()) {
       logger.debug("Constructed local query");
@@ -159,36 +156,14 @@
     this.limit = localQuery.limit;
     this.given = (Tuples)localQuery.given.clone();
     this.select = localQuery.select;
-    this.cachedResults = new HashMap();
   }
 
   //
   // API methods
   //
 
-  /**
-   * Attempt to apply a symbolic query transformation.
-   *
-   * Symbolic transformations modify the values of query clauses without
-   * resolving any {@link Constraint} into {@link Tuples}.
-   *
-   * @param symbolicTransformation  the transformation to apply, never
-   *   <code>null</code>
-   * @return <code>true</code> if the application modified this instance
-   */
-  boolean apply(SymbolicTransformation symbolicTransformation)
-    throws QueryException
+  Tuples resolveMap(Map outerBindings) throws QueryException
   {
-    /*
-    MutableLocalQuery mutableLocalQuery = this.new MutableLocalQueryImpl();
-    symbolicTransformation.apply(mutableLocalQuery);
-    return mutableLocalQuery.isModified();
-    */
-    return false;
-  }
-
-  Tuples resolve(Map outerBindings) throws QueryException
-  {
     try {
       return context.innerCount(new LocalQuery(this,
           new ConstraintConjunction(ConstraintOperations.bindVariables(outerBindings, constraintExpression),
@@ -218,17 +193,16 @@
   }
 
 
-  Tuples resolve(ConstraintExpression whereExtension) throws QueryException {
-    return resolve(constraintExpression, whereExtension);
-  }
-
-
-  Tuples resolve(Constraint constraint) throws QueryException {
+  Tuples resolveCT(Constraint constraint) throws QueryException {
     return context.resolve(constraint);
   }
 
 
-  Tuples resolve(ConstraintExpression baseExpression, ConstraintExpression whereExtension) throws QueryException
+  /**
+   * @return the solution to this query
+   * @throws QueryException if resolution can't be obtained
+   */
+  Tuples resolveE() throws QueryException
   {
     try {
       if (logger.isDebugEnabled()) {
@@ -240,9 +214,9 @@
       }
 
       ConstraintExpression tmpConstraint = new ConstraintConjunction(
-          whereExtension, baseExpression);
+          new ConstraintConjunction(new ArrayList()), constraintExpression);
 
-      Tuples result = resolve(modelExpression, tmpConstraint);
+      Tuples result = resolveMECE(modelExpression, tmpConstraint);
 
       if (logger.isDebugEnabled()) {
         logger.debug("Tuples result = " + TuplesOperations.formatTuplesTree(result));
@@ -258,28 +232,16 @@
       return result;
     } catch (TuplesException et) {
       throw new QueryException("Failed to resolve query", et);
+//    } catch (QueryException eq) {
+//      logger.warn("QueryException thrown in resolve: ", eq);
+//      throw eq;
+//    } catch (Exception e) {
+//      logger.warn("Exception thrown in resolve: ", e);
+//      throw new QueryException("Exception thrown in resolve", e);
     }
   }
 
 
-  /**
-   * @return the solution to this query
-   * @throws QueryException if resolution can't be obtained
-   */
-  Tuples resolve() throws QueryException
-  {
-    try {
-      return resolve(new ConstraintConjunction(new ArrayList()));
-    } catch (QueryException eq) {
-      logger.warn("QueryException thrown in resolve: ", eq);
-      throw eq;
-    } catch (Exception e) {
-      logger.warn("Exception thrown in resolve: ", e);
-      throw new QueryException("Exception thrown in resolve", e);
-    }
-  }
-
-
   private Tuples projectSelectClause(Tuples result) throws TuplesException
   {
     if (result.getRowCardinality() > Cursor.ZERO) {
@@ -393,7 +355,7 @@
    * @param constraintExpression the <code>WHERE</code> clause to resolve
    * @throws QueryException if resolution can't be obtained
    */
-  Tuples resolve(ModelExpression      modelExpression,
+  Tuples resolveMECE(ModelExpression      modelExpression,
                  ConstraintExpression constraintExpression)
     throws QueryException
   {

Modified: branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/LocalQueryResolver.java
===================================================================
--- branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/LocalQueryResolver.java	2007-09-10 06:18:20 UTC (rev 408)
+++ branches/mgr-69/src/jar/resolver/java/org/mulgara/resolver/LocalQueryResolver.java	2007-09-10 07:41:30 UTC (rev 409)
@@ -462,7 +462,7 @@
             localize(new URIReferenceImpl(modelResource.getURI())), localized);
       }
 
-      Tuples result = localQuery.resolve(localized);
+      Tuples result = localQuery.resolveCT(localized);
 
       return result;
     } catch (LocalizeException e) {
@@ -477,7 +477,7 @@
 
 
   public Tuples resolve(ModelExpression modelExpression, ConstraintExpression constraintExpression) throws QueryException {
-    return localQuery.resolve(modelExpression, constraintExpression);
+    return localQuery.resolveMECE(modelExpression, constraintExpression);
   }
 
 




More information about the Mulgara-svn mailing list