Package org.eclipse.rdf4j.query.resultio
Class QueryResultIO
java.lang.Object
org.eclipse.rdf4j.query.resultio.QueryResultIO
Class offering utility methods related to query results.
- Author:
- Arjohn Kampman
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic BooleanQueryResultParser
createBooleanParser
(QueryResultFormat format) Convenience methods for creating BooleanQueryResultParser objects.This method uses the registry returned byBooleanQueryResultParserRegistry.getInstance()
to get a factory for the specified format and uses this factory to create the appropriate parser.static BooleanQueryResultWriter
createBooleanWriter
(QueryResultFormat format, OutputStream out) Convenience methods for creating BooleanQueryResultWriter objects.This method uses the registry returned byBooleanQueryResultWriterRegistry.getInstance()
to get a factory for the specified format and uses this factory to create the appropriate writer.static TupleQueryResultParser
createTupleParser
(QueryResultFormat format) Convenience methods for creating TupleQueryResultParser objects.static TupleQueryResultParser
createTupleParser
(QueryResultFormat format, ValueFactory valueFactory) Convenience methods for creating TupleQueryResultParser objects that use the specified ValueFactory to create RDF model objects.static TupleQueryResultWriter
createTupleWriter
(QueryResultFormat format, OutputStream out) Convenience methods for creating TupleQueryResultWriter objects.This method uses the registry returned byTupleQueryResultWriterRegistry.getInstance()
to get a factory for the specified format and uses this factory to create the appropriate writer.static QueryResultWriter
createWriter
(QueryResultFormat format, OutputStream out) Convenience methods for creating QueryResultWriter objects.This method uses the registry returned byTupleQueryResultWriterRegistry.getInstance()
to get a factory for the specified format and uses this factory to create the appropriate writer.static Optional<QueryResultFormat>
getBooleanParserFormatForFileName
(String fileName) Tries to match the extension of a file name against the list of RDF formats that can be parsed.static Optional<QueryResultFormat>
getBooleanParserFormatForMIMEType
(String mimeType) Tries to match a MIME type against the list of boolean query result formats that can be parsed.static Optional<QueryResultFormat>
getBooleanWriterFormatForFileName
(String fileName) Tries to match the extension of a file name against the list of RDF formats that can be written.static Optional<QueryResultFormat>
getBooleanWriterFormatForMIMEType
(String mimeType) Tries to match a MIME type against the list of boolean query result formats that can be written.static Optional<QueryResultFormat>
getParserFormatForFileName
(String fileName) Tries to match the extension of a file name against the list of RDF formats that can be parsed.static Optional<QueryResultFormat>
getParserFormatForMIMEType
(String mimeType) Tries to match a MIME type against the list of tuple query result formats that can be parsed.static Optional<QueryResultFormat>
getWriterFormatForFileName
(String fileName) Tries to match the extension of a file name against the list of RDF formats that can be written.static Optional<QueryResultFormat>
getWriterFormatForMIMEType
(String mimeType) Tries to match a MIME type against the list of tuple query result formats that can be written.static boolean
parseBoolean
(InputStream in, QueryResultFormat format) Parses a boolean query result document and returns the parsed value.static TupleQueryResult
parseTuple
(InputStream in, QueryResultFormat format, WeakReference<?> callerReference) Parses a query result document and returns it as a TupleQueryResult object.static void
parseTuple
(InputStream in, QueryResultFormat format, TupleQueryResultHandler handler, ValueFactory valueFactory) Parses a query result document, reporting the parsed solutions to the supplied TupleQueryResultHandler.static TupleQueryResult
parseTupleBackground
(InputStream in, QueryResultFormat format, WeakReference<?> callerReference) Parses a query result document and returns it as a TupleQueryResult object, with parsing done on a separate thread in the background.
IMPORTANT: As this method may spawn a new thread in the background, it is vitally important that the TupleQueryResult be closed consistently when it is no longer required, to prevent resource leaks.static void
writeBoolean
(boolean value, QueryResultFormat format, OutputStream out) Writes a boolean query result document in a specific boolean query result format to an output stream.static void
writeGraph
(GraphQueryResult gqr, RDFFormat format, OutputStream out) Writes a graph query result document in a specific RDF format to an output stream.static void
writeTuple
(TupleQueryResult tqr, QueryResultFormat format, OutputStream out) Writes a query result document in a specific query result format to an output stream.
-
Constructor Details
-
QueryResultIO
public QueryResultIO()
-
-
Method Details
-
getParserFormatForMIMEType
Tries to match a MIME type against the list of tuple query result formats that can be parsed.- Parameters:
mimeType
- A MIME type, e.g. "application/sparql-results+xml".- Returns:
- An RDFFormat object if a match was found, or
Optional.empty()
otherwise.
-
getParserFormatForFileName
Tries to match the extension of a file name against the list of RDF formats that can be parsed.- Parameters:
fileName
- A file name.- Returns:
- An TupleQueryResultFormat object if a match was found, or
Optional.empty()
otherwise.
-
getWriterFormatForMIMEType
Tries to match a MIME type against the list of tuple query result formats that can be written.- Parameters:
mimeType
- A MIME type, e.g. "application/sparql-results+xml".- Returns:
- An TupleQueryResultFormat object if a match was found, or
Optional.empty()
otherwise.
-
getWriterFormatForFileName
Tries to match the extension of a file name against the list of RDF formats that can be written.- Parameters:
fileName
- A file name.- Returns:
- An TupleQueryResultFormat object if a match was found, or
Optional.empty()
otherwise.
-
getBooleanParserFormatForMIMEType
Tries to match a MIME type against the list of boolean query result formats that can be parsed.- Parameters:
mimeType
- A MIME type, e.g. "application/sparql-results+xml".- Returns:
- An RDFFormat object if a match was found, or
Optional.empty()
otherwise.
-
getBooleanParserFormatForFileName
Tries to match the extension of a file name against the list of RDF formats that can be parsed.- Parameters:
fileName
- A file name.- Returns:
- An BooleanQueryResultFormat object if a match was found, or
Optional.empty()
otherwise.
-
getBooleanWriterFormatForMIMEType
Tries to match a MIME type against the list of boolean query result formats that can be written.- Parameters:
mimeType
- A MIME type, e.g. "application/sparql-results+xml".- Returns:
- An BooleanQueryResultFormat object if a match was found, or
Optional.empty()
otherwise.
-
getBooleanWriterFormatForFileName
Tries to match the extension of a file name against the list of RDF formats that can be written.- Parameters:
fileName
- A file name.- Returns:
- An BooleanQueryResultFormat object if a match was found, or
Optional.empty()
otherwise.
-
createTupleParser
public static TupleQueryResultParser createTupleParser(QueryResultFormat format) throws UnsupportedQueryResultFormatException Convenience methods for creating TupleQueryResultParser objects. This method uses the registry returned byTupleQueryResultParserRegistry.getInstance()
to get a factory for the specified format and uses this factory to create the appropriate parser.- Returns:
- A TupleQueryResultParser matching the given format.
- Throws:
UnsupportedQueryResultFormatException
- If no parser is available for the specified tuple query result format.
-
createTupleParser
public static TupleQueryResultParser createTupleParser(QueryResultFormat format, ValueFactory valueFactory) throws UnsupportedQueryResultFormatException Convenience methods for creating TupleQueryResultParser objects that use the specified ValueFactory to create RDF model objects.- Parameters:
format
-valueFactory
-- Returns:
- A TupleQueryResultParser matching the given format.
- Throws:
UnsupportedQueryResultFormatException
- If no parser is available for the specified tuple query result format.- See Also:
-
createTupleWriter
public static TupleQueryResultWriter createTupleWriter(QueryResultFormat format, OutputStream out) throws UnsupportedQueryResultFormatException Convenience methods for creating TupleQueryResultWriter objects.This method uses the registry returned byTupleQueryResultWriterRegistry.getInstance()
to get a factory for the specified format and uses this factory to create the appropriate writer.- Parameters:
format
-out
-- Returns:
- A TupleQueryResultWriter matching the given format.
- Throws:
UnsupportedQueryResultFormatException
- If no writer is available for the specified tuple query result format.
-
createBooleanParser
public static BooleanQueryResultParser createBooleanParser(QueryResultFormat format) throws UnsupportedQueryResultFormatException Convenience methods for creating BooleanQueryResultParser objects.This method uses the registry returned byBooleanQueryResultParserRegistry.getInstance()
to get a factory for the specified format and uses this factory to create the appropriate parser.- Parameters:
format
-- Returns:
- A BooleanQueryResultParser matching the given format.
- Throws:
UnsupportedQueryResultFormatException
- If no parser is available for the specified boolean query result format.
-
createBooleanWriter
public static BooleanQueryResultWriter createBooleanWriter(QueryResultFormat format, OutputStream out) throws UnsupportedQueryResultFormatException Convenience methods for creating BooleanQueryResultWriter objects.This method uses the registry returned byBooleanQueryResultWriterRegistry.getInstance()
to get a factory for the specified format and uses this factory to create the appropriate writer.- Parameters:
format
-out
-- Returns:
- A BooleanQueryResultWriter matching the given format.
- Throws:
UnsupportedQueryResultFormatException
- If no writer is available for the specified boolean query result format.
-
createWriter
public static QueryResultWriter createWriter(QueryResultFormat format, OutputStream out) throws UnsupportedQueryResultFormatException Convenience methods for creating QueryResultWriter objects.This method uses the registry returned byTupleQueryResultWriterRegistry.getInstance()
to get a factory for the specified format and uses this factory to create the appropriate writer.- Parameters:
format
-out
-- Returns:
- A QueryResultWriter matching the given format.
- Throws:
UnsupportedQueryResultFormatException
- If no writer is available for the specified tuple query result format.
-
parseTuple
public static void parseTuple(InputStream in, QueryResultFormat format, TupleQueryResultHandler handler, ValueFactory valueFactory) throws IOException, QueryResultParseException, TupleQueryResultHandlerException, UnsupportedQueryResultFormatException Parses a query result document, reporting the parsed solutions to the supplied TupleQueryResultHandler.- Parameters:
in
- An InputStream to read the query result document from.format
- The query result format of the document to parse. SeeTupleQueryResultFormat
for the list of supported formats.handler
- The TupleQueryResultHandler to report the parse results to.valueFactory
-- Throws:
IOException
- If an I/O error occurred while reading the query result document from the stream.TupleQueryResultHandlerException
- If such an exception is thrown by the supplied TupleQueryResultHandler.UnsupportedQueryResultFormatException
IllegalArgumentException
- If an unsupported query result file format was specified.QueryResultParseException
-
parseTuple
public static TupleQueryResult parseTuple(InputStream in, QueryResultFormat format, WeakReference<?> callerReference) throws IOException, QueryResultParseException, TupleQueryResultHandlerException, UnsupportedQueryResultFormatException Parses a query result document and returns it as a TupleQueryResult object.- Parameters:
in
- An InputStream to read the query result document from.format
- The query result format of the document to parse. SeeTupleQueryResultFormat
for the list of supported formats.- Returns:
- A TupleQueryResult containing the query results.
- Throws:
IOException
- If an I/O error occurred while reading the query result document from the stream.TupleQueryResultHandlerException
- If such an exception is thrown by the used query result parser.UnsupportedQueryResultFormatException
IllegalArgumentException
- If an unsupported query result file format was specified.QueryResultParseException
-
parseTupleBackground
public static TupleQueryResult parseTupleBackground(InputStream in, QueryResultFormat format, WeakReference<?> callerReference) throws IOException, QueryResultParseException, TupleQueryResultHandlerException, UnsupportedQueryResultFormatException Parses a query result document and returns it as a TupleQueryResult object, with parsing done on a separate thread in the background.
IMPORTANT: As this method may spawn a new thread in the background, it is vitally important that the TupleQueryResult be closed consistently when it is no longer required, to prevent resource leaks.- Parameters:
in
- An InputStream to read the query result document from.format
- The query result format of the document to parse. SeeTupleQueryResultFormat
for the list of supported formats.- Returns:
- A TupleQueryResult containing the query results, which must be closed to prevent resource leaks.
- Throws:
IOException
- If an I/O error occurred while reading the query result document from the stream.TupleQueryResultHandlerException
- If such an exception is thrown by the used query result parser.UnsupportedQueryResultFormatException
IllegalArgumentException
- If an unsupported query result file format was specified.QueryResultParseException
-
parseBoolean
public static boolean parseBoolean(InputStream in, QueryResultFormat format) throws IOException, QueryResultParseException, UnsupportedQueryResultFormatException Parses a boolean query result document and returns the parsed value.- Parameters:
in
- An InputStream to read the query result document from.format
- The file format of the document to parse.- Returns:
- A boolean representing the result of parsing the given InputStream.
- Throws:
IOException
- If an I/O error occurred while reading the query result document from the stream.UnsupportedQueryResultFormatException
- If an unsupported query result file format was specified.QueryResultParseException
-
writeTuple
public static void writeTuple(TupleQueryResult tqr, QueryResultFormat format, OutputStream out) throws IOException, TupleQueryResultHandlerException, UnsupportedQueryResultFormatException, QueryEvaluationException Writes a query result document in a specific query result format to an output stream.- Parameters:
tqr
- The query result to write.format
- The file format of the document to write.out
- An OutputStream to write the document to.- Throws:
IOException
- If an I/O error occurred while writing the query result document to the stream.TupleQueryResultHandlerException
- If such an exception is thrown by the used query result writer.UnsupportedQueryResultFormatException
QueryEvaluationException
- If an unsupported query result file format was specified.
-
writeBoolean
public static void writeBoolean(boolean value, QueryResultFormat format, OutputStream out) throws QueryResultHandlerException, UnsupportedQueryResultFormatException Writes a boolean query result document in a specific boolean query result format to an output stream.- Parameters:
value
- The value to write.format
- The file format of the document to write.out
- An OutputStream to write the document to.- Throws:
QueryResultHandlerException
- If an I/O or other error occurred while writing the query result document to the stream.UnsupportedQueryResultFormatException
- If an unsupported query result file format was specified.
-
writeGraph
public static void writeGraph(GraphQueryResult gqr, RDFFormat format, OutputStream out) throws IOException, RDFHandlerException, UnsupportedRDFormatException, QueryEvaluationException Writes a graph query result document in a specific RDF format to an output stream.- Parameters:
gqr
- The query result to write.format
- The file format of the document to write.out
- An OutputStream to write the document to.- Throws:
IOException
- If an I/O error occurred while writing the query result document to the stream.RDFHandlerException
- If such an exception is thrown by the used RDF writer.QueryEvaluationException
UnsupportedRDFormatException
- If an unsupported query result file format was specified.
-