Xingjun, What version are you running? Also DCL is deprecated - it is recommended to use DTCL. Not sure if anyone will support DCL at this point.
Tom On Wed, Jul 26, 2017 at 2:25 PM, Xingjun Chu <xingjun....@huawei.com> wrote: > Hi, > > > > I have an issue regarding DCN, hope you guys can give me a hint. Much > appreciated. > > > > I have a YANG file which has defined the following > > > > container fabric-rendered-mapping { > > list fabric { > > key "id"; > > leaf id { > > type fabric:fabric-id; > > } > > > > list rib { > > key "vrf"; > > > > leaf vrf { > > type uint32; > > } > > ……………. > > } > > > > YANGTools generates FabricRenderedMapping.java class, > > > > A listener is registered as below and its onDataChanged Method is > implemented. > > > > *InstanceIdentifier<Route> routeIID = > InstanceIdentifier.create(FabricRenderedMapping.class)* > > * .child(Fabric.class, new > FabricKey(fabricId)).child(Rib.class).child(Route.class);* > > > > *ribRouteListener = > databroker.registerDataChangeListener(LogicalDatastoreType.OPERATIONAL, > routeIID, this,* > > * DataChangeScope.BASE);* > > > > * @Override* > > * public void onDataChanged(AsyncDataChangeEvent<InstanceIdentifier<?>, > DataObject> change) {* > > > > * Map<InstanceIdentifier<?>, DataObject> createdData = > change.getCreatedData();* > > * for (Entry<InstanceIdentifier<?>, DataObject> entry : > createdData.entrySet()) {* > > * onDataCreated(entry);* > > * }* > > > > * Map<InstanceIdentifier<?>, DataObject> updatedData = > change.getUpdatedData();* > > * for (Entry<InstanceIdentifier<?>, DataObject> entry : > updatedData.entrySet()) {* > > * onDataUpdated(entry);* > > * }* > > > > * for (InstanceIdentifier<?> iid : change.getRemovedPaths()) {* > > * DataObject oldData = change.getOriginalData().get(iid);* > > * onDataRemoved(iid, oldData);* > > * }* > > > > * }* > > > > *private void onDataCreated(Entry<InstanceIdentifier<?>, DataObject> > entry) {* > > *…………………* > > *}* > > > > When a rib object is created and transaction is submitted into the data > store as using code below, > > > > *InstanceIdentifier<Route> routeIID = > InstanceIdentifier.create(FabricRenderedMapping.class)* > > * .child(Fabric.class, new > FabricKey(fabricId)).child(Rib.class).child(Route.class);* > > * ribRouteListener = > databroker.registerDataChangeListener(LogicalDatastoreType.OPERATIONAL, > routeIID, this,* > > * DataChangeScope.BASE);* > > > > I checked the “fabricKey” value which matches each other. But in > onDataCreated did NOT get invoked or get any notification. > > > > Any pointers what I am missing? BTW, it is single node deployment, not > clustering. > > > > Thanks > > Xingjun > > _______________________________________________ > controller-dev mailing list > controller-dev@lists.opendaylight.org > https://lists.opendaylight.org/mailman/listinfo/controller-dev > >
_______________________________________________ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev