You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by cl...@apache.org on 2016/02/15 00:41:06 UTC

[2/3] jena git commit: Modified ARQParser usage for JENA-1144

Modified ARQParser usage for JENA-1144


Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/763095b3
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/763095b3
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/763095b3

Branch: refs/heads/master
Commit: 763095b3c4574144aef37a862bd5e70dae9d2cab
Parents: 034547d
Author: Claude Warren <cl...@apache.org>
Authored: Sun Feb 14 23:38:47 2016 +0000
Committer: Claude Warren <cl...@apache.org>
Committed: Sun Feb 14 23:38:47 2016 +0000

----------------------------------------------------------------------
 .../querybuilder/handlers/SelectHandler.java    | 36 ++++----------------
 1 file changed, 6 insertions(+), 30 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/763095b3/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/handlers/SelectHandler.java
----------------------------------------------------------------------
diff --git a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/handlers/SelectHandler.java b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/handlers/SelectHandler.java
index ed4b748..12d6f16 100644
--- a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/handlers/SelectHandler.java
+++ b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/handlers/SelectHandler.java
@@ -28,9 +28,7 @@ import org.apache.jena.sparql.core.Var ;
 import org.apache.jena.sparql.core.VarExprList ;
 import org.apache.jena.sparql.expr.Expr ;
 import org.apache.jena.sparql.lang.arq.ARQParser;
-import org.apache.jena.sparql.lang.arq.ARQParserConstants;
 import org.apache.jena.sparql.lang.arq.ParseException;
-import org.apache.jena.sparql.lang.arq.Token;
 import org.apache.jena.sparql.lang.arq.TokenMgrError;
 
 /**
@@ -105,16 +103,12 @@ public class SelectHandler implements Handler {
 	 private Expr parseExpr(String s)
 	    {
 	        try {
-	            ExprParser parser = new ExprParser(query,s);
-	            Expr expr = parser.Expression() ;
-	            
-	           
-	                Token t = parser.getNextToken() ;
-	                if ( t.kind != ARQParserConstants.EOF )
-	                    throw new QueryParseException("Extra tokens beginning \""+t.image+"\" starting line "+t.beginLine+", column "+t.beginColumn,
-	                                                  t.beginLine, t.beginColumn) ;
-	            
-	            return expr ;
+	        	ARQParser parser = new ARQParser(  new StringReader("SELECT "+s));
+	        	parser.setQuery( new Query() );
+	        	parser.SelectClause();
+	        	Query q = parser.getQuery();
+	        	VarExprList vel = q.getProject();
+	        	return vel.getExprs().values().iterator().next();
 	        } catch (ParseException ex)
 	        { throw new QueryParseException(ex.getMessage(),
 	                                        ex.currentToken.beginLine,
@@ -131,14 +125,6 @@ public class SelectHandler implements Handler {
 	            if ( tmp == null )
 	                throw new QueryParseException(err,-1, -1) ;
 	            throw new QueryParseException(tmp,-1, -1) ;
-	        } catch (NoSuchFieldException e) {
-	        	 throw new QueryParseException(e, -1, -1) ;
-			} catch (SecurityException e) {
-	        	 throw new QueryParseException(e, -1, -1) ;
-			} catch (IllegalArgumentException e) {
-	        	 throw new QueryParseException(e, -1, -1) ;
-			} catch (IllegalAccessException e) {
-	        	 throw new QueryParseException(e, -1, -1) ;
 			}
 	    }
 	
@@ -202,14 +188,4 @@ public class SelectHandler implements Handler {
 		// handle the SELECT * case
 		query.getProjectVars();
 	}
-	
-	private class ExprParser extends ARQParser {
-		
-		private ExprParser(Query query, String s) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException
-		{
-			super( new StringReader(s));
-			allowAggregatesInExpressions = true;
-			setQuery( query );
-		}
-	}
 }