X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=vpnintent%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fvpnservice%2Fimpl%2FVpnintentProvider.java;h=715c1735163fe4ee40428da0ddcf8c58065a13d4;hb=refs%2Fchanges%2F57%2F31357%2F26;hp=637d8150ec365962e3ecb727c5d7c558dcbb7ca5;hpb=5883189b599acad3c3cea665315774e9a447d2d6;p=vpnservice.git diff --git a/vpnintent/impl/src/main/java/org/opendaylight/vpnservice/impl/VpnintentProvider.java b/vpnintent/impl/src/main/java/org/opendaylight/vpnservice/impl/VpnintentProvider.java index 637d8150..715c1735 100644 --- a/vpnintent/impl/src/main/java/org/opendaylight/vpnservice/impl/VpnintentProvider.java +++ b/vpnintent/impl/src/main/java/org/opendaylight/vpnservice/impl/VpnintentProvider.java @@ -12,8 +12,11 @@ import org.opendaylight.controller.md.sal.binding.api.WriteTransaction; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext; import org.opendaylight.controller.sal.binding.api.BindingAwareProvider; +import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpnintent.rev150105.MplsLabels; +import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpnintent.rev150105.MplsLabelsBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpnintent.rev150105.Vpns; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpnintent.rev150105.VpnsBuilder; +import org.opendaylight.yangtools.yang.binding.DataObject; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -25,6 +28,7 @@ public class VpnintentProvider implements BindingAwareProvider, AutoCloseable { private static final Logger LOG = LoggerFactory.getLogger(VpnintentProvider.class); public static final InstanceIdentifier VPN_INTENT_IID = InstanceIdentifier.builder(Vpns.class).build(); + public static final InstanceIdentifier LABELS_IID = InstanceIdentifier.builder(MplsLabels.class).build(); private DataBroker dataBroker; @@ -34,9 +38,11 @@ public class VpnintentProvider implements BindingAwareProvider, AutoCloseable { dataBroker = session.getSALService(DataBroker.class); Vpns vpns = new VpnsBuilder().build(); + MplsLabels labels = new MplsLabelsBuilder().build(); - // Initialize default config data in MD-SAL data store + // Initialize MD-SAL data store for vpn-intents and mpls-labels initDatastore(LogicalDatastoreType.CONFIGURATION, VPN_INTENT_IID, vpns); + initDatastore(LogicalDatastoreType.OPERATIONAL, LABELS_IID, labels); } @Override @@ -44,10 +50,10 @@ public class VpnintentProvider implements BindingAwareProvider, AutoCloseable { LOG.info("VpnintentProvider Closed"); } - private void initDatastore(LogicalDatastoreType store, InstanceIdentifier iid, Vpns mappings) { - // Put the Mapping data to MD-SAL data store + private void initDatastore(LogicalDatastoreType store, InstanceIdentifier iid, T object) { + // Put data to MD-SAL data store WriteTransaction transaction = dataBroker.newWriteOnlyTransaction(); - transaction.put(store, iid, mappings); + transaction.put(store, iid, object); // Perform the tx.submit asynchronously Futures.addCallback(transaction.submit(), new FutureCallback() { @@ -61,6 +67,6 @@ public class VpnintentProvider implements BindingAwareProvider, AutoCloseable { LOG.error("initDatastore for VPN-Intents: transaction failed"); } }); - LOG.info("initDatastore: VPN-Intents data populated: {}", store, iid, mappings); + LOG.info("initDatastore: data populated: {}, {}, {}", store, iid, object); } }