2using System.Threading.Tasks;
25 [Header(8,
"Group ID:", 10)]
27 [ToolTip(9,
"Group ID of the group being referenced.")]
48 return Task.FromResult(
false);
68 await this.FindNodes(Nodes);
83 await this.
LogErrorAsync(
"InvalidReference",
"Group not found.");
87 if (Node is T TypedNode)
95 IEnumerable<INode> Children = await Node.
ChildNodes;
97 if (!(Children is
null))
99 foreach (
INode Child
in Children)
101 if (Child is T TypedChild)
102 Nodes.Add(TypedChild);
104 CheckChildren.
Add(Child);
Base class for all group nodes.
virtual Task LogErrorAsync(string Body)
Logs an error message on the node.
INode Parent
Parent Node, or null if a root node.
Defines the Groups data source. This data source contains a tree structure of groups of nodes
static Task< GroupNode > GetNode(string NodeId)
Gets a node from the Metering Topology
Represents a group of metering nodes.
A reference to a metering group.
override Task< bool > AcceptsChildAsync(INode Child)
If the node accepts a presumptive child, i.e. can receive as a child (if that child accepts the node ...
async Task< T[]> FindNodes< T >()
Finds nodes referenced by the group node.
override Task< bool > AcceptsParentAsync(INode Parent)
If the node accepts a presumptive parent, i.e. can be added to that parent (if that parent accepts th...
override Task< string > GetTypeNameAsync(Language Language)
Gets the type name of the node.
string ReferenceNodeId
ID of node.
MeteringGroupReference()
A reference to a metering group.
A chunked list is a linked list of chunks of objects of type T .
bool HasFirstItem
If there is a first item in the collection
T RemoveFirst()
Removes the first item in the collection.
void Add(T Item)
Adds an item to the collection.
T[] ToArray()
Returns an array containing all elements of the collection.
Contains information about a language.
Task< string > GetStringAsync(Type Type, int Id, string Default)
Gets the string value of a string ID. If no such string exists, a string is created with the default ...
Base Interface for all metering nodes.
Interface for nodes that are published through the concentrator interface.
Task< IEnumerable< INode > > ChildNodes
Child nodes. If no child nodes are available, null is returned.