X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=vpnmanager%2Fvpnmanager-api%2Fsrc%2Fmain%2Fyang%2Fodl-l3vpn.yang;h=6857e98ec55b1a2c73624d70f5523b4e06cfda7c;hb=4110307879cad1aa54943aedbf937b2f21575b4c;hp=4beb21ec9eb1b94d90bf637942dfae750f50c8d0;hpb=531867226c199d987d941aae9f8412e266a408d1;p=vpnservice.git diff --git a/vpnmanager/vpnmanager-api/src/main/yang/odl-l3vpn.yang b/vpnmanager/vpnmanager-api/src/main/yang/odl-l3vpn.yang index 4beb21ec..6857e98e 100644 --- a/vpnmanager/vpnmanager-api/src/main/yang/odl-l3vpn.yang +++ b/vpnmanager/vpnmanager-api/src/main/yang/odl-l3vpn.yang @@ -4,6 +4,7 @@ module odl-l3vpn { import yang-ext {prefix ext; revision-date "2013-07-09";} import l3vpn { prefix l3vpn; revision-date "2014-08-15"; } + import ietf-yang-types { prefix "yang"; } revision "2013-09-11" { description "L3 VPN Service module"; @@ -30,6 +31,11 @@ module odl-l3vpn { uses adjacency-list; } + augment "/l3vpn:vpn-interfaces/l3vpn:vpn-interface" { + ext:augment-identifier "opState"; + leaf stateUp {type boolean; config false;} + } + /* Operational DS containers for reverse lookups*/ container prefix-to-interface { config false; @@ -120,4 +126,112 @@ module odl-l3vpn { } } + typedef task-state { + type enumeration { + enum na { + value "0"; + description + "Task not applicable"; + } + enum pending { + value "1"; + description + "Task is in pending state"; + } + enum done { + value "2"; + description + "Task has been completed"; + } + } + description + "This value the status of any task. + The possible values are NA, PENDING or DONE. + "; + } + + + container subnet-op-data { + list subnet-op-data-entry { + key subnet-id; + leaf subnet-id { + type yang:uuid; + description "UUID representing the subnet "; + } + leaf nh-dpnId { + type uint64; + description "DpnId for the DPN used as nexthop for this subnet"; + } + leaf vpn-name { + type string; + description "VPN Instance name"; + } + leaf vrf-id { + type string; + } + leaf subnet-cidr { + type string; + description "Subnet in cidr notation"; + } + leaf route-adv-state { + type task-state; + description "The status of the subnet route advertisement. Route advertisement could be in a NA, PENDING or DONE state."; + } + leaf elan-tag{ + type uint32; + } + list subnet-to-dpn { + key dpnId; + leaf dpnId { + type uint64; + } + list vpn-interfaces { + key interface-name; + leaf interface-name { + type string; + } + } + } + + } + } + + container port-op-data { + list port-op-data-entry { + key port-id; + leaf port-id { + type string; + description "UUID in string format representing the port "; + } + leaf subnet-id { + type yang:uuid; + description "Back reference to obtain the subnet for a port "; + } + leaf dpnId { + type uint64; + } + } + } + + container rd-to-elan-op{ + list rd-to-elan-op-entry{ + key "rd subnet-ip"; + leaf rd { + type string; + } + leaf subnet-ip { + type string; + } + leaf next-hop-ip { + type string; + } + leaf vpn-name { + type string; + } + leaf elan-tag{ + type uint32; + } + } + } + } \ No newline at end of file