[Mulgara-svn] r813 - branches/mgr-61-sparql/src/jar/resolver/java/org/mulgara/resolver
pag at mulgara.org
pag at mulgara.org
Tue Apr 22 17:29:55 UTC 2008
Author: pag
Date: 2008-04-22 10:29:54 -0700 (Tue, 22 Apr 2008)
New Revision: 813
Modified:
branches/mgr-61-sparql/src/jar/resolver/java/org/mulgara/resolver/DefaultConstraintHandlers.java
Log:
Added model resolution support for ModelVariable, constraint resolution for ConstraintIn, and removed the disabled ConstraintNegation
Modified: branches/mgr-61-sparql/src/jar/resolver/java/org/mulgara/resolver/DefaultConstraintHandlers.java
===================================================================
--- branches/mgr-61-sparql/src/jar/resolver/java/org/mulgara/resolver/DefaultConstraintHandlers.java 2008-04-22 17:28:41 UTC (rev 812)
+++ branches/mgr-61-sparql/src/jar/resolver/java/org/mulgara/resolver/DefaultConstraintHandlers.java 2008-04-22 17:29:54 UTC (rev 813)
@@ -54,6 +54,7 @@
// Local packages
import org.mulgara.query.*;
+import org.mulgara.query.rdf.URIReferenceImpl;
import org.mulgara.resolver.spi.ConstraintBindingHandler;
import org.mulgara.resolver.spi.ConstraintLocalization;
import org.mulgara.resolver.spi.ConstraintModelRewrite;
@@ -125,6 +126,12 @@
Constraint constraint) throws Exception {
return context.resolve((ModelResource)modelExpr, (Constraint)constraint);
}
+ }),
+ new NVPair(ModelVariable.class, new ModelResolutionHandler() {
+ public Tuples resolve(QueryEvaluationContext context, ModelExpression modelExpr,
+ Constraint constraint) throws Exception {
+ return ConstraintOperations.resolveModelExpression(context, (ModelVariable)modelExpr, constraint);
+ }
})
});
}
@@ -211,22 +218,6 @@
}
}
}),
-/*
- new NVPair(ConstraintNegation.class, new ConstraintResolutionHandler() {
- public Tuples resolve(QueryEvaluationContext context, ModelExpression modelExpr, ConstraintExpression constraintExpr) throws Exception {
- if (((ConstraintNegation)constraintExpr).getModel().equals(Variable.FROM)) {
- return ConstraintOperations.resolveModelExpression(context, modelExpr, (Constraint)constraintExpr);
- } else {
- ConstraintElement constraintElem = ((ConstraintNegation)constraintExpr).getElement(3);
- if (constraintElem instanceof URIReference) {
- return ConstraintOperations.resolveModelExpression(context, new ModelResource(((URIReference)constraintElem).getURI()), (Constraint)constraintExpr);
- } else {
- throw new QueryException("Specified model not a URIReference: " + constraintElem +" is a " + constraintElem.getClass().getName() );
- }
- }
- }
- }),
-*/
new NVPair(WalkConstraint.class, new ConstraintResolutionHandler() {
public Tuples resolve(QueryEvaluationContext context, ModelExpression modelExpr, ConstraintExpression constraintExpr) throws Exception {
return WalkFunction.walk(context, (WalkConstraint)constraintExpr, modelExpr, context.getResolverSession());
@@ -257,6 +248,19 @@
}
}
}),
+ new NVPair(ConstraintIn.class, new ConstraintResolutionHandler() {
+ public Tuples resolve(QueryEvaluationContext context, ModelExpression modelExpr, ConstraintExpression constraintExpr) throws Exception {
+ ConstraintIn constraint = (ConstraintIn)constraintExpr;
+ ModelExpression graph;
+ if (constraint.getGraph() instanceof URIReferenceImpl) {
+ graph = new ModelResource(((URIReferenceImpl)constraint.getGraph()).getURI());
+ } else {
+ assert constraint.getGraph() instanceof Variable;
+ graph = new ModelVariable((Variable)constraint.getGraph());
+ }
+ return ConstraintOperations.resolveConstraintExpression(context, graph, constraint.getConstraintParam());
+ }
+ }),
});
}
More information about the Mulgara-svn
mailing list