+++ /dev/null
-module transportpce-pce {
- namespace "http://org/opendaylight/transportpce/pce";
- prefix "org-opendaylight-transportpce-pce";
-
- import ietf-yang-types {
- prefix yang;
- }
- import transportpce-routing-constraints {
- prefix transportpce-routing-constraints;
- revision-date 2017-10-17;
- }
- import org-openroadm-common-service-types {
- prefix org-openroadm-common-service-types;
- }
- import transportpce-common-service-path-types {
- prefix transportpce-common-service-path-types;
- }
- import transportpce-pathDescription {
- prefix transportpce-pathDescription;
- revision-date 2017-10-17;
- }
- import gnpy-path-computation-simplified {
- prefix "gnpypc";
- revision-date 2019-05-02;
- }
-
- organization
- "transportPCE";
- contact
- "transportPCE committers - ODL";
- description
- "YANG definitions of B interface (transportPCE). Adapted from service definition (openroadm)
- Copyright © 2017 Orange, Inc. and others. All rights reserved.
-
- openroadm copyright:
- Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
- AT&T Intellectual Property. All other rights reserved.
-
- Redistribution and use in source and binary forms, with or without modification,
- are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation and/or
- other materials provided with the distribution.
- * Neither the Members of the Open ROADM MSA Agreement nor the names of its
- contributors may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
- OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE";
-
- revision 2017-04-26 {
- description
- "Version 1.5";
- }
-
- revision 2017-10-17 {
- description
- "Version 1.6";
- }
-
- revision 2019-06-24 {
- description
- "Version 1.6.1";
- }
-
- rpc path-computation-request {
- input {
- leaf service-name {
- type string;
- description
- "Identifier for the service to be created in
- the ROADM network, e.g., CLFI, CLCI, etc. This is reported against the service, but may not get reflected in the service in the network.";
- mandatory true;
- }
- leaf resource-reserve {
- type boolean;
- description
- "indicates if resources (from local PCE topology) must be reserved until further notice (cancel-resource-reserve or topology update)";
- mandatory true;
- }
- uses transportpce-common-service-path-types:service-handler-header;
- container service-a-end {
- uses transportpce-common-service-path-types:service-endpoint-sp;
- }
- container service-z-end {
- uses transportpce-common-service-path-types:service-endpoint-sp;
- }
- uses transportpce-routing-constraints:routing-constraints-sp;
- }
- output {
- uses org-openroadm-common-service-types:configuration-response-common;
- uses transportpce-common-service-path-types:response-parameters-sp;
- uses gnpy;
- }
- }
-
- rpc cancel-resource-reserve {
- input {
- leaf service-name {
- type string;
- mandatory true;
- }
- uses transportpce-common-service-path-types:service-handler-header;
- }
- output {
- uses org-openroadm-common-service-types:configuration-response-common;
- }
- }
-
-notification service-path-rpc-result {
- description
- "This Notification indicates result of service RPC";
- leaf notification-type {
- type transportpce-common-service-path-types:service-path-notification-types;
- }
- container path-description {
- uses transportpce-pathDescription:path-description;
- }
- uses transportpce-common-service-path-types:rpc-response-status-ex;
- uses org-openroadm-common-service-types:service-notification-result;
- }
-
- grouping stubpce-path-description {
- leaf path-name {
- type string;
- description
- "Identifier for the pathDescription to be created in
- the ROADM network, e.g., CLFI, CLCI, etc.";
- mandatory true;
- }
- uses transportpce-pathDescription:path-description;
- }
-
- container path-description-list {
- description
- "List of pathDescription. Can only be created, deleted, modified, etc. using special RPCs.";
- list pathDescriptions {
- key "path-name";
- uses stubpce-path-description;
- }
- }
-
- grouping gnpy {
- list gnpy-response {
- key path-dir;
- config false;
- description "GNPy response";
- leaf path-dir{
- type string;
- description "A-to-Z or Z-to-A";
- }
- leaf feasibility {
- type boolean;
- description
- "true : feasible path / False : non-feasible.";
- }
- choice response-type {
- config false;
- description "response-type";
- case no-path-case {
- uses gnpypc:no-path-info;
- }
- case path-case {
- uses path-performance;
- description "Path computation service.";
- }
- }
- }
- }
-
- grouping path-performance {
- description "TE generic path properties grouping";
- container path-properties {
- config false;
- description "The TE path properties";
- list path-metric {
- key metric-type;
- description "TE path metric type";
- leaf metric-type {
- type identityref {
- base gnpypc:path-metric-type;
- }
- }
- leaf accumulative-value {
- type decimal64 {
- fraction-digits 2;
- }
- }
- }
- }
- }
-}