2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.openflowplugin.test
10 import org.opendaylight.controller.sal.binding.api.AbstractBindingAwareProvider
11 import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext
12 import org.opendaylight.controller.sal.binding.api.NotificationProviderService
13 import org.opendaylight.controller.sal.binding.api.data.DataProviderService
14 import org.osgi.framework.BundleContext
16 class OpenflowpluginTestActivator extends AbstractBindingAwareProvider {
18 static var OpenflowpluginTestServiceProvider provider = new OpenflowpluginTestServiceProvider();
19 static var OpenflowpluginGroupTestServiceProvider groupProvider = new OpenflowpluginGroupTestServiceProvider();
20 static var OpenflowpluginMeterTestServiceProvider meterProvider = new OpenflowpluginMeterTestServiceProvider();
21 static var OpenflowpluginTableFeaturesTestServiceProvider tableProvider = new OpenflowpluginTableFeaturesTestServiceProvider();
22 var OpenflowpluginTestCommandProvider cmdProvider;
23 var OpenflowpluginGroupTestCommandProvider cmdGroupProvider;
24 var OpenflowpluginMeterTestCommandProvider cmdMeterProvider;
25 var OpenflowpluginTableFeaturesTestCommandProvider cmdTableProvider;
26 var OpenflowpluginStatsTestCommandProvider cmdStatsProvider;
27 var OpenflowpluginTestNodeConnectorNotification cmdNodeConnectorNotification;
28 var OpenflowpluginTestTopologyNotification cmdTopologyNotification;
29 var OpenflowPluginBulkTransactionProvider bulkCmdProvider;
30 var OpenflowPluginBulkGroupTransactionProvider groupCmdProvider;
31 public static final String NODE_ID = "foo:node:1";
33 override onSessionInitiated(ProviderContext session) {
34 provider.dataService = session.getSALService(DataProviderService)
35 provider.notificationService = session.getSALService(NotificationProviderService)
37 provider.register(session);
38 groupProvider.register(session);
39 meterProvider.register(session);
40 tableProvider.register(session);
41 cmdProvider.onSessionInitiated(session);
42 cmdGroupProvider.onSessionInitiated(session);
43 cmdMeterProvider.onSessionInitiated(session);
44 cmdTableProvider.onSessionInitiated(session);
45 cmdStatsProvider.onSessionInitiated(session);
46 cmdNodeConnectorNotification.onSessionInitiated(session);
47 cmdTopologyNotification.onSessionInitiated(session);
48 bulkCmdProvider.onSessionInitiated(session);
49 groupCmdProvider.onSessionInitiated(session);
52 override startImpl(BundleContext ctx) {
54 cmdProvider = new OpenflowpluginTestCommandProvider(ctx);
55 cmdGroupProvider = new OpenflowpluginGroupTestCommandProvider(ctx);
56 cmdMeterProvider = new OpenflowpluginMeterTestCommandProvider(ctx);
57 cmdTableProvider = new OpenflowpluginTableFeaturesTestCommandProvider(ctx);
58 cmdStatsProvider = new OpenflowpluginStatsTestCommandProvider(ctx);
59 cmdNodeConnectorNotification = new OpenflowpluginTestNodeConnectorNotification(ctx);
60 cmdTopologyNotification = new OpenflowpluginTestTopologyNotification(ctx);
61 bulkCmdProvider = new OpenflowPluginBulkTransactionProvider(ctx);
62 groupCmdProvider = new OpenflowPluginBulkGroupTransactionProvider(ctx);
65 override protected stopImpl(BundleContext context) {