All Downloads are FREE. Search and download functionalities are using the official Maven repository.

[email protected] Maven / Gradle / Ivy

There is a newer version: 10.1.0
Show newest version
module transportpce-networkutils {
  yang-version 1.1;
  namespace "http://org/opendaylight/transportpce/networkutils";
  prefix org-opendaylight-transportpce-networkutils;

  import ietf-network {
    prefix nd;
    revision-date 2018-02-26;
  }
  import ietf-network-topology {
    prefix nwt;
    revision-date 2018-02-26;
  }
  import org-openroadm-common-network {
    prefix cnet;
    revision-date 2023-05-26;
  }

  revision 2022-06-30 {
    description
      "Add transportpce augmentation to manage otn-link-type in otn-topology";
  }

  revision 2017-08-18 {
    description
      "Initial revision of networkutils model";
  }

  typedef otn-link-type {
    type enumeration {
      enum "OTU4" {
        value 0;
      }
      enum "ODU4" {
        value 1;
      }
      enum "ODTU4" {
        value 2;
      }
      enum "ODU2e" {
        value 3;
      }
      enum "ODU0" {
        value 4;
      }
      enum "OTUC4" {
        value 5;
      }
      enum "ODUC4" {
        value 6;
      }
      enum "OTUC3" {
        value 7;
      }
      enum "ODUC3" {
        value 8;
      }
      enum "OTUC2" {
        value 9;
      }
      enum "ODUC2" {
        value 10;
      }
    }
  }

  grouping links-input-grouping {
    container links-input {
      description
        "This is the input to initialize the nodes";
      leaf xpdr-node {
        type string;
      }
      leaf xpdr-num {
        type uint8;
      }
      leaf network-num {
        type uint8;
      }
      leaf rdm-node {
        type string;
      }
      leaf srg-num {
        type uint8;
      }
      leaf termination-point-num {
        type string;
      }
    }
  }

  rpc init-roadm-nodes {
    description
      "This rpc initiates roadm to roadm link";
    input {
      leaf rdm-a-node {
        type string;
      }
      leaf deg-a-num {
        type uint8;
      }
      leaf termination-point-a {
        type string;
      }
      leaf rdm-z-node {
        type string;
      }
      leaf deg-z-num {
        type uint8;
      }
      leaf termination-point-z {
        type string;
      }
    }
    output {
      leaf result {
        type string;
      }
    }
  }

  rpc init-xpdr-rdm-links {
    description
      "This rpc initiates xponder to rdm link";
    input {
      uses links-input-grouping;
    }
    output {
      leaf result {
        type string;
      }
    }
  }

  rpc init-rdm-xpdr-links {
    description
      "This rpc initiates rdm to xponder link";
    input {
      uses links-input-grouping;
    }
    output {
      leaf result {
        type string;
      }
    }
  }

  rpc delete-link {
    description
      "This rpc deletes a given link in openroadm Topology layer";
    input {
      leaf link-id {
        type string;
      }
    }
    output {
      leaf result {
        type string;
      }
    }
  }

  augment "/nd:networks/nd:network/nwt:link" {
    when "../nd:network-types/cnet:openroadm-common-network/otn-topology";
    description
      "Defines more accurate otn link types to differentiate otn links in otn-topology";
    leaf otn-link-type {
      when
        "../cnet:link-type = 'OTN-LINK'";
      type otn-link-type;
      description
        "type of otn link, to help link management inside transportpce";
    }
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy