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 2014/08/06 16:22:14 UTC
svn commit: r1616244 -
/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/writer/TriGWriter.java
Author: andy
Date: Wed Aug 6 14:22:13 2014
New Revision: 1616244
URL: http://svn.apache.org/r1616244
Log:
Only print {} for default graph if not empty
Modified:
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/writer/TriGWriter.java
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/writer/TriGWriter.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/writer/TriGWriter.java?rev=1616244&r1=1616243&r2=1616244&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/writer/TriGWriter.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/writer/TriGWriter.java Wed Aug 6 14:22:13 2014
@@ -38,63 +38,64 @@ import com.hp.hpl.jena.sparql.core.Quad
public class TriGWriter extends TriGWriterBase
{
@Override
- protected void output(IndentedWriter iOut, DatasetGraph dsg, PrefixMap prefixMap, String baseURI)
- {
+ protected void output(IndentedWriter iOut, DatasetGraph dsg, PrefixMap prefixMap, String baseURI) {
TriGWriter$ w = new TriGWriter$(iOut, prefixMap, baseURI) ;
w.write(dsg) ;
}
private static class TriGWriter$ extends TurtleShell
{
- TriGWriter$(IndentedWriter out, PrefixMap prefixMap, String baseURI)
- {
+ TriGWriter$(IndentedWriter out, PrefixMap prefixMap, String baseURI) {
super(out, prefixMap, baseURI) ;
}
- private void write(DatasetGraph dsg)
- {
+ private void write(DatasetGraph dsg) {
writeBase(baseURI) ;
writePrefixes(prefixMap) ;
- if ( ! prefixMap.isEmpty() && !dsg.isEmpty() )
+ if ( !prefixMap.isEmpty() && !dsg.isEmpty() )
out.println() ;
Iterator<Node> graphNames = dsg.listGraphNodes() ;
- writeGraphTriG(dsg, null) ;
+ boolean anyGraphOutput = writeGraphTriG(dsg, null) ;
- for ( ; graphNames.hasNext() ; )
- {
- out.println() ;
+ for ( ; graphNames.hasNext() ; ) {
+ if ( anyGraphOutput )
+ out.println() ;
Node gn = graphNames.next() ;
- writeGraphTriG(dsg, gn) ;
+ anyGraphOutput |= writeGraphTriG(dsg, gn) ;
}
}
- private void writeGraphTriG(DatasetGraph dsg, Node name)
- {
+ /** Return true if anything written */
+ private boolean writeGraphTriG(DatasetGraph dsg, Node name) {
boolean dftGraph = ( name == null || name == Quad.defaultGraphNodeGenerated ) ;
boolean NL_START = ( dftGraph ? NL_GDFT_START : NL_GNMD_START ) ;
boolean NL_END = ( dftGraph ? NL_GDFT_END : NL_GNMD_END ) ;
int INDENT_GRAPH = ( dftGraph ? INDENT_GDFT : INDENT_GNMD ) ;
-
- if ( ! dftGraph )
- {
+
+ if ( !dftGraph ) {
writeNode(name) ;
out.print(" ") ;
+ } else {
+ if ( dsg.getDefaultGraph().isEmpty() )
+ return false ;
}
+
out.print("{") ;
if ( NL_START )
out.println() ;
- else
+ else
out.print(" ") ;
-
+
out.incIndent(INDENT_GRAPH) ;
writeGraphTTL(dsg, name) ;
out.decIndent(INDENT_GRAPH) ;
-
+
if ( NL_END )
out.ensureStartOfLine() ;
out.println("}") ;
+ return true ;
}
}
}