Class ThreadSafeGraph
A Thread Safe version of the Graph class.
Implements
System.IDisposable
System.Xml.Serialization.IXmlSerializable
System.Runtime.Serialization.ISerializable
Inherited Members
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: VDS.RDF
Assembly: dotNetRDF.dll
Syntax
public class ThreadSafeGraph : Graph, IGraph, INodeFactory, IDisposable, IXmlSerializable, ISerializable
Remarks
Performance will be marginally worse than a normal Graph but in multi-threaded scenarios this will likely be offset by the benefits of multi-threading.
Constructors
| Improve this Doc View SourceThreadSafeGraph()
Creates a new Thread Safe Graph.
Declaration
public ThreadSafeGraph()
ThreadSafeGraph(BaseTripleCollection)
Creates a new Thread Safe graph using the given Triple Collection.
Declaration
public ThreadSafeGraph(BaseTripleCollection tripleCollection)
Parameters
Type | Name | Description |
---|---|---|
BaseTripleCollection | tripleCollection | Triple Collection. |
ThreadSafeGraph(ThreadSafeTripleCollection)
Creates a new Thread Safe graph using a Thread Safe triple collection.
Declaration
public ThreadSafeGraph(ThreadSafeTripleCollection tripleCollection)
Parameters
Type | Name | Description |
---|---|---|
ThreadSafeTripleCollection | tripleCollection | Thread Safe triple collection. |
Fields
| Improve this Doc View Source_lockManager
Locking Manager for the Graph.
Declaration
protected ReaderWriterLockSlim _lockManager
Field Value
Type | Description |
---|---|
System.Threading.ReaderWriterLockSlim |
Methods
| Improve this Doc View SourceAssert(IEnumerable<Triple>)
Asserts a List of Triples in the graph.
Declaration
public override bool Assert(IEnumerable<Triple> ts)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<Triple> | ts | List of Triples in the form of an IEnumerable. |
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
| Improve this Doc View SourceAssert(Triple)
Asserts a Triple in the Graph.
Declaration
public override bool Assert(Triple t)
Parameters
Type | Name | Description |
---|---|---|
Triple | t | The Triple to add to the Graph. |
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
| Improve this Doc View SourceDispose()
Disposes of a Graph.
Declaration
public override void Dispose()
Overrides
| Improve this Doc View SourceGetBlankNode(String)
Returns the Blank Node with the given Identifier.
Declaration
public override IBlankNode GetBlankNode(string nodeId)
Parameters
Type | Name | Description |
---|---|---|
System.String | nodeId | The Identifier of the Blank Node to select. |
Returns
Type | Description |
---|---|
IBlankNode | Either the Blank Node or null if no Node with the given Identifier exists. |
Overrides
| Improve this Doc View SourceGetLiteralNode(String)
Returns the LiteralNode with the given Value if it exists.
Declaration
public override ILiteralNode GetLiteralNode(string literal)
Parameters
Type | Name | Description |
---|---|---|
System.String | literal | The literal value of the Node to select. |
Returns
Type | Description |
---|---|
ILiteralNode | Either the LiteralNode Or null if no Node with the given Value exists. |
Overrides
Remarks
The LiteralNode in the Graph must have no Language or DataType set.
|
Improve this Doc
View Source
GetLiteralNode(String, String)
Returns the LiteralNode with the given Value in the given Language if it exists.
Declaration
public override ILiteralNode GetLiteralNode(string literal, string langspec)
Parameters
Type | Name | Description |
---|---|---|
System.String | literal | The literal value of the Node to select. |
System.String | langspec | The Language Specifier for the Node to select. |
Returns
Type | Description |
---|---|
ILiteralNode | Either the LiteralNode Or null if no Node with the given Value and Language Specifier exists. |
Overrides
| Improve this Doc View SourceGetLiteralNode(String, Uri)
Returns the LiteralNode with the given Value and given Data Type if it exists.
Declaration
public override ILiteralNode GetLiteralNode(string literal, Uri datatype)
Parameters
Type | Name | Description |
---|---|---|
System.String | literal | The literal value of the Node to select. |
System.Uri | datatype | The Uri for the Data Type of the Literal to select. |
Returns
Type | Description |
---|---|
ILiteralNode | Either the LiteralNode Or null if no Node with the given Value and Data Type exists. |
Overrides
| Improve this Doc View SourceGetNextBlankNodeID()
Creates a new Blank Node ID and returns it.
Declaration
public override string GetNextBlankNodeID()
Returns
Type | Description |
---|---|
System.String |
Overrides
| Improve this Doc View SourceGetTriples(Uri)
Gets all the Triples involving the given Uri.
Declaration
public override IEnumerable<Triple> GetTriples(Uri uri)
Parameters
Type | Name | Description |
---|---|---|
System.Uri | uri | The Uri to find Triples involving. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<Triple> | Zero/More Triples. |
Overrides
| Improve this Doc View SourceGetTriples(INode)
Gets all the Triples involving the given Node.
Declaration
public override IEnumerable<Triple> GetTriples(INode n)
Parameters
Type | Name | Description |
---|---|---|
INode | n | The Node to find Triples involving. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<Triple> | Zero/More Triples. |
Overrides
| Improve this Doc View SourceGetTriplesWithObject(Uri)
Gets all the Triples with the given Uri as the Object.
Declaration
public override IEnumerable<Triple> GetTriplesWithObject(Uri u)
Parameters
Type | Name | Description |
---|---|---|
System.Uri | u | The Uri to find Triples with it as the Object. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<Triple> | Zero/More Triples. |
Overrides
| Improve this Doc View SourceGetTriplesWithObject(INode)
Gets all the Triples with the given Node as the Object.
Declaration
public override IEnumerable<Triple> GetTriplesWithObject(INode n)
Parameters
Type | Name | Description |
---|---|---|
INode | n | The Node to find Triples with it as the Object. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<Triple> |
Overrides
| Improve this Doc View SourceGetTriplesWithPredicate(Uri)
Gets all the Triples with the given Uri as the Predicate.
Declaration
public override IEnumerable<Triple> GetTriplesWithPredicate(Uri u)
Parameters
Type | Name | Description |
---|---|---|
System.Uri | u | The Uri to find Triples with it as the Predicate. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<Triple> | Zero/More Triples. |
Overrides
| Improve this Doc View SourceGetTriplesWithPredicate(INode)
Gets all the Triples with the given Node as the Predicate.
Declaration
public override IEnumerable<Triple> GetTriplesWithPredicate(INode n)
Parameters
Type | Name | Description |
---|---|---|
INode | n | The Node to find Triples with it as the Predicate. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<Triple> |
Overrides
| Improve this Doc View SourceGetTriplesWithSubject(Uri)
Gets all the Triples with the given Uri as the Subject.
Declaration
public override IEnumerable<Triple> GetTriplesWithSubject(Uri u)
Parameters
Type | Name | Description |
---|---|---|
System.Uri | u | The Uri to find Triples with it as the Subject. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<Triple> | Zero/More Triples. |
Overrides
| Improve this Doc View SourceGetTriplesWithSubject(INode)
Gets all the Triples with the given Node as the Subject.
Declaration
public override IEnumerable<Triple> GetTriplesWithSubject(INode n)
Parameters
Type | Name | Description |
---|---|---|
INode | n | The Node to find Triples with it as the Subject. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<Triple> | Zero/More Triples. |
Overrides
| Improve this Doc View SourceGetUriNode(String)
Returns the UriNode with the given QName if it exists.
Declaration
public override IUriNode GetUriNode(string qname)
Parameters
Type | Name | Description |
---|---|---|
System.String | qname | The QName of the Node to select. |
Returns
Type | Description |
---|---|
IUriNode |
Overrides
| Improve this Doc View SourceGetUriNode(Uri)
Returns the UriNode with the given Uri if it exists.
Declaration
public override IUriNode GetUriNode(Uri uri)
Parameters
Type | Name | Description |
---|---|---|
System.Uri | uri | The Uri of the Node to select. |
Returns
Type | Description |
---|---|
IUriNode | Either the UriNode Or null if no Node with the given Uri exists. |
Overrides
| Improve this Doc View SourceRetract(IEnumerable<Triple>)
Retracts a enumeration of Triples from the graph.
Declaration
public override bool Retract(IEnumerable<Triple> ts)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<Triple> | ts | Enumeration of Triples to retract. |
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
| Improve this Doc View SourceRetract(Triple)
Retracts a Triple from the Graph.
Declaration
public override bool Retract(Triple t)
Parameters
Type | Name | Description |
---|---|---|
Triple | t | Triple to Retract. |
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
Remarks
Current implementation may have some defunct Nodes left in the Graph as only the Triple is retracted.
Implements
System.IDisposable
System.Xml.Serialization.IXmlSerializable
System.Runtime.Serialization.ISerializable