93e16044ed5750422fe76873e6b74ba6205b2b81
[bgpcep.git] / bgp / rib-spi / src / main / yang / odl-bgp-rib-spi-cfg.yang
1 // vi: set smarttab et sw=4 tabstop=4:
2 module odl-bgp-rib-spi-cfg {
3     yang-version 1;
4     namespace "urn:opendaylight:params:xml:ns:yang:controller:bgp:rib:spi";
5     prefix "bgpribspi";
6
7     import config { prefix config; revision-date 2013-04-05; }
8
9     organization "Cisco Systems, Inc.";
10
11     contact "Robert Varga <rovarga@cisco.com>";
12
13     description
14         "This module contains the base YANG definitions for
15          BGP listener service.
16
17         Copyright (c)2013 Cisco Systems, Inc. All rights reserved.;
18
19         This program and the accompanying materials are made available
20         under the terms of the Eclipse Public License v1.0 which
21         accompanies this distribution, and is available at
22         http://www.eclipse.org/legal/epl-v10.html";
23
24     revision "2013-11-15" {
25         description
26             "Initial revision";
27     }
28
29     identity consumer-extensions {
30         description
31             "Service representing a BGP RIB extension registry. Extension
32             consumers have this service injected.";
33
34         base "config:service-type";
35         config:java-class "org.opendaylight.protocol.bgp.rib.spi.RIBExtensionConsumerContext";
36     }
37
38     identity extensions {
39         description
40             "Service representing a BGP RIB extension registry. Extension
41             providers have this service injected for registration.";
42
43         base "consumer-extensions";
44         config:java-class "org.opendaylight.protocol.bgp.rib.spi.RIBExtensionProviderContext";
45     }
46
47     identity extension {
48         description
49             "Service representing a BGP RIB extension.";
50
51         base "config:service-type";
52         config:java-class "org.opendaylight.protocol.bgp.rib.spi.RIBExtensionProviderActivator";
53     }
54
55     identity bgp-rib-extensions-impl {
56         base config:module-type;
57         config:provided-service extensions;
58         config:java-name-prefix RIBExtensionsImpl;
59     }
60
61     augment "/config:modules/config:module/config:configuration" {
62         case bgp-rib-extensions-impl {
63             when "/config:modules/config:module/config:type = 'bgp-rib-extensions-impl'";
64
65             list extension {
66                 uses config:service-ref {
67                     refine type {
68                         mandatory true;
69                         config:required-identity extension;
70                     }
71                 }
72             }
73         }
74     }
75
76 }
77