blob: 83f6bfffa6d1fa21c377f52db57de664e1bb2807 [file] [log] [blame]
Patrick Brady10bba352017-07-19 12:09:28 -07001/*-
2 * ============LICENSE_START=======================================================
3 * ONAP : APPC
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Copyright (C) 2017 Amdocs
8 * =============================================================================
9 * Licensed under the Apache License, Version 2.0 (the "License");
10 * you may not use this file except in compliance with the License.
11 * You may obtain a copy of the License at
12 *
13 * http://www.apache.org/licenses/LICENSE-2.0
14 *
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
20 *
21 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
22 * ============LICENSE_END=========================================================
23 */
24
Patrick Brady57b5eef2017-02-10 15:00:49 -080025module appc-provider-impl {
26
27 yang-version 1;
Patrick Brady07567592017-12-13 11:09:30 -080028 namespace "org:onap:appc:provider:impl";
Patrick Brady57b5eef2017-02-10 15:00:49 -080029 prefix "appc-provider-impl";
30
31 import config { prefix config; revision-date 2013-04-05; }
32 import opendaylight-md-sal-binding { prefix mdsal; revision-date 2013-10-28; }
33
34 description
35 "This module contains the base YANG definitions for
36 appc-provider implementation.";
37
38 revision "2014-05-23" {
39 description
40 "Initial revision.";
41 }
42
43 // This is the definition of the service implementation as a module identity.
44 identity appc-provider-impl {
45 base config:module-type;
46
47 // Specifies the prefix for generated java classes.
48 config:java-name-prefix AppcProvider;
49 }
50
51 // Augments the 'configuration' choice node under modules/module.
52 // We consume the three main services, RPCs, DataStore, and Notifications
53 augment "/config:modules/config:module/config:configuration" {
54 case appc-provider-impl {
55 when "/config:modules/config:module/config:type = 'appc-provider-impl'";
56
57 container rpc-registry {
58 uses config:service-ref {
59 refine type {
60 mandatory true;
61 config:required-identity mdsal:binding-rpc-registry;
62 }
63 }
64 }
65
66 container notification-service {
67 uses config:service-ref {
68 refine type {
69 mandatory true;
70 config:required-identity mdsal:binding-notification-service;
71 }
72 }
73 }
74
75 container data-broker {
76 uses config:service-ref {
77 refine type {
78 mandatory false;
79 config:required-identity mdsal:binding-async-data-broker;
80 }
81 }
82 }
83 }
84 }
85}