Change-Id: I526496120b79158df41aec315d67303e4604074b
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Signed-off-by: Robert Varga <rovarga@cisco.com>
module netconf-node-inventory {
namespace "urn:opendaylight:netconf-node-inventory";
prefix "netinv";
module netconf-node-inventory {
namespace "urn:opendaylight:netconf-node-inventory";
prefix "netinv";
import opendaylight-inventory { prefix inv; revision-date "2013-08-19";}
import yang-ext {prefix ext; revision-date "2013-07-09";}
import opendaylight-inventory { prefix inv; revision-date "2013-08-19";}
import yang-ext {prefix ext; revision-date "2013-07-09";}
revision "2014-01-08" {
description "Initial revision of Inventory model";
}
revision "2014-01-08" {
description "Initial revision of Inventory model";
}
grouping netconf-node-fields {
grouping netconf-node-fields {
leaf-list initial-capability {
type string;
}
leaf-list initial-capability {
type string;
}
leaf-list current-capability {
type string;
}
leaf-list current-capability {
type string;
}
augment /inv:nodes/inv:node {
ext:augment-identifier "netconf-node";
augment /inv:nodes/inv:node {
ext:augment-identifier "netconf-node";
uses netconf-node-fields;
}
}
uses netconf-node-fields;
}
}
type enumeration {
enum native;
enum emulated;
type enumeration {
enum native;
enum emulated;
type inet:uri;
description "Identifier for a particular node. For example:
type inet:uri;
description "Identifier for a particular node. For example:
}
typedef node-connector-id {
}
typedef node-connector-id {
type inet:uri;
description "Identifier for a particular node-connector. For example:
type inet:uri;
description "Identifier for a particular node-connector. For example:
//YANG does not have a statement which limits the scope of an instance-identifier to a particular subtree,
//which is why we are using a type capture and not an instance-identifier to define a node-ref and a node-connector-ref.
typedef node-ref {
//YANG does not have a statement which limits the scope of an instance-identifier to a particular subtree,
//which is why we are using a type capture and not an instance-identifier to define a node-ref and a node-connector-ref.
typedef node-ref {
type instance-identifier;
description "A reference that points to an opendaylight-light:nodes/node in the data tree.";
}
typedef node-connector-ref {
type instance-identifier;
description "A reference that points to an opendaylight-light:nodes/node in the data tree.";
}
typedef node-connector-ref {
type instance-identifier;
description "A reference that points to an opendaylight-list:nodes/node/{node-id}/node-connector in the data tree.";
}
identity node-context {
type instance-identifier;
description "A reference that points to an opendaylight-list:nodes/node/{node-id}/node-connector in the data tree.";
}
identity node-context {
description "A node-context is a classifier for node elements which allows an RPC to provide a service on behalf of a particular element in the data tree.";
}
identity node-connector-context {
description "A node-context is a classifier for node elements which allows an RPC to provide a service on behalf of a particular element in the data tree.";
}
identity node-connector-context {
description "A node-connector-context is a classifier for node-connector elements which allows an RPC to provide a service on behalf of a particular element in the data tree.";
}
description "A node-connector-context is a classifier for node-connector elements which allows an RPC to provide a service on behalf of a particular element in the data tree.";
}
//type of node, such as "router-node" or "switch-node" etc.
//See https://wiki.opendaylight.org/view/YANG_Tools:YANG_to_Java_Mapping#Identity for more information.
identity node-type {
//type of node, such as "router-node" or "switch-node" etc.
//See https://wiki.opendaylight.org/view/YANG_Tools:YANG_to_Java_Mapping#Identity for more information.
identity node-type {
description "A base identity definition which represents a generic node type and can be extended in other yang files.";
}
identity node-connector-type {
description "A base identity definition which represents a generic node type and can be extended in other yang files.";
}
identity node-connector-type {
description "A base identity definition which represents a generic node connector type and can be extended in other yang files.";
}
grouping node {
description "A base identity definition which represents a generic node connector type and can be extended in other yang files.";
}
grouping node {
description "Describes the contents of a generic node -
essentially an ID and a list of node-connectors.
Acts as an augmentation point where other yang files
description "Describes the contents of a generic node -
essentially an ID and a list of node-connectors.
Acts as an augmentation point where other yang files
}
grouping node-connector {
}
grouping node-connector {
description "Describes a generic node connector which consists of an ID.
Acts as an augmentation point where other yang files can
add additional information.";
description "Describes a generic node connector which consists of an ID.
Acts as an augmentation point where other yang files can
add additional information.";
}
grouping node-context-ref {
}
grouping node-context-ref {
description
"A helper grouping which contains a reference to a node classified with a node-context. This allows RPCs in other yang files to refine their input to a particular node instance.";
description
"A helper grouping which contains a reference to a node classified with a node-context. This allows RPCs in other yang files to refine their input to a particular node instance.";
/** Base structure **/
container nodes {
/** Base structure **/
container nodes {
description "The root container of all nodes.";
list node {
description "The root container of all nodes.";
list node {
//The following notifications should really be replaced by direct writes to the data tree with data change listeners listening to those changes.
//Notifications should be reserved for one time events which do not require persistence to the data tree.
notification node-updated {
//The following notifications should really be replaced by direct writes to the data tree with data change listeners listening to those changes.
//Notifications should be reserved for one time events which do not require persistence to the data tree.
notification node-updated {
status deprecated;
description "A notification sent by someone who realized there was a modification to a node, but did not modify the data tree.
status deprecated;
description "A notification sent by someone who realized there was a modification to a node, but did not modify the data tree.