OpenDaylight, Netconf, Restconf & YANG

An excerpt from chat with Tomas Olvecky: Q.YANG is a modeling language written to support netconf based devices. But in opendaylight we are using it to describe the structure of data provided by controller components. Well there are couple of tutorials on internet which makes me believe that netconf and yang are inseparable. Please throw […]

How MD-SAL Identifies Southbound Plugin For Flow Provisioning

When I started writing a southbound plugin for one of the netconf device that I am working on, one of my very first question was how will MD-SAL know that it has to route the request received from flow provisioning app to my plugin. I obviously dug a little further and here is what I […]

Creating InstanceIdentifier For Binding Aware & Binding Independent Components

Instance Identifier for Binding Aware Component Carefully note the import at line 1 – here we are using yang.binding package.

 Instance Identifier for Binding Independent Component Carefully note the import at line 1 Рhere we are using yang.data.api package.

 

How To Publish Link To MD-SAL

Helium Version Everything remains same except the way of accessing notification provider service at line 12.

How To Publish NodeConnector To MD-SAL

Helium Version Everything remains same except the way of accessing notification provider service at line 12.

How To Publish Node To MD-SAL

Helium Version Everything remains same except the way of accessing notification provider service at line 13.

How To Look Up Data In MD-SAL

In previous post, we learned how to access data in MD-SAL using Mount Point. In this post, we will see how to look up data from MD-SAL using DataProviderService.

Above code snippet is for binding aware components.

How To Access Data In MD-SAL From MountPoint

MD-SAL provides three different APIs to access data in the common data store: Java generated DTOs – Binding Aware DOM APIs – Binding Independent HTTP Restconf APIs In this post we will see how to access data in MD-SAL using each of this method. For first two, we need to get MountService from Provider context¬† […]

How To Handle Notifications Published To MD-SAL

MD-SAL has handlers written for MD-SAL notification types. One such example is NodeChangeCommiter which handles the notifications published on NodeUpdated notification type – refer here. Let’s say we have defined a new YANG model and have created a new notification type shapeDone as follows:

On converting this YANG file to Java, following files will […]

How To Publish Notifications To MD-SAL

Below method is to publish notifications from Binding Aware Components. Get reference to NotificationProviderService service provided by MD-SAL: Hydrogen Version

session is an object of type ProviderContext getSALService returns a session specific instance (implementation) of requested binding-aware infrastructural service. Usually reference to notification provider service is obtained in Bundle-Activator. Helium Version

Note:- Rest […]