Click or drag to resize

Graph Class

Graph is the root object of a graph. Most graph api is on this class but useful api also exist on VertexType and EdgeType.
Inheritance Hierarchy

Namespace:  VelocityGraph
Assembly:  VelocityGraph (in VelocityGraph.dll) Version: 11.1.0.0 (11.1)
Syntax
[SerializableAttribute]
public class Graph : OptimizedPersistable, IGraph

The Graph type exposes the following members.

Constructors
  NameDescription
Public methodGraph
Creates a new Graph
Top
Properties
  NameDescription
Public propertyFeatures
Returns the features of the underlying graph.
Public propertyObjectsPerPage
Place this type of of object on its own page
(Overrides OptimizedPersistableObjectsPerPage.)
Public propertyVertexIdSetPerType
true if using a vertex id set per type. Decided by constructor parameter when creating a Graph
Top
Methods
  NameDescription
Public methodAddEdge
Add an edge to the graph. The added edges requires a recommended identifier, a tail vertex, an head vertex, and a label. Like adding a vertex, the provided object identifier may be ignored by the implementation.
Public methodAddVertex
Create a new vertex (of VertexType "default"), add it to the graph, and return the newly created vertex.
Public methodAddVertex(Object)
Create a new vertex (of VertexType "default"), add it to the graph, and return the newly created vertex.
Public methodClear
Removes all edges and vertices from the graph.
Public methodStatic memberCombineIntersection
Combines to sets of edges by intersection
Public methodContainsVertex
Returns a value indicating whether a Vertex exists for the specified vertex id.
Public methodCountEdges
Returns a count of all edges in this graph
Public methodCountVertices
Get a count of all vertices in this graph
Public methodEdges
Enumerates all the edges of the given type between two given nodes (tail and head).
Public methodExportToGraphJson(Stream)
Write the data in a Graph to a GraphJson JSON OutputStream.
Public methodExportToGraphJson(String)
Write the data in a Graph to a GraphJson JSON OutputStream.
Public methodExportToGraphJson(Stream, GraphJsonSettings)
Write the data in a Graph to a GraphJson JSON OutputStream.
Public methodExportToGraphJson(String, GraphJsonSettings)
Write the data in a Graph to a GraphJson JSON OutputStream.
Public methodExportToGraphSon(Stream, IEnumerableString, IEnumerableString, GraphSonMode)
Write the data in a Graph to a GraphSon JSON OutputStream.
Public methodExportToGraphSon(String, IEnumerableString, IEnumerableString, GraphSonMode)
Write the data in a Graph to a GraphSon JSON OutputStream.
Public methodFindEdgeType
Finds the type id associated with a particular edge type. Lookup by name.
Public methodFindEdgeTypes
Get an array of all edge types in this graph
Public methodFindVertex
Finds vertex having the given value for the given property.
Public methodFindVertexProperty
Finds a PropertyType of VertexType.
Public methodFindVertexType
Finds the type id associated with a particular vertexe type. Lookup by name.
Public methodFindVertexTypes
Get an array of all vertex types in this graph
Public methodGetEdge
Return the edge referenced by the provided object identifier. If no edge is referenced by that identifier, then return null.
Public methodGetEdges
Return an iterable to all the edges in the graph.
Public methodGetEdges(String, Object)
Return an iterable to all the edges in the graph that have a particular key/value property.
Public methodGetEdgesT(String, T)
Return an iterable to all the edges in the graph that have a particular key/value property.
Public methodGetEdgeType
Get a EdgeType associated with an Edge id
Public methodGetValues
Enumerates all the values for the given vertex/edge property
Public methodGetVertex(Int32)
Look up a Vertex
Public methodGetVertex(Object)
Return the vertex referenced by the provided object identifier. If no vertex is referenced by that identifier, then return null.
Public methodGetVertexType
Given a Vertex id, returns the corresponding Vertex.
Public methodGetVertices
Return an iterable to all the vertices in the graph.
Public methodGetVertices(String, Object)
Return an iterable to all the vertices in the graph that have a particular key/value property.
Public methodImportGraphJson(String)
Input the GraphJson JSON stream data into the graph. In practice, usually the provided graph is empty.
Public methodImportGraphJson(Stream, Int32)
Input the GrapJson JSON stream data into the graph. In practice, usually the provided graph is empty.
Public methodImportGraphSon(String)
Input the GraphSon JSON stream data into the graph. In practice, usually the provided graph is empty.
Public methodImportGraphSon(Stream, Int32)
Input the GraphSon JSON stream data into the graph. In practice, usually the provided graph is empty.
Public methodNewEdge(EdgeType, Vertex, Vertex)
Creates a new edge instance.
Public methodNewEdge(EdgeType, PropertyType, Object, PropertyType, Object)
Creates a new edge instance. The tail of the edge will be any node having the given tailV Value for the given tailAttr Property identifier, and the head of the edge will be any node having the given headV Value for the given headAttr Property identifier.
Public methodNewEdgeProperty
Creates a new Property.
Public methodNewEdgeType(String, Boolean, EdgeType)
Creates a new edge type.
Public methodNewEdgeType(String, Boolean, VertexType, VertexType, EdgeType)
Creates a new edge type.
Public methodNewVertex
Creates a new node instance.
Public methodNewVertexProperty
Creates a new Property.
Public methodNewVertexType
Creates a new node type.
Public methodStatic memberOpen
Opens a graph
Public methodPersist
Persists this object. Override in your subclasses when you want fields of your class to be persisted in some special way.
(Overrides OptimizedPersistablePersist(Placement, SessionBase, Boolean, Boolean, QueueIOptimizedPersistable).)
Public methodQuery
Generate a query object that can be used to fine tune which edges/vertices are retrieved from the graph.
Public methodRemoveEdge
Remove the provided edge from the graph.
Public methodRemovePropertyType
Removes a property type except if any vertex or edge is using it
Public methodRemoveVertex
Remove the provided vertex from the graph. Upon removing the vertex, all the edges by which the vertex is connected must be removed as well.
Public methodRemoveVertexType
Removes a VertexType from this graph. An exception is thrown if the VertexType is in use.
Public methodSelect(PropertyType, FuncIComparable, IComparable, Boolean, IComparable)
Enumerates all elements satisfying the given condition for the given property and value
Public methodSelect(PropertyType, FuncIComparable, IComparable, IComparable, Boolean, IComparable, IComparable)
numerates all elements satisfying the given condition for the given property and value range
Public methodShutdown
A shutdown function is required to properly close the graph. This is important for implementations that utilize disk-based serializations.
Public methodToString
Displays class name plus object id
(Overrides OptimizedPersistableToString.)
Public methodTraverse
Selects all neighbor Vertices from or to each of the node OID in the given collection and for the given edge type.
Public methodUnpersist
Removes an object from the persistent store and makes the object a transient object. It does not automatically make referenced objects unpersisted. Best way to do so is to override this virtual function in your own classes.
(Overrides OptimizedPersistableUnpersist(SessionBase).)
Top
Extension Methods
  NameDescription
Public Extension MethodAddEdge
Add an edge to the graph with specified id and provided properties.
(Defined by GraphHelpers.)
Public Extension MethodAddVertex
Add a vertex to the graph with specified id and provided properties.
(Defined by GraphHelpers.)
Public Extension MethodCopyGraph
Copy the vertex/edges of one graph over to another graph. The id of the elements in the from graph are attempted to be used in the to graph. This method only works for graphs where the user can control the element ids.
(Defined by GraphHelpers.)
Public Extension MethodCreateTinkerGraph (Defined by GraphHelpers.)
Public Extension MethodGraphString (Defined by StringFactory.)
Public Extension MethodLoadGml (Defined by GraphHelpers.)
Public Extension MethodLoadGraphml (Defined by GraphHelpers.)
Public Extension MethodLoadGraphson (Defined by GraphHelpers.)
Public Extension MethodReIndexElementsT
For those graphs that do no support automatic reindexing of elements when a key is provided for indexing, this method can be used to simulate that behavior. The elements in the graph are iterated and their properties (for the provided keys) are removed and then added. Be sure that the key indices have been created prior to calling this method so that they can pick up the property mutations calls. Finally, if the graph is a TransactionalGraph, then a 1000 mutation buffer is used for each commit.
(Defined by KeyIndexableGraphHelpers.)
Public Extension MethodSaveDotNet (Defined by GraphHelpers.)
Public Extension MethodSaveGml (Defined by GraphHelpers.)
Public Extension MethodSaveGraphml (Defined by GraphHelpers.)
Public Extension MethodSaveGraphson (Defined by GraphHelpers.)
Public Extension MethodToStringDetails(SessionBase, Boolean)Overloaded.
Object details as a string
(Defined by Utilities.)
Public Extension MethodToStringDetails(Schema, TypeVersion, Boolean)Overloaded.
Currently only used by Database Manager
(Defined by Utilities.)
Top
See Also