+++ /dev/null
-module ${module-name}-${module-implementation-name} {
-
- yang-version 1;
- namespace "urn:opendaylight:params:xml:ns:yang:controller:config:${module-name}:${module-implementation-name}";
- prefix "${module-name}-${module-implementation-name}";
-
- import config { prefix config; revision-date ${config-api-yang-revision}; }
- import ${module-name} { prefix ${module-name}; revision-date ${revision}; }
-
- description
- "This module contains the base YANG definitions for
- ${module-name} ${module-implementation-name} implementation.";
-
- revision "${revision}" {
- description
- "Initial revision.";
- }
-
- // This is the definition of a service implementation
- identity ${module-name}-${module-implementation-name} {
- base config:module-type;
- config:provided-service ${module-name}:${module-name};
- config:java-name-prefix ${module-name-java-prefix};
- }
-
- augment "/config:modules/config:module/config:configuration" {
- case ${module-name}-${module-implementation-name} {
- when "/config:modules/config:module/config:type = '${module-name}-${module-implementation-name}'";
-
- leaf simple-attribute {
- type uint32;
- }
-
- container dto-attribute {
- leaf inner-attribute {
- type string;
- }
- }
-
- // Dependency attribute demonstration, the config:required-identity points to a service type
- // In this case it is the same service type as this implementation provides: ${module-name}
- container dependency-attribute {
- uses config:service-ref {
- refine type {
- mandatory false;
- config:required-identity ${module-name}:${module-name};
- }
- }
- }
-
- }
- }
-}
\ No newline at end of file