6c5c5db4190459d33047156954334380b3aa440a
[controller.git] / opendaylight / md-sal / compatibility / sal-compatibility / src / main / java / org / opendaylight / controller / sal / compatibility / topology / TopologyAdapter.xtend
1 package org.opendaylight.controller.sal.compatibility.topology
2
3 import org.opendaylight.controller.sal.binding.api.data.DataProviderService
4 import org.opendaylight.controller.sal.topology.IPluginInTopologyService
5 import org.opendaylight.controller.sal.topology.IPluginOutTopologyService
6 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev130712.NetworkTopology
7 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev130712.TopologyId
8 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev130712.network.topology.Topology
9 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev130712.network.topology.TopologyKey
10 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier
11
12 import static extension org.opendaylight.controller.sal.compatibility.topology.TopologyMapping.*
13 import java.util.List
14 import org.opendaylight.controller.sal.topology.TopoEdgeUpdate
15 import java.util.Collections
16
17 class TopologyAdapter implements IPluginInTopologyService {
18     
19     @Property
20     DataProviderService dataService;
21     
22     @Property
23     IPluginOutTopologyService topologyPublisher;
24     
25     override sollicitRefresh() {
26         val path = InstanceIdentifier.builder(NetworkTopology).child(Topology,new TopologyKey(new TopologyId("flow:1"))).toInstance;
27         val topology =  (dataService.readOperationalData(path) as Topology);
28         topologyPublisher.edgeUpdate(topology.toADEdgeUpdates)
29     }
30     
31 }