V - the graph vertex typepublic class ImmutableGraphAdapter<V> extends BaseGraphAdapter<V,com.google.common.graph.ImmutableGraph<V>> implements Graph<V,com.google.common.graph.EndpointPair<V>>, java.lang.Cloneable, java.io.Serializable
ImmutableGraph.
The adapter uses class EndpointPair to represent edges. Since the underlying graph is
immutable, the resulting graph is unmodifiable.
See the example below on how to create such an adapter:
MutableGraph<String> mutableGraph = GraphBuilder.directed().allowsSelfLoops(true).build();
mutableGraph.addNode("v1");
mutableGraph.addNode("v2");
mutableGraph.addEdge("v1", "v2");
ImmutableGraph<String> immutableGraph = ImmutableGraph.copyOf(mutableGraph);
Graph<String, EndpointPair<String>> graph = new ImmutableGraphAdapter<>(immutableGraph);
| Modifier and Type | Field and Description |
|---|---|
protected static java.lang.String |
GRAPH_IS_IMMUTABLE |
edgeSupplier, graph, LOOPS_NOT_ALLOWED, unmodifiableEdgeSet, unmodifiableVertexSet, vertexOrder, vertexOrderMethod, vertexSupplierDEFAULT_EDGE_WEIGHT| Constructor and Description |
|---|
ImmutableGraphAdapter(com.google.common.graph.ImmutableGraph<V> graph)
Create a new adapter.
|
| Modifier and Type | Method and Description |
|---|---|
com.google.common.graph.EndpointPair<V> |
addEdge(V sourceVertex,
V targetVertex) |
boolean |
addEdge(V sourceVertex,
V targetVertex,
com.google.common.graph.EndpointPair<V> e) |
V |
addVertex() |
boolean |
addVertex(V v) |
java.lang.Object |
clone()
Returns a shallow copy of this graph instance.
|
GraphType |
getType() |
boolean |
removeEdge(com.google.common.graph.EndpointPair<V> e) |
com.google.common.graph.EndpointPair<V> |
removeEdge(V sourceVertex,
V targetVertex) |
boolean |
removeVertex(V v) |
void |
setEdgeWeight(com.google.common.graph.EndpointPair<V> e,
double weight) |
containsEdge, containsVertex, createVertexOrder, degreeOf, edgeSet, edgesOf, getAllEdges, getEdge, getEdgeSource, getEdgeSupplier, getEdgeTarget, getEdgeWeight, getVertexSupplier, incomingEdgesOf, inDegreeOf, outDegreeOf, outgoingEdgesOf, setEdgeSupplier, setVertexSupplier, vertexSetassertVertexExist, containsEdge, equals, hashCode, removeAllEdges, removeAllEdges, removeAllEdges, removeAllVertices, toString, toStringFromSetsfinalize, getClass, notify, notifyAll, wait, wait, waitcontainsEdge, containsEdge, containsVertex, degreeOf, edgeSet, edgesOf, getAllEdges, getEdge, getEdgeSource, getEdgeSupplier, getEdgeTarget, getEdgeWeight, getVertexSupplier, incomingEdgesOf, inDegreeOf, iterables, outDegreeOf, outgoingEdgesOf, removeAllEdges, removeAllEdges, removeAllVertices, setEdgeWeight, vertexSetprotected static final java.lang.String GRAPH_IS_IMMUTABLE
public ImmutableGraphAdapter(com.google.common.graph.ImmutableGraph<V> graph)
graph - the graphpublic boolean addEdge(V sourceVertex, V targetVertex, com.google.common.graph.EndpointPair<V> e)
public V addVertex()
public boolean addVertex(V v)
public com.google.common.graph.EndpointPair<V> removeEdge(V sourceVertex, V targetVertex)
removeEdge in interface Graph<V,com.google.common.graph.EndpointPair<V>>public boolean removeEdge(com.google.common.graph.EndpointPair<V> e)
removeEdge in interface Graph<V,com.google.common.graph.EndpointPair<V>>public boolean removeVertex(V v)
removeVertex in interface Graph<V,com.google.common.graph.EndpointPair<V>>public void setEdgeWeight(com.google.common.graph.EndpointPair<V> e, double weight)
setEdgeWeight in interface Graph<V,com.google.common.graph.EndpointPair<V>>public GraphType getType()
public java.lang.Object clone()
clone in class java.lang.Objectjava.lang.RuntimeException - in case the clone is not supportedObject.clone()Copyright © 2021. All rights reserved.