Class AbstractSPARQLJSONParser
- java.lang.Object
-
- org.eclipse.rdf4j.query.resultio.AbstractQueryResultParser
-
- org.eclipse.rdf4j.query.resultio.sparqljson.AbstractSPARQLJSONParser
-
- All Implemented Interfaces:
QueryResultParser
- Direct Known Subclasses:
SPARQLBooleanJSONParser,SPARQLJSONParserBase,SPARQLResultsJSONParser
public abstract class AbstractSPARQLJSONParser extends AbstractQueryResultParser
Abstract base class for SPARQL Results JSON Parsers. Provides a common implementation of both boolean and tuple parsing.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringBINDINGSstatic java.lang.StringBNODEstatic java.lang.StringBOOLEANstatic java.lang.StringDATATYPEprivate static java.lang.StringDISTINCTBackwards compatibility with very early version of original SPARQL spec.static java.lang.StringHEADstatic java.lang.StringLINKstatic java.lang.StringLITERALprivate org.slf4j.Loggerloggerprivate static java.lang.StringORDEREDBackwards compatibility with very early version of original SPARQL spec.static java.lang.StringRESULTSstatic java.lang.StringTYPEstatic java.lang.StringTYPED_LITERALstatic java.lang.StringURIstatic java.lang.StringVALUEstatic java.lang.StringVARSstatic java.lang.StringXMLLANG-
Fields inherited from class org.eclipse.rdf4j.query.resultio.AbstractQueryResultParser
handler, valueFactory
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractSPARQLJSONParser()protectedAbstractSPARQLJSONParser(ValueFactory valueFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancheckTripleType(com.fasterxml.jackson.core.JsonParser jp, java.lang.String type)private com.fasterxml.jackson.core.JsonFactoryconfigureNewJsonFactory()Get an instance of JsonFactory configured using the settings fromAbstractQueryResultParser.getParserConfig().java.util.Collection<RioSetting<?>>getSupportedSettings()voidparseQueryResult(java.io.InputStream in)Parse the query results out of the givenInputStreaminto the handler setup usingQueryResultParser.setQueryResultHandler(QueryResultHandler).protected booleanparseQueryResultInternal(java.io.InputStream in, boolean attemptParseBoolean, boolean attemptParseTuple)private TripleparseStardogTripleValue(com.fasterxml.jackson.core.JsonParser jp, java.lang.String fieldName)protected TripleparseTripleValue(com.fasterxml.jackson.core.JsonParser jp, java.lang.String fieldName)protected ValueparseValue(com.fasterxml.jackson.core.JsonParser jp, java.lang.String bindingStr)private ValueparseValue(java.lang.String type, java.lang.String value, java.lang.String language, java.lang.String datatype)Parse a value out of the elements for a binding.-
Methods inherited from class org.eclipse.rdf4j.query.resultio.AbstractQueryResultParser
getParseErrorListener, getParseLocationListener, getParserConfig, set, setParseErrorListener, setParseLocationListener, setParserConfig, setQueryResultHandler, setValueFactory
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.query.resultio.QueryResultParser
getQueryResultFormat
-
-
-
-
Field Detail
-
logger
private final org.slf4j.Logger logger
-
HEAD
public static final java.lang.String HEAD
- See Also:
- Constant Field Values
-
LINK
public static final java.lang.String LINK
- See Also:
- Constant Field Values
-
VARS
public static final java.lang.String VARS
- See Also:
- Constant Field Values
-
BOOLEAN
public static final java.lang.String BOOLEAN
- See Also:
- Constant Field Values
-
RESULTS
public static final java.lang.String RESULTS
- See Also:
- Constant Field Values
-
BINDINGS
public static final java.lang.String BINDINGS
- See Also:
- Constant Field Values
-
TYPE
public static final java.lang.String TYPE
- See Also:
- Constant Field Values
-
VALUE
public static final java.lang.String VALUE
- See Also:
- Constant Field Values
-
XMLLANG
public static final java.lang.String XMLLANG
- See Also:
- Constant Field Values
-
DATATYPE
public static final java.lang.String DATATYPE
- See Also:
- Constant Field Values
-
LITERAL
public static final java.lang.String LITERAL
- See Also:
- Constant Field Values
-
TYPED_LITERAL
public static final java.lang.String TYPED_LITERAL
- See Also:
- Constant Field Values
-
BNODE
public static final java.lang.String BNODE
- See Also:
- Constant Field Values
-
URI
public static final java.lang.String URI
- See Also:
- Constant Field Values
-
DISTINCT
private static final java.lang.String DISTINCT
Backwards compatibility with very early version of original SPARQL spec.- See Also:
- Constant Field Values
-
ORDERED
private static final java.lang.String ORDERED
Backwards compatibility with very early version of original SPARQL spec.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
AbstractSPARQLJSONParser
protected AbstractSPARQLJSONParser()
-
AbstractSPARQLJSONParser
protected AbstractSPARQLJSONParser(ValueFactory valueFactory)
-
-
Method Detail
-
parseQueryResult
public void parseQueryResult(java.io.InputStream in) throws java.io.IOException, QueryResultParseException, QueryResultHandlerExceptionDescription copied from interface:QueryResultParserParse the query results out of the givenInputStreaminto the handler setup usingQueryResultParser.setQueryResultHandler(QueryResultHandler).- Parameters:
in- TheInputStreamto parse the results from.- Throws:
java.io.IOException- If there is an exception from the InputStream.QueryResultParseException- If the query results are not parsable by this parser.QueryResultHandlerException- If theQueryResultHandlerset inQueryResultParser.setQueryResultHandler(QueryResultHandler)throws an exception.
-
parseQueryResultInternal
protected boolean parseQueryResultInternal(java.io.InputStream in, boolean attemptParseBoolean, boolean attemptParseTuple) throws java.io.IOException, QueryResultParseException, QueryResultHandlerException- Throws:
java.io.IOExceptionQueryResultParseExceptionQueryResultHandlerException
-
parseValue
protected Value parseValue(com.fasterxml.jackson.core.JsonParser jp, java.lang.String bindingStr) throws java.io.IOException
- Throws:
java.io.IOException
-
parseStardogTripleValue
private Triple parseStardogTripleValue(com.fasterxml.jackson.core.JsonParser jp, java.lang.String fieldName) throws java.io.IOException
- Throws:
java.io.IOException
-
parseTripleValue
protected Triple parseTripleValue(com.fasterxml.jackson.core.JsonParser jp, java.lang.String fieldName) throws java.io.IOException
- Throws:
java.io.IOException
-
checkTripleType
protected boolean checkTripleType(com.fasterxml.jackson.core.JsonParser jp, java.lang.String type)
-
parseValue
private Value parseValue(java.lang.String type, java.lang.String value, java.lang.String language, java.lang.String datatype)
Parse a value out of the elements for a binding.- Parameters:
type-LITERAL,TYPED_LITERAL,BNODEorURIvalue- actual value textlanguage- language tag, if applicabledatatype- datatype tag, if applicable- Returns:
- the value corresponding to the given parameters
-
getSupportedSettings
public java.util.Collection<RioSetting<?>> getSupportedSettings()
- Specified by:
getSupportedSettingsin interfaceQueryResultParser- Overrides:
getSupportedSettingsin classAbstractQueryResultParser- Returns:
- A collection of
RioSettings that are supported by this QueryResultParser.
-
configureNewJsonFactory
private com.fasterxml.jackson.core.JsonFactory configureNewJsonFactory()
Get an instance of JsonFactory configured using the settings fromAbstractQueryResultParser.getParserConfig().- Returns:
- A newly configured JsonFactory based on the currently enabled settings
-
-