Class VirtualNode
Represents an abstract class for nodes.
Implements
Inherited Members
Namespace: AkiraNetwork.VirtualStorageLibrary
Assembly: VirtualStorageLibrary.dll
Syntax
public abstract class VirtualNode : IVirtualDeepCloneable<VirtualNode>
Constructors
VirtualNode(VirtualNodeName)
Initializes a new instance of the VirtualNode class.
Declaration
protected VirtualNode(VirtualNodeName name)
Parameters
Type | Name | Description |
---|---|---|
VirtualNodeName | name | The name of node. |
VirtualNode(VirtualNodeName, DateTime)
Initializes a new instance of the VirtualNode class.
Declaration
protected VirtualNode(VirtualNodeName name, DateTime createdDate)
Parameters
Type | Name | Description |
---|---|---|
VirtualNodeName | name | The name of node. |
DateTime | createdDate | The created date of node. |
VirtualNode(VirtualNodeName, DateTime, DateTime)
Initializes a new instance of the VirtualNode class.
Declaration
protected VirtualNode(VirtualNodeName name, DateTime createdDate, DateTime updatedDate)
Parameters
Type | Name | Description |
---|---|---|
VirtualNodeName | name | The name of node. |
DateTime | createdDate | The created date of node. |
DateTime | updatedDate | The updated date of node. |
Properties
CreatedDate
Gets the created date of the node. This date represents when the node was first created.
Declaration
public DateTime CreatedDate { get; }
Property Value
Type | Description |
---|---|
DateTime |
IsReferencedInStorage
Gets a value indicating whether referenced in storage. If this property is true, the node is referenced from storage. Otherwise, it is not.
Declaration
public bool IsReferencedInStorage { get; }
Property Value
Type | Description |
---|---|
bool |
Name
Gets the name of node.
Declaration
public VirtualNodeName Name { get; }
Property Value
Type | Description |
---|---|
VirtualNodeName |
NodeType
Gets the node type of node.
Declaration
public abstract VirtualNodeType NodeType { get; }
Property Value
Type | Description |
---|---|
VirtualNodeType |
UpdatedDate
Gets the updated date of the node. This date represents the last time the node was modified. It is set to the current date and time at the moment of instantiation or cloning.
Declaration
public DateTime UpdatedDate { get; }
Property Value
Type | Description |
---|---|
DateTime |
VID
Gets the VID of node.
Declaration
public VirtualID VID { get; }
Property Value
Type | Description |
---|---|
VirtualID |
Methods
DeepClone(bool)
Creates a deep clone of the entity. However, the CreatedDate and UpdatedDate should not be cloned as they are set to the current date and time at the time of cloning.
Declaration
public abstract VirtualNode DeepClone(bool recursive = false)
Parameters
Type | Name | Description |
---|---|---|
bool | recursive | When true, all child nodes are also cloned, creating a deep copy of the entire tree. The default is false. The CreatedDate and UpdatedDate properties are not preserved. They are set to the current date and time at the moment of instantiation or cloning. |
Returns
Type | Description |
---|---|
VirtualNode | Cloned VirtualNode instance |
Update(VirtualNode)
Updates the VirtualNode.
Declaration
public abstract void Update(VirtualNode node)
Parameters
Type | Name | Description |
---|---|---|
VirtualNode | node | Value to update |