Package org.aksw.commons.jena.jgrapht
Class PseudoGraphJenaGraph
java.lang.Object
org.aksw.commons.jena.jgrapht.PseudoGraphJenaGraph
- All Implemented Interfaces:
org.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
public class PseudoGraphJenaGraph
extends Object
implements org.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
Wrapper for exposing a Jena graph as a JGraphT directed pseudo graph.
Note: All graph lookups are done via a .find() method that does additional filtering for supporting
variables as vertices.
- Author:
- raven
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.apache.jena.graph.NodePredicate to which to confine the underlying Jena graph.protected EdgeFactoryJenaGraphprotected org.apache.jena.graph.Graphprotected org.jgrapht.GraphTypeprotected org.jgrapht.graph.IntrusiveEdgesSpecifics<org.apache.jena.graph.Node,org.apache.jena.graph.Triple> Fields inherited from interface org.jgrapht.Graph
DEFAULT_EDGE_WEIGHT -
Constructor Summary
ConstructorsConstructorDescriptionPseudoGraphJenaGraph(org.apache.jena.graph.Graph graph) PseudoGraphJenaGraph(org.apache.jena.graph.Graph graph, org.apache.jena.graph.Node confinementPredicate) PseudoGraphJenaGraph(org.apache.jena.graph.Graph graph, org.jgrapht.GraphType graphType) PseudoGraphJenaGraph(org.apache.jena.graph.Graph graph, org.jgrapht.GraphType graphType, org.apache.jena.graph.Node confinementPredicate) PseudoGraphJenaGraph(org.apache.jena.graph.Graph graph, org.jgrapht.GraphType graphType, org.apache.jena.graph.Node confinementPredicate, org.apache.jena.graph.Node insertPredicate) Setting insert predicate to null prevents inserts -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.jena.graph.TripleaddEdge(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) booleanaddEdge(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex, org.apache.jena.graph.Triple e) org.apache.jena.graph.NodebooleanaddVertex(org.apache.jena.graph.Node v) booleancontainsEdge(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) booleancontainsEdge(org.apache.jena.graph.Triple e) booleancontainsVertex(org.apache.jena.graph.Node v) intdegreeOf(org.apache.jena.graph.Node vertex) Set<org.apache.jena.graph.Triple>edgeSet()Set<org.apache.jena.graph.Triple>edgesOf(org.apache.jena.graph.Node vertex) booleanorg.apache.jena.util.iterator.ExtendedIterator<org.apache.jena.graph.Triple>find(org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o) A delegate to graph.find - single point for adding any custom find semantics should it become necessarySet<org.apache.jena.graph.Triple>getAllEdges(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) org.apache.jena.graph.TriplegetEdge(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) org.apache.jena.graph.NodegetEdgeSource(org.apache.jena.graph.Triple e) Supplier<org.apache.jena.graph.Triple>org.apache.jena.graph.NodegetEdgeTarget(org.apache.jena.graph.Triple e) doublegetEdgeWeight(org.apache.jena.graph.Triple e) FIXME: We could delegate requests to edge weights to a lambda which e.g.org.jgrapht.GraphTypegetType()Supplier<org.apache.jena.graph.Node>inthashCode()Set<org.apache.jena.graph.Triple>incomingEdgesOf(org.apache.jena.graph.Node vertex) intinDegreeOf(org.apache.jena.graph.Node vertex) intoutDegreeOf(org.apache.jena.graph.Node vertex) Set<org.apache.jena.graph.Triple>outgoingEdgesOf(org.apache.jena.graph.Node vertex) booleanremoveAllEdges(Collection<? extends org.apache.jena.graph.Triple> edges) Set<org.apache.jena.graph.Triple>removeAllEdges(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) booleanremoveAllVertices(Collection<? extends org.apache.jena.graph.Node> vertices) org.apache.jena.graph.TripleremoveEdge(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) booleanremoveEdge(org.apache.jena.graph.Triple e) booleanremoveVertex(org.apache.jena.graph.Node v) voidsetEdgeWeight(org.apache.jena.graph.Triple triple, double weight) toString()Set<org.apache.jena.graph.Node>Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.jgrapht.Graph
iterables, setEdgeWeight
-
Field Details
-
graph
protected org.apache.jena.graph.Graph graph -
graphType
protected org.jgrapht.GraphType graphType -
confinementPredicate
protected org.apache.jena.graph.Node confinementPredicatePredicate to which to confine the underlying Jena graph. May be Node.ANY to use all triples regardless to their predicate. -
edgeSupplier
-
intrusiveEdgesSpecifics
protected org.jgrapht.graph.IntrusiveEdgesSpecifics<org.apache.jena.graph.Node,org.apache.jena.graph.Triple> intrusiveEdgesSpecifics
-
-
Constructor Details
-
PseudoGraphJenaGraph
public PseudoGraphJenaGraph(org.apache.jena.graph.Graph graph) -
PseudoGraphJenaGraph
public PseudoGraphJenaGraph(org.apache.jena.graph.Graph graph, org.jgrapht.GraphType graphType) -
PseudoGraphJenaGraph
public PseudoGraphJenaGraph(org.apache.jena.graph.Graph graph, org.apache.jena.graph.Node confinementPredicate) -
PseudoGraphJenaGraph
public PseudoGraphJenaGraph(org.apache.jena.graph.Graph graph, org.jgrapht.GraphType graphType, org.apache.jena.graph.Node confinementPredicate) -
PseudoGraphJenaGraph
public PseudoGraphJenaGraph(org.apache.jena.graph.Graph graph, org.jgrapht.GraphType graphType, org.apache.jena.graph.Node confinementPredicate, org.apache.jena.graph.Node insertPredicate) Setting insert predicate to null prevents inserts- Parameters:
graph-graphType-confinementPredicate-insertPredicate-
-
-
Method Details
-
getAllEdges
public Set<org.apache.jena.graph.Triple> getAllEdges(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) - Specified by:
getAllEdgesin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
getEdge
public org.apache.jena.graph.Triple getEdge(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) - Specified by:
getEdgein interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
getEdgeSupplier
- Specified by:
getEdgeSupplierin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
addEdge
public org.apache.jena.graph.Triple addEdge(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) - Specified by:
addEdgein interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
addEdge
public boolean addEdge(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex, org.apache.jena.graph.Triple e) - Specified by:
addEdgein interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
addVertex
public boolean addVertex(org.apache.jena.graph.Node v) - Specified by:
addVertexin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
containsEdge
public boolean containsEdge(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) - Specified by:
containsEdgein interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
containsEdge
public boolean containsEdge(org.apache.jena.graph.Triple e) - Specified by:
containsEdgein interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
containsVertex
public boolean containsVertex(org.apache.jena.graph.Node v) - Specified by:
containsVertexin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
edgeSet
- Specified by:
edgeSetin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
degreeOf
public int degreeOf(org.apache.jena.graph.Node vertex) - Specified by:
degreeOfin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
edgesOf
- Specified by:
edgesOfin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
removeAllEdges
- Specified by:
removeAllEdgesin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
removeAllEdges
public Set<org.apache.jena.graph.Triple> removeAllEdges(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) - Specified by:
removeAllEdgesin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
removeAllVertices
- Specified by:
removeAllVerticesin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
removeEdge
public org.apache.jena.graph.Triple removeEdge(org.apache.jena.graph.Node sourceVertex, org.apache.jena.graph.Node targetVertex) - Specified by:
removeEdgein interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
removeEdge
public boolean removeEdge(org.apache.jena.graph.Triple e) - Specified by:
removeEdgein interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
removeVertex
public boolean removeVertex(org.apache.jena.graph.Node v) - Specified by:
removeVertexin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
vertexSet
- Specified by:
vertexSetin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
getEdgeSource
public org.apache.jena.graph.Node getEdgeSource(org.apache.jena.graph.Triple e) - Specified by:
getEdgeSourcein interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
getEdgeTarget
public org.apache.jena.graph.Node getEdgeTarget(org.apache.jena.graph.Triple e) - Specified by:
getEdgeTargetin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
getType
public org.jgrapht.GraphType getType()- Specified by:
getTypein interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
getEdgeWeight
public double getEdgeWeight(org.apache.jena.graph.Triple e) FIXME: We could delegate requests to edge weights to a lambda which e.g. gets this value from the RDF- Specified by:
getEdgeWeightin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
setEdgeWeight
public void setEdgeWeight(org.apache.jena.graph.Triple triple, double weight) - Specified by:
setEdgeWeightin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
inDegreeOf
public int inDegreeOf(org.apache.jena.graph.Node vertex) - Specified by:
inDegreeOfin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
incomingEdgesOf
- Specified by:
incomingEdgesOfin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
outDegreeOf
public int outDegreeOf(org.apache.jena.graph.Node vertex) - Specified by:
outDegreeOfin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
outgoingEdgesOf
- Specified by:
outgoingEdgesOfin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
find
public org.apache.jena.util.iterator.ExtendedIterator<org.apache.jena.graph.Triple> find(org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o) A delegate to graph.find - single point for adding any custom find semantics should it become necessary- Parameters:
graph-s-p-o-- Returns:
-
toString
-
hashCode
public int hashCode() -
equals
-
getVertexSupplier
- Specified by:
getVertexSupplierin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-
addVertex
public org.apache.jena.graph.Node addVertex()- Specified by:
addVertexin interfaceorg.jgrapht.Graph<org.apache.jena.graph.Node,org.apache.jena.graph.Triple>
-