X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=networkmodel%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fnetworkmodel%2FNetworkModelProvider.java;h=4dcf192afc3bc6ccd7512a2aeef270e789101fae;hb=67763b4d82e44c68fdbc765cdeec5496ff65b01e;hp=669be1becb83ee2d320a90e809add926c49324fb;hpb=e5480799d2f666999f2ae5cd7a874aa78d648a60;p=transportpce.git diff --git a/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/NetworkModelProvider.java b/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/NetworkModelProvider.java index 669be1bec..4dcf192af 100644 --- a/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/NetworkModelProvider.java +++ b/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/NetworkModelProvider.java @@ -9,22 +9,33 @@ package org.opendaylight.transportpce.networkmodel; import org.opendaylight.mdsal.binding.api.DataBroker; import org.opendaylight.mdsal.binding.api.DataTreeIdentifier; +import org.opendaylight.mdsal.binding.api.NotificationService; import org.opendaylight.mdsal.binding.api.RpcProviderService; import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.transportpce.common.InstanceIdentifiers; import org.opendaylight.transportpce.common.NetworkUtils; import org.opendaylight.transportpce.common.network.NetworkTransactionService; +import org.opendaylight.transportpce.networkmodel.listeners.ServiceHandlerListener; +import org.opendaylight.transportpce.networkmodel.service.FrequenciesService; import org.opendaylight.transportpce.networkmodel.util.TpceNetwork; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev170818.TransportpceNetworkutilsService; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210315.Network; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210315.mapping.Mapping; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.servicehandler.rev201125.TransportpceServicehandlerListener; import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node; import org.opendaylight.yangtools.concepts.ListenerRegistration; import org.opendaylight.yangtools.concepts.ObjectRegistration; +import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class NetworkModelProvider { private static final Logger LOG = LoggerFactory.getLogger(NetworkModelProvider.class); + private static final InstanceIdentifier MAPPING_II = InstanceIdentifier.create(Network.class) + .child(org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210315.network + .Nodes.class) + .child(Mapping.class); private final DataBroker dataBroker; private final RpcProviderService rpcProviderService; @@ -33,15 +44,21 @@ public class NetworkModelProvider { private ListenerRegistration dataTreeChangeListenerRegistration; private ObjectRegistration networkutilsServiceRpcRegistration; private TpceNetwork tpceNetwork; + private ListenerRegistration serviceHandlerListenerRegistration; + private NotificationService notificationService; + private FrequenciesService frequenciesService; public NetworkModelProvider(NetworkTransactionService networkTransactionService, final DataBroker dataBroker, final RpcProviderService rpcProviderService, final TransportpceNetworkutilsService networkutilsService, - final NetConfTopologyListener topologyListener) { + final NetConfTopologyListener topologyListener, NotificationService notificationService, + FrequenciesService frequenciesService) { this.dataBroker = dataBroker; this.rpcProviderService = rpcProviderService; this.networkutilsService = networkutilsService; this.topologyListener = topologyListener; this.tpceNetwork = new TpceNetwork(networkTransactionService); + this.notificationService = notificationService; + this.frequenciesService = frequenciesService; } /** @@ -58,6 +75,9 @@ public class NetworkModelProvider { InstanceIdentifiers.NETCONF_TOPOLOGY_II.child(Node.class)), topologyListener); networkutilsServiceRpcRegistration = rpcProviderService.registerRpcImplementation(TransportpceNetworkutilsService.class, networkutilsService); + TransportpceServicehandlerListener serviceHandlerListner = + new ServiceHandlerListener(frequenciesService); + serviceHandlerListenerRegistration = notificationService.registerNotificationListener(serviceHandlerListner); } /** @@ -71,5 +91,6 @@ public class NetworkModelProvider { if (networkutilsServiceRpcRegistration != null) { networkutilsServiceRpcRegistration.close(); } + serviceHandlerListenerRegistration.close(); } }