X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcompatibility%2Fsal-compatibility%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fcompatibility%2FComponentActivator.xtend;h=d65dee6571a855cfed156f1f892ad67d6ceebfb9;hp=3d19c986327154cace3b76fe06d4fed9d6718549;hb=8a52609ed4f230b72c0608632f14d2c607e36e06;hpb=3b0f2c65bfb0f0b07e27529734561a7ae9ee5ad9 diff --git a/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/ComponentActivator.xtend b/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/ComponentActivator.xtend index 3d19c98632..d65dee6571 100644 --- a/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/ComponentActivator.xtend +++ b/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/ComponentActivator.xtend @@ -1,16 +1,21 @@ +/* + * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ package org.opendaylight.controller.sal.compatibility import java.util.Arrays import java.util.Dictionary import java.util.Hashtable import org.apache.felix.dm.Component +import org.opendaylight.controller.clustering.services.IClusterGlobalServices import org.opendaylight.controller.sal.binding.api.BindingAwareBroker -import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ConsumerContext -import org.opendaylight.controller.sal.binding.api.BindingAwareConsumer -import org.opendaylight.controller.sal.binding.api.NotificationService -import org.opendaylight.controller.sal.binding.api.data.DataBrokerService -import org.opendaylight.controller.sal.binding.api.data.DataProviderService +import org.opendaylight.controller.sal.compatibility.adsal.DataPacketServiceAdapter import org.opendaylight.controller.sal.compatibility.topology.TopologyAdapter +import org.opendaylight.controller.sal.compatibility.topology.TopologyProvider import org.opendaylight.controller.sal.core.ComponentActivatorAbstractBase import org.opendaylight.controller.sal.core.Node import org.opendaylight.controller.sal.core.NodeConnector @@ -19,6 +24,7 @@ import org.opendaylight.controller.sal.flowprogrammer.IPluginInFlowProgrammerSer import org.opendaylight.controller.sal.flowprogrammer.IPluginOutFlowProgrammerService import org.opendaylight.controller.sal.inventory.IPluginInInventoryService import org.opendaylight.controller.sal.inventory.IPluginOutInventoryService +import org.opendaylight.controller.sal.packet.IPluginInDataPacketService import org.opendaylight.controller.sal.packet.IPluginOutDataPacketService import org.opendaylight.controller.sal.reader.IPluginInReadService import org.opendaylight.controller.sal.reader.IPluginOutReadService @@ -27,22 +33,11 @@ import org.opendaylight.controller.sal.topology.IPluginOutTopologyService import org.opendaylight.controller.sal.utils.GlobalConstants import org.opendaylight.controller.sal.utils.INodeConnectorFactory import org.opendaylight.controller.sal.utils.INodeFactory -import org.opendaylight.controller.clustering.services.IClusterGlobalServices -import org.opendaylight.controller.sal.packet.IPluginInDataPacketService - -import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.service.rev130819.SalFlowService -import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.service.rev130709.PacketProcessingService -import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.statistics.rev130819.OpendaylightFlowStatisticsService -import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.table.statistics.rev131215.OpendaylightFlowTableStatisticsService -import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.topology.discovery.rev130819.FlowTopologyDiscoveryService -import org.opendaylight.yang.gen.v1.urn.opendaylight.port.statistics.rev131214.OpendaylightPortStatisticsService import org.osgi.framework.BundleContext import static org.opendaylight.controller.sal.compatibility.NodeMapping.* -import org.opendaylight.controller.sal.compatibility.topology.TopologyProvider -import org.opendaylight.controller.sal.compatibility.adsal.DataPacketServiceAdapter -class ComponentActivator extends ComponentActivatorAbstractBase implements BindingAwareConsumer { +class ComponentActivator extends ComponentActivatorAbstractBase { private BundleContext context; @@ -83,37 +78,9 @@ class ComponentActivator extends ComponentActivatorAbstractBase implements Bindi } def setBroker(BindingAwareBroker broker) { - broker.registerConsumer(this, context) + broker.registerProvider(new SalCompatibilityProvider(this), context) } - override onSessionInitialized(ConsumerContext session) { - val subscribe = session.getSALService(NotificationService) - - // Registration of Flow Service - flow.delegate = session.getRpcService(SalFlowService) - flow.dataBrokerService = session.getSALService(DataBrokerService); - subscribe.registerNotificationListener(flow); - - // Data Packet Service - subscribe.registerNotificationListener(inventory); - dataPacketService.delegate = session.getRpcService(PacketProcessingService) - - // Inventory Service - inventory.dataService = session.getSALService(DataBrokerService); - inventory.flowStatisticsService = session.getRpcService(OpendaylightFlowStatisticsService); - inventory.flowTableStatisticsService = session.getRpcService(OpendaylightFlowTableStatisticsService); - inventory.nodeConnectorStatisticsService = session.getRpcService(OpendaylightPortStatisticsService); - inventory.topologyDiscovery = session.getRpcService(FlowTopologyDiscoveryService); - inventory.dataProviderService = session.getSALService(DataProviderService) - topology.dataService = session.getSALService(DataProviderService) - tpProvider.dataService = session.getSALService(DataProviderService) - - - tpProvider.start(); - - subscribe.registerNotificationListener(dataPacket) - - } override protected getGlobalImplementations() { return Arrays.asList(this, flow, inventory, dataPacket, nodeFactory, nodeConnectorFactory,topology,tpProvider)