updated sparql module to work with the new templating api

Project: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-marmotta/commit/e8cc98d8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/tree/e8cc98d8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-marmotta/diff/e8cc98d8

Branch: refs/heads/develop
Commit: e8cc98d8804b83ff0334b9210587a86bce70e873
Parents: 6059fb8
Author: Sergio Fernández <[email protected]>
Authored: Thu Apr 11 13:55:53 2013 +0200
Committer: Sergio Fernández <[email protected]>
Committed: Thu Apr 11 13:55:53 2013 +0200

----------------------------------------------------------------------
 .../sparql/services/sparql/SparqlServiceImpl.java  |   54 ++++++++++++++-
 .../services/sparql/SparqlWritersHelper.java       |   54 ---------------
 .../sparqlhtml/SPARQLBooleanHTMLWriter.java        |    1 -
 .../sparqlhtml/SPARQLResultsHTMLWriter.java        |   13 ++--
 .../sparql/webservices/SparqlWebService.java       |    6 ++-
 5 files changed, 64 insertions(+), 64 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/e8cc98d8/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparql/SparqlServiceImpl.java
----------------------------------------------------------------------
diff --git 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparql/SparqlServiceImpl.java
 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparql/SparqlServiceImpl.java
index 2fd604c..edcb99d 100644
--- 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparql/SparqlServiceImpl.java
+++ 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparql/SparqlServiceImpl.java
@@ -28,11 +28,16 @@ import javax.enterprise.context.ApplicationScoped;
 import javax.inject.Inject;
 
 import org.apache.marmotta.platform.core.api.config.ConfigurationService;
+import org.apache.marmotta.platform.core.api.templating.TemplatingService;
 import org.apache.marmotta.platform.core.api.triplestore.SesameService;
 import org.apache.marmotta.platform.core.exception.InvalidArgumentException;
 import org.apache.marmotta.platform.core.exception.MarmottaException;
 import org.apache.marmotta.platform.sparql.api.sparql.SparqlService;
 import 
org.apache.marmotta.platform.sparql.services.sparqlio.rdf.SPARQLGraphResultWriter;
+import 
org.apache.marmotta.platform.sparql.services.sparqlio.sparqlhtml.SPARQLBooleanHTMLWriter;
+import 
org.apache.marmotta.platform.sparql.services.sparqlio.sparqlhtml.SPARQLResultsHTMLWriter;
+import 
org.apache.marmotta.platform.sparql.services.sparqlio.sparqljson.SPARQLBooleanJSONWriter;
+import 
org.apache.marmotta.platform.sparql.services.sparqlio.sparqljson.SPARQLResultsJSONWriter;
 import org.openrdf.model.Value;
 import org.openrdf.query.Binding;
 import org.openrdf.query.BindingSet;
@@ -49,6 +54,10 @@ import org.openrdf.query.Update;
 import org.openrdf.query.UpdateExecutionException;
 import org.openrdf.query.resultio.BooleanQueryResultWriter;
 import org.openrdf.query.resultio.TupleQueryResultWriter;
+import org.openrdf.query.resultio.sparqlxml.SPARQLBooleanXMLWriter;
+import org.openrdf.query.resultio.sparqlxml.SPARQLResultsXMLWriter;
+import org.openrdf.query.resultio.text.BooleanTextWriter;
+import org.openrdf.query.resultio.text.csv.SPARQLResultsCSVWriter;
 import org.openrdf.repository.RepositoryConnection;
 import org.openrdf.repository.RepositoryException;
 import org.slf4j.Logger;
@@ -70,6 +79,9 @@ public class SparqlServiceImpl implements SparqlService {
 
     @Inject
     private ConfigurationService configurationService;
+    
+    @Inject
+    private TemplatingService templatingService;
 
     @Inject
     private SesameService sesameService;
@@ -175,7 +187,7 @@ public class SparqlServiceImpl implements SparqlService {
     }
     
     private void query(TupleQuery query, OutputStream output, String format) 
throws QueryEvaluationException {
-       query(query, SparqlWritersHelper.getTupleResultWriter(format, output));
+       query(query, getTupleResultWriter(format, output));
     }
     
     private void query(BooleanQuery query, BooleanQueryResultWriter writer) 
throws QueryEvaluationException {
@@ -187,7 +199,7 @@ public class SparqlServiceImpl implements SparqlService {
     }
     
     private void query(BooleanQuery query, OutputStream output, String format) 
throws QueryEvaluationException {
-       query(query, SparqlWritersHelper.getBooleanResultWriter(format, 
output));
+       query(query, getBooleanResultWriter(format, output));
     }
     
     private void query(GraphQuery query, SPARQLGraphResultWriter writer) 
throws QueryEvaluationException {
@@ -199,7 +211,7 @@ public class SparqlServiceImpl implements SparqlService {
     }
     
     private void query(GraphQuery query, OutputStream output, String format) 
throws QueryEvaluationException {
-       query(query, SparqlWritersHelper.getGraphResultWriter(format, output));
+       query(query, getGraphResultWriter(format, output));
     }
     
     /**
@@ -324,6 +336,42 @@ public class SparqlServiceImpl implements SparqlService {
         return result;
     }
 
+    private TupleQueryResultWriter getTupleResultWriter(String format, 
OutputStream os) {
+        //build outputwriter
+        final TupleQueryResultWriter out;
+        if(format == null) {
+            out = new SPARQLResultsXMLWriter(os);
+        } else if(SparqlWritersHelper.parseSubType(format).equals("html")) {
+            out = new SPARQLResultsHTMLWriter(os, templatingService);
+        } else if(SparqlWritersHelper.parseSubType(format).equals("json")) {
+            out = new SPARQLResultsJSONWriter(os);
+        } else if(SparqlWritersHelper.parseSubType(format).equals("xml")) {
+            out = new SPARQLResultsXMLWriter(os);
+        } else if(SparqlWritersHelper.parseSubType(format).equals("csv")) {
+            out = new SPARQLResultsCSVWriter(os);
+        } else throw new InvalidArgumentException("could not produce format 
"+format);
+        return out;
+    }
+
+    private BooleanQueryResultWriter getBooleanResultWriter(String format, 
OutputStream os) {
+        //build outputwriter
+        final BooleanQueryResultWriter out;
+        if(format == null) {
+            out = new SPARQLBooleanXMLWriter(os);
+        } else if(SparqlWritersHelper.parseSubType(format).equals("html")) {
+            out = new SPARQLBooleanHTMLWriter(os);
+        } else if(SparqlWritersHelper.parseSubType(format).equals("json")) {
+            out = new SPARQLBooleanJSONWriter(os);
+        } else if(SparqlWritersHelper.parseSubType(format).equals("xml")) {
+            out = new SPARQLBooleanXMLWriter(os);
+        } else if(SparqlWritersHelper.parseSubType(format).equals("csv")) {
+            out = new BooleanTextWriter(os);
+        } else throw new InvalidArgumentException("could not produce format 
"+format);
+        return out;
+    }
 
+    private SPARQLGraphResultWriter getGraphResultWriter(String format, 
OutputStream os) {
+        return new SPARQLGraphResultWriter(os,format);
+    }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/e8cc98d8/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparql/SparqlWritersHelper.java
----------------------------------------------------------------------
diff --git 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparql/SparqlWritersHelper.java
 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparql/SparqlWritersHelper.java
index a5971dd..60c36af 100644
--- 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparql/SparqlWritersHelper.java
+++ 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparql/SparqlWritersHelper.java
@@ -17,23 +17,9 @@
  */
 package org.apache.marmotta.platform.sparql.services.sparql;
 
-import java.io.OutputStream;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import org.apache.marmotta.platform.core.exception.InvalidArgumentException;
-import 
org.apache.marmotta.platform.sparql.services.sparqlio.rdf.SPARQLGraphResultWriter;
-import 
org.apache.marmotta.platform.sparql.services.sparqlio.sparqlhtml.SPARQLBooleanHTMLWriter;
-import 
org.apache.marmotta.platform.sparql.services.sparqlio.sparqlhtml.SPARQLResultsHTMLWriter;
-import 
org.apache.marmotta.platform.sparql.services.sparqlio.sparqljson.SPARQLBooleanJSONWriter;
-import 
org.apache.marmotta.platform.sparql.services.sparqlio.sparqljson.SPARQLResultsJSONWriter;
-import org.openrdf.query.resultio.BooleanQueryResultWriter;
-import org.openrdf.query.resultio.TupleQueryResultWriter;
-import org.openrdf.query.resultio.sparqlxml.SPARQLBooleanXMLWriter;
-import org.openrdf.query.resultio.sparqlxml.SPARQLResultsXMLWriter;
-import org.openrdf.query.resultio.text.BooleanTextWriter;
-import org.openrdf.query.resultio.text.csv.SPARQLResultsCSVWriter;
-
 /**
  * Helper for working with SPARQL Writers
  * 
@@ -41,46 +27,6 @@ import 
org.openrdf.query.resultio.text.csv.SPARQLResultsCSVWriter;
  *
  */
 public class SparqlWritersHelper {
-       
-    public static TupleQueryResultWriter getTupleResultWriter(String format, 
OutputStream os) {
-        //build outputwriter
-        final TupleQueryResultWriter out;
-        if(format == null) {
-            out = new SPARQLResultsXMLWriter(os);
-        } else if(parseSubType(format).equals("html")) {
-            out = new SPARQLResultsHTMLWriter(os);
-        } else if(parseSubType(format).equals("json")) {
-            out = new SPARQLResultsJSONWriter(os);
-        } else if(parseSubType(format).equals("xml")) {
-            out = new SPARQLResultsXMLWriter(os);
-        } else if(parseSubType(format).equals("csv")) {
-            out = new SPARQLResultsCSVWriter(os);
-        } else throw new InvalidArgumentException("could not produce format 
"+format);
-        return out;
-    }
-
-    public static BooleanQueryResultWriter getBooleanResultWriter(String 
format, OutputStream os) {
-        //build outputwriter
-        final BooleanQueryResultWriter out;
-        if(format == null) {
-            out = new SPARQLBooleanXMLWriter(os);
-        } else if(parseSubType(format).equals("html")) {
-            out = new SPARQLBooleanHTMLWriter(os);
-        } else if(parseSubType(format).equals("json")) {
-            out = new SPARQLBooleanJSONWriter(os);
-        } else if(parseSubType(format).equals("xml")) {
-            out = new SPARQLBooleanXMLWriter(os);
-        } else if(parseSubType(format).equals("csv")) {
-            out = new BooleanTextWriter(os);
-        } else throw new InvalidArgumentException("could not produce format 
"+format);
-        return out;
-    }
-
-    public static SPARQLGraphResultWriter getGraphResultWriter(String format, 
OutputStream os) {
-        return new SPARQLGraphResultWriter(os,format);
-    }
-    
-    //TODO: move this to another place
     
     public static Pattern subTypePattern = 
Pattern.compile("[a-z]+/([a-z0-9-._]+\\+)?([a-z0-9-._]+)(;.*)?");
     

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/e8cc98d8/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparqlio/sparqlhtml/SPARQLBooleanHTMLWriter.java
----------------------------------------------------------------------
diff --git 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparqlio/sparqlhtml/SPARQLBooleanHTMLWriter.java
 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparqlio/sparqlhtml/SPARQLBooleanHTMLWriter.java
index 7e42fbb..bc08941 100644
--- 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparqlio/sparqlhtml/SPARQLBooleanHTMLWriter.java
+++ 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparqlio/sparqlhtml/SPARQLBooleanHTMLWriter.java
@@ -96,7 +96,6 @@ public class SPARQLBooleanHTMLWriter implements 
BooleanQueryResultWriter {
         try {
             Source input      = new StreamSource(new 
ByteArrayInputStream(queryResult));
 
-
             Transformer transformer = stylesheet.newTransformer();
             transformer.setParameter("serverurl", server_uri);
 

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/e8cc98d8/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparqlio/sparqlhtml/SPARQLResultsHTMLWriter.java
----------------------------------------------------------------------
diff --git 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparqlio/sparqlhtml/SPARQLResultsHTMLWriter.java
 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparqlio/sparqlhtml/SPARQLResultsHTMLWriter.java
index c701b24..05560a4 100644
--- 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparqlio/sparqlhtml/SPARQLResultsHTMLWriter.java
+++ 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/services/sparqlio/sparqlhtml/SPARQLResultsHTMLWriter.java
@@ -24,7 +24,8 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.marmotta.platform.core.services.templating.TemplatingHelper;
+
+import org.apache.marmotta.platform.core.api.templating.TemplatingService;
 import org.openrdf.query.BindingSet;
 import org.openrdf.query.TupleQueryResultHandlerException;
 import org.openrdf.query.resultio.TupleQueryResultFormat;
@@ -50,8 +51,10 @@ public class SPARQLResultsHTMLWriter implements 
TupleQueryResultWriter {
     private OutputStream out;
     
     private List<String> vars;
+
+    private TemplatingService templatingService;
     
-    public SPARQLResultsHTMLWriter(OutputStream out) {
+    public SPARQLResultsHTMLWriter(OutputStream out, TemplatingService 
templatingService) {
         this.out = out;
     }
 
@@ -66,7 +69,7 @@ public class SPARQLResultsHTMLWriter implements 
TupleQueryResultWriter {
         data.put("vars", vars);
         this.vars = vars;
         try {
-            TemplatingHelper.processTemplate(SPARQLResultsHTMLWriter.class, 
START_TEMPLATE, data, new OutputStreamWriter(out));
+            templatingService.process(SPARQLResultsHTMLWriter.class, 
START_TEMPLATE, data, new OutputStreamWriter(out));
         } catch (Exception e) {
             log.error(e.getMessage(), e);
             throw new TupleQueryResultHandlerException(e);
@@ -87,7 +90,7 @@ public class SPARQLResultsHTMLWriter implements 
TupleQueryResultWriter {
         }
         data.put("result", result);
         try {
-            TemplatingHelper.processTemplate(SPARQLResultsHTMLWriter.class, 
RESULT_TEMPLATE, data, new OutputStreamWriter(out));
+            templatingService.process(SPARQLResultsHTMLWriter.class, 
RESULT_TEMPLATE, data, new OutputStreamWriter(out));
         } catch (Exception e) {
             log.error(e.getMessage(), e);
             throw new TupleQueryResultHandlerException(e);
@@ -98,7 +101,7 @@ public class SPARQLResultsHTMLWriter implements 
TupleQueryResultWriter {
        public void endQueryResult() throws TupleQueryResultHandlerException {
                Map<String, Object> data = new HashMap<String, Object>();
         try {            
-            TemplatingHelper.processTemplate(SPARQLResultsHTMLWriter.class, 
END_TEMPLATE, data, new OutputStreamWriter(out));
+            templatingService.process(SPARQLResultsHTMLWriter.class, 
END_TEMPLATE, data, new OutputStreamWriter(out));
         } catch (Exception e) {
             log.error(e.getMessage(), e);
             throw new TupleQueryResultHandlerException(e);

http://git-wip-us.apache.org/repos/asf/incubator-marmotta/blob/e8cc98d8/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/webservices/SparqlWebService.java
----------------------------------------------------------------------
diff --git 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/webservices/SparqlWebService.java
 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/webservices/SparqlWebService.java
index b6d520e..2280e91 100644
--- 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/webservices/SparqlWebService.java
+++ 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/webservices/SparqlWebService.java
@@ -17,6 +17,7 @@
  */
 package org.apache.marmotta.platform.sparql.webservices;
 
+import org.apache.marmotta.platform.core.api.templating.TemplatingService;
 import org.apache.marmotta.platform.core.exception.MarmottaException;
 import org.apache.marmotta.platform.sparql.api.sparql.SparqlService;
 import 
org.apache.marmotta.platform.sparql.services.sparqlio.rdf.SPARQLGraphResultWriter;
@@ -91,6 +92,9 @@ public class SparqlWebService {
 
     @Inject
     private ConfigurationService configurationService;
+
+    @Inject
+    private TemplatingService templatingService;
     
     /**
      * Single SPARQL endpoint, redirecting to the actual select endpoint 
@@ -533,7 +537,7 @@ public class SparqlWebService {
         if(format == null) {
             out = new SPARQLResultsXMLWriter(os);
         } else if(parseSubType(format).equals("html")) {
-            out = new SPARQLResultsHTMLWriter(os);
+            out = new SPARQLResultsHTMLWriter(os, templatingService);
         } else if(parseSubType(format).equals("json")) {
             out = new SPARQLResultsJSONWriter(os);
         } else if(parseSubType(format).equals("xml")) {

Reply via email to