X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=api%2Fsrc%2Fmain%2Fyang%2Fservice_path%2Ftransportpce-common-types%402020-01-28.yang;fp=api%2Fsrc%2Fmain%2Fyang%2Fservice_path%2Ftransportpce-common-types%402017-09-07.yang;h=c8879914361758ed0609b6815f72843f708c3ce5;hb=4378fca1d31d1f75c0480c752aa711fb885e6135;hp=17ad0a46017fc48266e491ccd75b620a94252e0d;hpb=62fc6625966276207a38955eaf07988f77f6984f;p=transportpce.git diff --git a/api/src/main/yang/service_path/transportpce-common-types@2017-09-07.yang b/api/src/main/yang/service_path/transportpce-common-types@2020-01-28.yang similarity index 67% rename from api/src/main/yang/service_path/transportpce-common-types@2017-09-07.yang rename to api/src/main/yang/service_path/transportpce-common-types@2020-01-28.yang index 17ad0a460..c88799143 100644 --- a/api/src/main/yang/service_path/transportpce-common-types@2017-09-07.yang +++ b/api/src/main/yang/service_path/transportpce-common-types@2020-01-28.yang @@ -10,111 +10,236 @@ module transportpce-common-types { prefix org-openroadm-pm-types; revision-date 2016-10-14; } + import org-openroadm-otn-common-types { + prefix org-openroadm-otn-common-types; + revision-date 2018-11-30; + } + + revision "2020-01-28" { + description "Add necessary parameters to consolidate OTN and address ONAP + MDONS use case, including grouping otn-renderer-input"; + } + revision "2019-12-12" { + description "Add grouping otn-renderer-input"; + } revision "2017-09-07" { description "Initial revision of TransportPCE common-types"; } grouping olm-renderer-input { - leaf service-name { - type string; + leaf service-name { + type string; + } + leaf wave-number { + type uint32; + } + list nodes { + ordered-by user; + key "node-id"; + leaf node-id { + type string; + description "Gloabally unique identifier for the node"; + } + leaf src-tp { + type string; + description "Source termination point "; + mandatory true; + } + leaf dest-tp { + type string; + description "Destination termination point "; + mandatory true; + } + } + description + "Type to be used by OLM and Renderer RPCs"; + list node-interface { + key node-id; + leaf node-id { + type string; } - leaf wave-number { - type uint32; + leaf-list och-interface-id { + type string; } - list nodes { - ordered-by user; - key "node-id"; - leaf node-id { - type string; - description "Gloabally unique identifier - for the node"; - } - leaf src-tp { - type string; - description "Source termination point "; - mandatory true; - } - leaf dest-tp { - type string; - description "Destination termination point "; - mandatory true; - } + leaf-list otu-interface-id { + type string; } - description - "Type to be used by OLM and Renderer RPCs"; + leaf-list odu-interface-id { + type string; + } + leaf-list eth-interface-id { + type string; + } + leaf-list connection-id { + type string; + } + } + } - grouping olm-get-pm-input { + grouping otn-renderer-input { + leaf service-name { + type string; + } + list nodes { + ordered-by user; + key "node-id"; leaf node-id { type string; - description "Gloabally unique identifier - for the node"; - mandatory true; + description "Globally unique identifier for the node"; } - leaf resource-type { - type org-openroadm-resource-types:resource-type-enum; - description "Type of the PM resource"; - mandatory true; + leaf network-tp { + type string; + description "Source termination point "; + } + leaf client-tp { + type string; + description "Destination termination point for end nodes"; + //mandatory true; } - container resource-identifier { - leaf resource-name { - type string; - description "Identifier of particular resource of given type"; - mandatory true; - } - leaf circuit-pack-name { - when "../../resource-type = 'port'"; - type string; - description "In case resource type is port, then particular resource is identified by port-name - (resource-name) and circuit-pack-name (this leaf)."; - mandatory true; + leaf network2-tp { + type string; + description "Destination termination point for intermediate switch"; + } + } + description "Type to be used by OLM and Renderer RPCs for OTN"; + } - } + grouping olm-get-pm-input { + leaf node-id { + type string; + description "Gloabally unique identifier + for the node"; + mandatory true; + } + leaf resource-type { + type org-openroadm-resource-types:resource-type-enum; + description "Type of the PM resource"; + mandatory true; + } + container resource-identifier { + leaf resource-name { + type string; + description "Identifier of particular resource of given type"; + mandatory true; + } + leaf circuit-pack-name { + when "../../resource-type = 'port'"; + type string; + description "In case resource type is port, then particular resource is identified by port-name + (resource-name) and circuit-pack-name (this leaf)."; + mandatory true; + + } + } + leaf granularity { + type org-openroadm-pm-types:pm-granularity; + description "Granularity of PM bin can be + notApplicable,15min,24Hour"; + mandatory true; + } + leaf pm-name-type { + type pm-names-enum; + } + leaf pm-extension { + type string; + } + leaf location { + type location; + } + leaf direction { + type direction; + } + } + + grouping node-interfaces { + list node-interface { + key node-id; + leaf node-id { + type string; } - leaf granularity { - type org-openroadm-pm-types:pm-granularity; - description "Granularity of PM bin can be - notApplicable,15min,24Hour"; - mandatory true; + leaf-list och-interface-id { + type string; } - leaf pm-name-type { - type pm-names-enum; + leaf-list otu-interface-id { + type string; } - leaf pm-extension { + leaf-list odu-interface-id { type string; } - leaf location { - type location; + leaf-list eth-interface-id { + type string; } - leaf direction { - type direction; + leaf-list connection-id { + type string; } + } } - grouping node-interfaces { - list node-interface { - key node-id; - leaf node-id { - type string; - } - leaf-list och-interface-id { - type string; - } - leaf-list otu-interface-id { - type string; - } - leaf-list odu-interface-id { - type string; - } - leaf-list eth-interface-id { - type string; - } - leaf-list connection-id { - type string; - } + grouping otn-constraint { + container otn-constraints { + leaf trib-port-number { + type uint16; + description + "defines a trib-port that must be used at A or Z end"; + } + leaf-list opu-trib-slots { + type uint16; + description + "defines a list of trib-slots that must be used at A or Z end"; + } + leaf-list opucn-trib-slots { + type string; + description + "defines a list of opucn-trib-slots that must be used at A or + Z end"; } - } + container imposed-api { + description "defines constraints on access point identifier to be used by + local device when one end point of the path (service) is located + in a remote domain not handled by the controller. These parameters + are passed to the local controller (transportpce) for interoperability + purposes. + SAPI : The source api (local domain) to be used by A + or Z end as expected by remote controller. + DAPI: defines the destination api (remote domain) to be used by A + or Z end as exposed in the remote domain. Used when the end of the path + is in an external domain, handled by a remote controller. + EXPECTED-SAPI : The api of the remote end of the path (in an external + domain) as expected to be received by A or Z end. + EXPECTED-DAPI : defines the destination api to be used by remote end + as exposed in the local domain. Used when the end of the path is in an + external domain, handled by a remote controller"; + uses api-info; + } + } + } + + grouping api-info { + leaf sapi { + type string; + description + "The source api used by the node"; + } + leaf dapi { + type string; + description + "the destination api of the other end of the path"; + } + leaf expected-sapi { + type string; + description + "The api of the remote end of the path as expected to be received + by the node"; + } + leaf expected-dapi { + type string; + description + "api of the node itself, supposed to be used by remote end as + the destination"; + } + } typedef pm-names-enum { type enumeration { @@ -461,7 +586,6 @@ module transportpce-common-types { } } - typedef location { type enumeration { enum "notApplicable" { @@ -492,5 +616,4 @@ module transportpce-common-types { } } - }