Refactor transportpce-routing-constraint model
[transportpce.git] / api / src / main / yang / service_path / transportpce-common-service-path-types@2020-01-28.yang
diff --git a/api/src/main/yang/service_path/transportpce-common-service-path-types@2020-01-28.yang b/api/src/main/yang/service_path/transportpce-common-service-path-types@2020-01-28.yang
deleted file mode 100644 (file)
index 18c1da1..0000000
+++ /dev/null
@@ -1,265 +0,0 @@
-module transportpce-common-service-path-types {
-  namespace "http://org/transportpce/B-C-interface/service/types";
-  prefix transportpce-common-service-path-types;
-
-  import transportpce-routing-constraints {
-    prefix transportpce-routing-constraints;
-  }
-  import transportpce-pathDescription {
-    prefix transportpce-pathDescription;
-  }
-  import org-openroadm-otn-common-types {
-    prefix org-openroadm-otn-common-types;
-  }
-  import org-openroadm-resource-types {
-    prefix org-openroadm-resource-types;
-    revision-date 2018-11-30;
-  }
-  import org-openroadm-common-service-types {
-    prefix org-openroadm-common-service-types;
-  }
-  import org-openroadm-service-format {
-    prefix org-openroadm-service-format;
-    revision-date 2019-05-31;
-  }
-
-  organization
-    "transportPCE";
-  contact
-    "transportPCE committers - ODL";
-  description
-    "YANG definitions of B & C interfaces (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 2020-01-28 {
-    description
-      "Version 1.7";
-    // General consolidation to handle OTN and ONAP MDONS use case
-  }
-  revision 2019-10-09 {
-    description
-      "Version 1.6.1";
-  }
-  revision 2017-10-16 {
-    description
-      "Version 1.6";
-  }
-  revision 2017-04-26 {
-    description
-      "Version 1.5";
-  }
-
-  typedef service-path-notification-types {
-    type enumeration {
-      enum path-computation-request {
-        value 1;
-      }
-      enum cancel-resource-reserve {
-        value 2;
-      }
-      enum service-implementation-request {
-        value 3;
-      }
-      enum service-delete {
-        value 4;
-      }
-    }
-  }
-
-  typedef rpc-status-ex {
-    type enumeration {
-      enum Successful {
-        value 1;
-      }
-      enum Failed {
-        value 2;
-      }
-      enum Pending {
-        value 3;
-      }
-    }
-    description
-      "extended status of RPC ";
-  }
-
-  grouping rpc-response-status-ex {
-    leaf status {
-      type rpc-status-ex;
-      mandatory true;
-      description
-        "Successful, Failed or Pending";
-    }
-    leaf status-message {
-      type string;
-      description
-        "Gives a more detailed reason for failure";
-    }
-  }
-
-  grouping response-parameters-sp {
-    container response-parameters {
-      uses transportpce-routing-constraints:routing-constraints-sp;
-      container path-description {
-        uses transportpce-pathDescription:path-description;
-      }
-    }
-  }
-
-  grouping service-endpoint-sp {
-    leaf service-format {
-      type org-openroadm-service-format:service-format;
-      mandatory true;
-      description
-        "Format of the requested service: Ethernet, OTU, etc.";
-    }
-    leaf service-rate {
-      when "../service-format!='OMS'" {
-        description
-          "service rate not applicable when service format is roadmline";
-      }
-      type uint32;
-      mandatory true;
-      description
-        "Rate of the requested service in GBps";
-    }
-    leaf otu-service-rate {
-      when "../service-format='OTU'" {
-        description
-          "service rate not applicable when service format is OTU";
-      }
-      type identityref {
-        base org-openroadm-otn-common-types:otu-rate-identity;
-      }
-      mandatory false;
-      description
-        "OTU Rate of the requested service";
-    }
-    leaf odu-service-rate {
-      when "../service-format='ODU'" {
-        description
-          "service rate not applicable when service format is ODU";
-      }
-      type identityref {
-        base org-openroadm-otn-common-types:odu-rate-identity;
-      }
-      mandatory false;
-      description
-        "OTU Rate of the requested service";
-    }
-    leaf other-service-format-and-rate {
-      type string;
-      description
-        "This value encodes both the service format and the rate supported.
-         This field should not be specified when service format != other.";
-    }
-    leaf clli {
-      type string;
-      mandatory true;
-      description
-        "CLLI";
-    }
-    leaf node-id {
-      type string;
-    }
-    container tx-direction {
-      leaf logical-connection-point {
-        type string;
-        description
-          "PCE works on topology --> change from port (device) to node-id+logical-connection-point
-           (topology) assuming Portmapping will be used by both the Renderer
-           and the SH to make the conversion from device to topology";
-      }
-      uses org-openroadm-common-service-types:service-port;
-      //     uses service-lgx;
-      //     uses service-tail;
-    }
-    container rx-direction {
-      leaf logical-connection-point {
-        type string;
-        description
-          "PCE works on topology --> change from port (device) to node-id+logical-connection-point
-           (topology) assuming Portmapping will be used by both the Renderer
-           and the SH to make the conversion from device to topology";
-      }
-      uses org-openroadm-common-service-types:service-port;
-      //     uses service-lgx;
-      //     uses service-tail;
-    }
-  }
-
-  grouping service-handler-header {
-    container service-handler-header {
-      leaf request-id {
-        type string;
-        mandatory true;
-      }
-    }
-  }
-
-  grouping service-path {
-    leaf service-path-name {
-      type string;
-      mandatory true;
-      description
-        "Identifier for the service-path to be calculated by the PCE";
-    }
-    uses service-handler-header;
-    container service-a-end {
-      uses service-endpoint-sp;
-    }
-    container service-z-end {
-      uses service-endpoint-sp;
-    }
-    uses transportpce-routing-constraints:routing-constraints-sp;
-    leaf latency {
-      type uint32;
-      description
-        "Latency on service";
-    }
-    leaf-list fiber-span-srlgs {
-      type string;
-      description
-        "Shared risk link group identifiers";
-    }
-    list equipment-srgs {
-      key "srg-number";
-      uses org-openroadm-resource-types:srg-number;
-    }
-    leaf-list supporting-service-name {
-      type string;
-      description
-        "The service name that this runs over top. If connection-type is service, then this is the related
-         connection-type = infrastructure service, for example.";
-    }
-    container path-description {
-      uses transportpce-pathDescription:path-description;
-    }
-  }
-}