You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2012/12/06 19:36:07 UTC
svn commit: r1418026 - in
/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer:
FormatterBase.java FormatterElement.java QuerySerializer.java Serializer.java
Author: andy
Date: Thu Dec 6 18:36:06 2012
New Revision: 1418026
URL: http://svn.apache.org/viewvc?rev=1418026&view=rev
Log:
JENA-361 - Printing subqueries was not based on the same print context leading to mis-reuse of bNode labels.
Modified:
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/FormatterBase.java
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/FormatterElement.java
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/QuerySerializer.java
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/Serializer.java
Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/FormatterBase.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/FormatterBase.java?rev=1418026&r1=1418025&r2=1418026&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/FormatterBase.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/FormatterBase.java Thu Dec 6 18:36:06 2012
@@ -26,9 +26,9 @@ import com.hp.hpl.jena.sparql.util.FmtUt
public abstract class FormatterBase
{
- IndentedWriter out ;
- SerializationContext context ;
- FormatterBase(IndentedWriter _out, SerializationContext _context)
+ protected IndentedWriter out ;
+ protected SerializationContext context ;
+ protected FormatterBase(IndentedWriter _out, SerializationContext _context)
{
out = _out ;
context = _context ;
Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/FormatterElement.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/FormatterElement.java?rev=1418026&r1=1418025&r2=1418026&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/FormatterElement.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/FormatterElement.java Thu Dec 6 18:36:06 2012
@@ -27,6 +27,7 @@ import org.apache.jena.atlas.io.Indented
import com.hp.hpl.jena.graph.Node ;
import com.hp.hpl.jena.graph.Triple ;
+import com.hp.hpl.jena.query.Query ;
import com.hp.hpl.jena.sparql.core.BasicPattern ;
import com.hp.hpl.jena.sparql.core.PathBlock ;
import com.hp.hpl.jena.sparql.core.TriplePath ;
@@ -457,8 +458,12 @@ public class FormatterElement extends Fo
{
out.print("{ ") ;
out.incIndent(INDENT) ;
- // Messy - prefixes.
- el.getQuery().serialize(out) ;
+ Query q = el.getQuery() ;
+ // It's SELECT query so no template formatter needed.
+ Serializer.serializeARQ(q, out,
+ new FormatterElement(out, context),
+ new FmtExprSPARQL(out, context),
+ null) ;
out.decIndent(INDENT) ;
out.print("}") ;
}
Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/QuerySerializer.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/QuerySerializer.java?rev=1418026&r1=1418025&r2=1418026&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/QuerySerializer.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/QuerySerializer.java Thu Dec 6 18:36:06 2012
@@ -46,19 +46,19 @@ public class QuerySerializer implements
protected FmtExprSPARQL fmtExpr ;
protected IndentedWriter out = null ;
- QuerySerializer(OutputStream _out,
- FormatterElement formatterElement,
- FmtExprSPARQL formatterExpr,
- FormatterTemplate formatterTemplate)
+ QuerySerializer(OutputStream _out,
+ FormatterElement formatterElement,
+ FmtExprSPARQL formatterExpr,
+ FormatterTemplate formatterTemplate)
{
this(new IndentedWriter(_out),
formatterElement, formatterExpr, formatterTemplate) ;
}
- QuerySerializer(IndentedWriter iwriter,
- FormatterElement formatterElement,
- FmtExprSPARQL formatterExpr,
- FormatterTemplate formatterTemplate)
+ QuerySerializer(IndentedWriter iwriter,
+ FormatterElement formatterElement,
+ FmtExprSPARQL formatterExpr,
+ FormatterTemplate formatterTemplate)
{
out = iwriter ;
fmtTemplate = formatterTemplate ;
Modified: jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/Serializer.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/Serializer.java?rev=1418026&r1=1418025&r2=1418026&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/Serializer.java (original)
+++ jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/serializer/Serializer.java Thu Dec 6 18:36:06 2012
@@ -170,11 +170,11 @@ public class Serializer
serializeARQ(query, query, writer);
}
- static private void serializeARQ(Query query,
- IndentedWriter writer,
- FormatterElement eltFmt,
- FmtExprSPARQL exprFmt,
- FormatterTemplate templateFmt)
+ static void serializeARQ(Query query,
+ IndentedWriter writer,
+ FormatterElement eltFmt,
+ FmtExprSPARQL exprFmt,
+ FormatterTemplate templateFmt)
{
QuerySerializer serilizer = new QuerySerializer(writer, eltFmt, exprFmt, templateFmt) ;
query.visit(serilizer) ;