Package org.trellisldp.triplestore
Class TriplestoreResource
- java.lang.Object
-
- org.trellisldp.triplestore.TriplestoreResource
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.trellisldp.api.Resource
Resource.SpecialResources
-
-
Constructor Summary
Constructors Constructor Description TriplestoreResource(RDFConnection rdfConnection, IRI identifier, Map<String,IRI> extensions, boolean includeLdpType)
Create a Triplestore-based Resource.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static CompletableFuture<Resource>
findResource(RDFConnection rdfConnection, IRI identifier, Map<String,IRI> extensions, boolean includeLdpType)
Try to load a Trellis resource.Optional<BinaryMetadata>
getBinaryMetadata()
Retrieve a BinaryMetadata for this resouce, if it is a LDP-NR.Optional<IRI>
getContainer()
Get the container for this resource.IRI
getIdentifier()
Get an identifier for this resource.Optional<IRI>
getInsertedContentRelation()
Retrieve the inserted content relation if this is an LDP Indirect container.IRI
getInteractionModel()
Get the LDP interaction model for this resource.Optional<IRI>
getMemberOfRelation()
Retrieve the member of relation IRI.Optional<IRI>
getMemberRelation()
Retrieve the member relation if this is an LDP Direct or Indirect container.Optional<IRI>
getMembershipResource()
Retrieve the membership resource if this is an LDP Direct or Indirect container.Set<IRI>
getMetadataGraphNames()
Retrieve a collection of attached metadata graph names.Instant
getModified()
Get the last modified date.boolean
hasMetadata(IRI graph)
Test whether this resource has an attached metadata resource.Stream<Quad>
stream()
Retrieve the RDF Quads for a resource.Stream<Quad>
stream(Collection<IRI> graphNames)
Retrieve the RDF Quads for a set of named graphs.-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.trellisldp.api.Resource
dataset, getExtraLinkRelations, getRevision, stream
-
-
-
-
Constructor Detail
-
TriplestoreResource
public TriplestoreResource(RDFConnection rdfConnection, IRI identifier, Map<String,IRI> extensions, boolean includeLdpType)
Create a Triplestore-based Resource.- Parameters:
rdfConnection
- the triplestore connectoridentifier
- the identifierextensions
- a map of extensionsincludeLdpType
- whether to include the LDP interaction model in the response
-
-
Method Detail
-
findResource
public static CompletableFuture<Resource> findResource(RDFConnection rdfConnection, IRI identifier, Map<String,IRI> extensions, boolean includeLdpType)
Try to load a Trellis resource.- Parameters:
rdfConnection
- the triplestore connectoridentifier
- the identifierextensions
- a map of extensionsincludeLdpType
- whether to include the LDP type in the body of the RDF- Returns:
- a new completion stage with a
Resource
, if one exists - Implementation Requirements:
- This method will load a
Resource
, initializing the object with all resource metadata used withgetModified()
,getInteractionModel()
and other data fetched by the accessors. The resource content is fetched on demand via thestream()
method.
-
getContainer
public Optional<IRI> getContainer()
Description copied from interface:Resource
Get the container for this resource.- Specified by:
getContainer
in interfaceResource
- Returns:
- the identifier for a container, if one exists.
-
stream
public Stream<Quad> stream()
Description copied from interface:Resource
Retrieve the RDF Quads for a resource.
-
stream
public Stream<Quad> stream(Collection<IRI> graphNames)
Description copied from interface:Resource
Retrieve the RDF Quads for a set of named graphs.
-
getIdentifier
public IRI getIdentifier()
Description copied from interface:Resource
Get an identifier for this resource.- Specified by:
getIdentifier
in interfaceResource
- Returns:
- the identifier
-
getInteractionModel
public IRI getInteractionModel()
Description copied from interface:Resource
Get the LDP interaction model for this resource.- Specified by:
getInteractionModel
in interfaceResource
- Returns:
- the interaction model
-
getMembershipResource
public Optional<IRI> getMembershipResource()
Description copied from interface:Resource
Retrieve the membership resource if this is an LDP Direct or Indirect container.- Specified by:
getMembershipResource
in interfaceResource
- Returns:
- the membership resource
-
getMemberRelation
public Optional<IRI> getMemberRelation()
Description copied from interface:Resource
Retrieve the member relation if this is an LDP Direct or Indirect container.- Specified by:
getMemberRelation
in interfaceResource
- Returns:
- the ldp:hasMemberRelation IRI
-
getMemberOfRelation
public Optional<IRI> getMemberOfRelation()
Description copied from interface:Resource
Retrieve the member of relation IRI.- Specified by:
getMemberOfRelation
in interfaceResource
- Returns:
- the ldp:isMemberOfRelation IRI
-
getInsertedContentRelation
public Optional<IRI> getInsertedContentRelation()
Description copied from interface:Resource
Retrieve the inserted content relation if this is an LDP Indirect container.- Specified by:
getInsertedContentRelation
in interfaceResource
- Returns:
- the inserted content relation
-
getBinaryMetadata
public Optional<BinaryMetadata> getBinaryMetadata()
Description copied from interface:Resource
Retrieve a BinaryMetadata for this resouce, if it is a LDP-NR.- Specified by:
getBinaryMetadata
in interfaceResource
- Returns:
- the binary metadata
-
getModified
public Instant getModified()
Description copied from interface:Resource
Get the last modified date.- Specified by:
getModified
in interfaceResource
- Returns:
- the last-modified date
-
hasMetadata
public boolean hasMetadata(IRI graph)
Description copied from interface:Resource
Test whether this resource has an attached metadata resource.- Specified by:
hasMetadata
in interfaceResource
- Parameters:
graph
- the name of the metadata graph- Returns:
- true if this resource has an attached metadata resource; false otherwise
-
getMetadataGraphNames
public Set<IRI> getMetadataGraphNames()
Description copied from interface:Resource
Retrieve a collection of attached metadata graph names.- Specified by:
getMetadataGraphNames
in interfaceResource
- Returns:
- a set of metadata resource graph names
-
-