Modifier and Type | Field and Description |
---|---|
static int |
TRIPLE_LIMIT
Could be used to prevent extremely large results
|
Constructor and Description |
---|
SparqlStoreImpl(JenaQueryExecutor queryExecutor)
Initialises the Store with the custom
JenaQueryExecutor . |
SparqlStoreImpl(String queryEndpoint,
String updateEndpoint)
Initialises the Store with the endpoints for query and update.
|
SparqlStoreImpl(String queryEndpoint,
String updateEndpoint,
String username,
String password)
Initialises the Store with the endpoints for query and update.
|
Modifier and Type | Method and Description |
---|---|
<T extends org.eclipse.lyo.oslc4j.core.model.IResource> |
appendResources(URI namedGraph,
Collection<T> resources)
Adds OSLC
IResource instances in addition to other instances already
present on this named graph into the triplestore. |
void |
clear(URI namedGraph)
Deletes the resources and statements stored under the given named graph from the triplestore.
|
void |
deleteResources(URI namedGraphUri,
org.eclipse.lyo.oslc4j.core.model.IResource... resources)
Delete all statements whose subject is one of the resources's URis.
|
void |
deleteResources(URI namedGraphUri,
URI... subjectUris)
Delete all statements whose subject is one of nodeUris
|
org.apache.jena.rdf.model.Model |
getJenaModelForSubject(URI namedGraphUri,
URI subject)
Retrieve a Jena model for triples under the given subject from the corresponding named graph.
|
<T extends org.eclipse.lyo.oslc4j.core.model.IResource> |
getResource(URI namedGraphUri,
URI resourceUri,
Class<T> clazz)
Retrieve a single
IResource instance specified by the concrete
type, unmarshaled from the RDF graph persisted in the triplestore under the given
named graph. |
<T extends org.eclipse.lyo.oslc4j.core.model.IResource> |
getResources(URI namedGraph,
Class<T> clazz)
Retrieve the collection of
IResource instances specified by the concrete
type, unmarshaled from the RDF graph persisted in the triplestore under the given
named graph. |
<T extends org.eclipse.lyo.oslc4j.core.model.IResource> |
getResources(URI namedGraph,
Class<T> clazz,
int limit,
int offset)
Alternative to
Store.getResources(URI, Class) with paging on the OSLC resource level. |
org.apache.jena.rdf.model.Model |
getResources(URI namedGraph,
String prefixes,
String where,
int limit,
int offset)
Retrieve a Jena model that satisfies the given where parameter as defined in the OSLC Query language (https://tools.oasis-open.org/version-control/svn/oslc-core/trunk/specs/oslc-query.html)
If the namedGraph is null, the query is applied on all namedGraph in the triplestore.
|
void |
insertJenaModel(URI namedGraph,
org.apache.jena.rdf.model.Model model)
Insert a jena model into the named graph with corresponding URI.
|
boolean |
insertResources(URI namedGraph,
Object... resources)
Insert Jena models representations of OSLC
IResource instances into the
named graph. |
Set<String> |
keySet()
Enumerates all named graph URIs within the dataset.
|
boolean |
namedGraphExists(URI namedGraphUri)
Checks if the triplestore has the named graph under the corresponding URI.
|
<T extends org.eclipse.lyo.oslc4j.core.model.IResource> |
putResources(URI uri,
Collection<T> resources)
Inserts OSLC
IResource instances into the triplestore in the designed
namedGraph. |
void |
removeAll()
Remove EVERYTHING from the triplestore.
|
boolean |
resourceExists(URI namedGraphUri,
URI resourceUri)
Checks if a resource with resourceUri exists under the corresponding named graph.
|
<T extends org.eclipse.lyo.oslc4j.core.model.IResource> |
updateResources(URI namedGraphUri,
T... resources)
Insert Jena models representations of OSLC
IResource instances into the
named graph. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
appendResource
public static final int TRIPLE_LIMIT
public SparqlStoreImpl(String queryEndpoint, String updateEndpoint)
queryEndpoint
- SPARQL QUERY endpointupdateEndpoint
- SPARQL UPDATE endpointpublic SparqlStoreImpl(String queryEndpoint, String updateEndpoint, String username, String password)
queryEndpoint
- SPARQL QUERY endpointupdateEndpoint
- SPARQL UPDATE endpointusername
- Usernamepassword
- Passwordpublic SparqlStoreImpl(JenaQueryExecutor queryExecutor)
JenaQueryExecutor
.queryExecutor
- Instance of the JenaQueryExecutor
that can run queries and updates.public void insertJenaModel(URI namedGraph, org.apache.jena.rdf.model.Model model)
Store
insertJenaModel
in interface Store
public boolean insertResources(URI namedGraph, Object... resources) throws StoreAccessException
Store
IResource
instances into the
named graph.
existing statements already present in the named graph are not overridden, nor removed.insertResources
in interface Store
StoreAccessException
public void deleteResources(URI namedGraphUri, URI... subjectUris)
Store
deleteResources
in interface Store
public void deleteResources(URI namedGraphUri, org.eclipse.lyo.oslc4j.core.model.IResource... resources)
Store
deleteResources
in interface Store
public boolean namedGraphExists(URI namedGraphUri)
Store
namedGraphExists
in interface Store
namedGraphUri
- URI of a named graph that shall be a valid URI and was used before with
the put*
methods.public boolean resourceExists(URI namedGraphUri, URI resourceUri)
Store
resourceExists
in interface Store
public org.apache.jena.rdf.model.Model getJenaModelForSubject(URI namedGraphUri, URI subject) throws NoSuchElementException
Store
getJenaModelForSubject
in interface Store
NoSuchElementException
public <T extends org.eclipse.lyo.oslc4j.core.model.IResource> List<T> getResources(URI namedGraph, Class<T> clazz) throws StoreAccessException, ModelUnmarshallingException
Store
IResource
instances specified by the concrete
type, unmarshaled from the RDF graph persisted in the triplestore under the given
named graph. The
named graph must represent a URI that was previously given to another method call or a
Resource
about URI if the resource was saved alone.getResources
in interface Store
clazz
- Concrete type of the stored resources. Must be correct (correspond to the
marshaled type and be a subclass of IResource
), otherwise the
instantiation from model will not succeed.IResource
instances, unmarshaled from the RDF graph persisted
in the triplestore.StoreAccessException
- if there was a problem with the triplestore (or the
dataset, more broadly).ModelUnmarshallingException
- if the classes cannot be instantiated or another error
occurred when working with Jena model.public <T extends org.eclipse.lyo.oslc4j.core.model.IResource> List<T> getResources(URI namedGraph, Class<T> clazz, int limit, int offset) throws StoreAccessException, ModelUnmarshallingException
Store
Store.getResources(URI, Class)
with paging on the OSLC resource level.getResources
in interface Store
namedGraph
- URI of a named graph under which resources were storedclazz
- class of the resources being retrievedlimit
- paging limitoffset
- paging offsetStoreAccessException
- if there was a problem with the triplestore (or the
dataset, more broadly).ModelUnmarshallingException
- if the classes cannot be instantiated or another error
occurred when working with Jena model.public org.apache.jena.rdf.model.Model getResources(URI namedGraph, String prefixes, String where, int limit, int offset) throws URISyntaxException
Store
getResources
in interface Store
namedGraph
- namedGraphUri URI of a named graph under which resources were storedprefixes
- defines the prefixes for prefixed names that appear in the oslc.where query parameter.where
- filters the member list, keeping only those member resources that satisfy the boolean test on the member resource propertieslimit
- paging limitoffset
- paging offsetURISyntaxException
public <T extends org.eclipse.lyo.oslc4j.core.model.IResource> T getResource(URI namedGraphUri, URI resourceUri, Class<T> clazz) throws NoSuchElementException, StoreAccessException, ModelUnmarshallingException
Store
IResource
instance specified by the concrete
type, unmarshaled from the RDF graph persisted in the triplestore under the given
named graph.
namedGraph must represent a URI that was previously given to another call.getResource
in interface Store
namedGraphUri
- URI of a named graph under which resources were storedclazz
- Java class of the stored resources.IResource
instance, unmarshaled from the RDF graph persisted in the
triplestore.NoSuchElementException
- if the resource is not present under a given named graph
URI or if the named graph itself contains no resources
(effectively missing).StoreAccessException
- if there was a problem with the triplestore (or the
dataset, more broadly).ModelUnmarshallingException
- if the classes cannot be instantiated or another error
occurred when working with Jena model.public <T extends org.eclipse.lyo.oslc4j.core.model.IResource> boolean updateResources(URI namedGraphUri, T... resources) throws StoreAccessException
Store
IResource
instances into the
named graph.
Any existing model representations of these instances are overridden.
other existing statements in the named graph are not overridden, nor removed.updateResources
in interface Store
StoreAccessException
public <T extends org.eclipse.lyo.oslc4j.core.model.IResource> boolean putResources(URI uri, Collection<T> resources) throws StoreAccessException
Store
IResource
instances into the triplestore in the designed
namedGraph.
Any previously stored resource(s) and/or statements will be overwritten.
putResources
in interface Store
uri
- A unique URI that is used as a named graph to which resources are
appendedresources
- A collection of IResource
instancesStoreAccessException
- if the operation can't be performedpublic <T extends org.eclipse.lyo.oslc4j.core.model.IResource> boolean appendResources(URI namedGraph, Collection<T> resources) throws StoreAccessException
Store
IResource
instances in addition to other instances already
present on this named graph into the triplestore. Jena models representing existing and added
resource arrays will be combined.appendResources
in interface Store
namedGraph
- A unique URI that is used as a named graph to which resources are
appendedresources
- A collection of IResource
instancesStoreAccessException
- if the operation can't be performedpublic void clear(URI namedGraph)
Store
May delete the containing named graph, many triplestores will delete the named graph automatically as well as soon as it doesn't contain any triples.
public Set<String> keySet()
Store
If the dataset was not manipulated by other means than via this interface, it can be assumed that all URIs in the set are valid keys.
Copyright © 2018. All rights reserved.