java.lang.Object
org.jgrapht.nio.BaseExporter<V,E>
org.jgrapht.nio.json.JSONExporter<V,E>
- Type Parameters:
V
- the graph vertex typeE
- the graph edge type
- All Implemented Interfaces:
GraphExporter<V,
E>
Exports a graph using JSON.
The output is one object which contains:
- A member named
nodes
whose value is an array of nodes. - A member named
edges
whose value is an array of edges. - Two members named
creator
andversion
for metadata.
Each node contains an identifier and possibly other attributes. Similarly each edge contains the
source and target vertices, a possible identifier and possible other attributes. All these can be
adjusted using the setters. The default constructor constructs integer identifiers using an
IntegerIdProvider
for both vertices and edges and does not output any custom attributes.
- Author:
- Dimitrios Michail
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Default name for the edges collectionstatic final String
Default name for the vertices collectionFields inherited from class org.jgrapht.nio.BaseExporter
edgeAttributeProvider, edgeIdProvider, graphAttributeProvider, graphIdProvider, vertexAttributeProvider, vertexIdProvider
-
Constructor Summary
ConstructorDescriptionCreates a new exporter with integers for the vertex identifiers.JSONExporter
(Function<V, String> vertexIdProvider) Creates a new exporter. -
Method Summary
Modifier and TypeMethodDescriptionvoid
exportGraph
(Graph<V, E> g, Writer writer) Export a graph using the givenWriter
.Get the name used for the edges collection in the file.Get the name used for the vertices collection in the file.void
setEdgesCollectionName
(String edgesCollectionName) Set the name used for the edges collection in the file.void
setVerticesCollectionName
(String verticesCollectionName) Set the name used for the vertices collection in the file.Methods inherited from class org.jgrapht.nio.BaseExporter
getEdgeAttribute, getEdgeAttributeProvider, getEdgeAttributes, getEdgeId, getEdgeIdProvider, getGraphAttribute, getGraphAttributeProvider, getGraphId, getGraphIdProvider, getVertexAttribute, getVertexAttributeProvider, getVertexAttributes, getVertexId, getVertexIdProvider, setEdgeAttributeProvider, setEdgeIdProvider, setGraphAttributeProvider, setGraphIdProvider, setVertexAttributeProvider, setVertexIdProvider
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.jgrapht.nio.GraphExporter
exportGraph, exportGraph
-
Field Details
-
DEFAULT_VERTICES_COLLECTION_NAME
Default name for the vertices collection- See Also:
-
DEFAULT_EDGES_COLLECTION_NAME
Default name for the edges collection- See Also:
-
-
Constructor Details
-
JSONExporter
public JSONExporter()Creates a new exporter with integers for the vertex identifiers. -
JSONExporter
Creates a new exporter.- Parameters:
vertexIdProvider
- for generating vertex identifiers. Must not be null.
-
-
Method Details
-
getVerticesCollectionName
Get the name used for the vertices collection in the file.- Returns:
- the name used for the vertices collection in the file.
-
setVerticesCollectionName
Set the name used for the vertices collection in the file.- Parameters:
verticesCollectionName
- the name
-
getEdgesCollectionName
Get the name used for the edges collection in the file.- Returns:
- the name used for the edges collection in the file.
-
setEdgesCollectionName
Set the name used for the edges collection in the file.- Parameters:
edgesCollectionName
- the name
-
exportGraph
Description copied from interface:GraphExporter
Export a graph using the givenWriter
.It is the callers responsibility to ensure the
Writer
is closed after this method returned.- Specified by:
exportGraph
in interfaceGraphExporter<V,
E> - Parameters:
g
- the graph to exportwriter
- the output writer
-