3 namespace "urn:cisco:params:xml:ns:yang:messagebus:eventsource";
6 import event-aggregator { prefix aggr; }
7 import network-topology { prefix nt; revision-date "2013-10-21"; }
8 import opendaylight-inventory {prefix inv; revision-date "2013-08-19"; }
9 import yang-ext {prefix ext; revision-date "2013-07-09"; }
11 organization "Cisco Systems, Inc.";
12 contact "Robert Gallas";
15 "Base model for a topology where individual nodes can produce events.
17 Module implementing event source topology and encapped notification.
19 Copyright (c)2014 Cisco Systems, Inc. All rights reserved.
21 This program and the accompanying materials are made available
22 under the terms of the Eclipse Public License v1.0 which
23 accompanies this distribution, and is available at
24 http://www.eclipse.org/legal/epl-v10.html";
26 revision "2014-12-02" {
27 description "first revision
28 + add rpc dis-join-topic
29 + add notification event-source-status-notification";
33 typedef join-topic-status {
38 description "Object status";
41 // FIXME: migrate to topology
44 path "/inv:nodes/inv:node/inv:id";
48 typedef event-source-status {
54 description "Status of event source
55 - active: event source is publishing notification,
56 - inactive: event source stopped publishing of notifications temporarily
57 - deactive: event source stopped publishing of notifications permanently" ;
60 grouping topology-event-source-type {
61 container topology-event-source {
62 presence "indicates an event source-aware topology";
69 ext:context-reference "inv:node-context";
70 type "instance-identifier";
74 description "in current implementation notification-pattern is defined by topic-id.
75 By persisting topic definition we could omit notification-pattern";
77 leaf notification-pattern {
78 type aggr:notification-pattern;
84 type join-topic-status;
92 ext:context-reference "inv:node-context";
93 type "instance-identifier";
98 description "identifier of topic to be disjoin";
104 notification event-source-status-notification {
107 "Notification of change event source status.";
110 type event-source-status;
112 description "Current status of event source.";
117 augment "/nt:network-topology/nt:topology/nt:topology-types" {
118 uses topology-event-source-type;
121 augment "/nt:network-topology/nt:topology/nt:node" {
122 when "../../nt:topology-types/topology-event-source";
123 leaf event-source-node {