Add new Maven module to manage NBI Notifications 70/94270/27
authorThierry Jiao <thierry.jiao@orange.com>
Thu, 17 Dec 2020 17:04:59 +0000 (18:04 +0100)
committerguillaume.lambert <guillaume.lambert@orange.com>
Thu, 11 Mar 2021 15:47:15 +0000 (16:47 +0100)
commitde218a942bf32f32e41d37b1f49f9a35e86d5dc0
treee3dcd87a2f31587e8d766f5d095d78cab16cdebe
parent15197bf3dcde69a90f01963ffa524fbf6354555c
Add new Maven module to manage NBI Notifications

- Implement a new Maven module named nbinotifications containing classes
  capable of communicating with Kafka server
- Add the class Subscriber capable of reading events from topics Kafka
- Add the class Publisher capable of writing events from topics Kafka
- Add yang file nbi-notifications to model the service notifications
- Implement a new RPC API named GetNotificationsService capable of
  returning the notifications stored in a topic Kafka
- Implement a new RPC API named publishNotificationService in charge of
  publishing a message in Kafka topic
- Add a listener to the RPC GetNotificationsService
- Add new blueprint in nbinotifications
- Add unit tests to check the functionning of nbinotifications classes
- Update pom.xml to implement the new module nbinotifications

JIRA: TRNSPRTPCE-343
Signed-off-by: Thierry Jiao <thierry.jiao@orange.com>
Change-Id: I74298292034e4a158b27dd5db47e63918026684b
27 files changed:
api/src/main/yang/nbi-notifications@2020-11-30.yang [new file with mode: 0644]
nbinotifications/pom.xml [new file with mode: 0644]
nbinotifications/src/main/java/org/opendaylight/transportpce/nbinotifications/consumer/Subscriber.java [new file with mode: 0644]
nbinotifications/src/main/java/org/opendaylight/transportpce/nbinotifications/impl/NbiNotificationsImpl.java [new file with mode: 0644]
nbinotifications/src/main/java/org/opendaylight/transportpce/nbinotifications/impl/NbiNotificationsProvider.java [new file with mode: 0644]
nbinotifications/src/main/java/org/opendaylight/transportpce/nbinotifications/listener/NbiNotificationsListenerImpl.java [new file with mode: 0644]
nbinotifications/src/main/java/org/opendaylight/transportpce/nbinotifications/producer/Publisher.java [new file with mode: 0644]
nbinotifications/src/main/java/org/opendaylight/transportpce/nbinotifications/serialization/ConfigConstants.java [new file with mode: 0644]
nbinotifications/src/main/java/org/opendaylight/transportpce/nbinotifications/serialization/NotificationServiceDeserializer.java [new file with mode: 0644]
nbinotifications/src/main/java/org/opendaylight/transportpce/nbinotifications/serialization/NotificationServiceSerializer.java [new file with mode: 0644]
nbinotifications/src/main/java/org/opendaylight/transportpce/nbinotifications/utils/NbiNotificationsUtils.java [new file with mode: 0644]
nbinotifications/src/main/resources/OSGI-INF/blueprint/nobinotifications-blueprint.xml [new file with mode: 0644]
nbinotifications/src/main/resources/publisher.properties [new file with mode: 0644]
nbinotifications/src/main/resources/subscriber.properties [new file with mode: 0644]
nbinotifications/src/test/java/org/opendaylight/transportpce/nbinotifications/consumer/SubscriberTest.java [new file with mode: 0644]
nbinotifications/src/test/java/org/opendaylight/transportpce/nbinotifications/impl/NbiNotificationsImplTest.java [new file with mode: 0644]
nbinotifications/src/test/java/org/opendaylight/transportpce/nbinotifications/impl/NbiNotificationsProviderTest.java [new file with mode: 0644]
nbinotifications/src/test/java/org/opendaylight/transportpce/nbinotifications/listener/NbiNotificationsListenerImplTest.java [new file with mode: 0644]
nbinotifications/src/test/java/org/opendaylight/transportpce/nbinotifications/producer/PublisherTest.java [new file with mode: 0644]
nbinotifications/src/test/java/org/opendaylight/transportpce/nbinotifications/serialization/NotificationServiceDeserializerTest.java [new file with mode: 0644]
nbinotifications/src/test/java/org/opendaylight/transportpce/nbinotifications/serialization/NotificationServiceSerializerTest.java [new file with mode: 0644]
nbinotifications/src/test/java/org/opendaylight/transportpce/nbinotifications/utils/NotificationServiceDataUtils.java [new file with mode: 0644]
nbinotifications/src/test/resources/event.json [new file with mode: 0644]
nbinotifications/src/test/resources/expected_event.json [new file with mode: 0644]
nbinotifications/src/test/resources/publisher.properties [new file with mode: 0644]
nbinotifications/src/test/resources/subscriber.properties [new file with mode: 0644]
pom.xml