1 package test.mock.util;
3 import org.opendaylight.controller.md.sal.common.api.routing.RouteChangeListener;
4 import org.opendaylight.controller.sal.binding.api.BindingAwareBroker;
5 import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
6 import org.opendaylight.controller.sal.binding.api.rpc.RpcContextIdentifier;
7 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.statistics.rev130819.OpendaylightFlowStatisticsService;
8 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.table.statistics.rev131215.OpendaylightFlowTableStatisticsService;
9 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.statistics.rev131111.OpendaylightGroupStatisticsService;
10 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.statistics.rev131111.OpendaylightMeterStatisticsService;
11 import org.opendaylight.yang.gen.v1.urn.opendaylight.port.statistics.rev131214.OpendaylightPortStatisticsService;
12 import org.opendaylight.yang.gen.v1.urn.opendaylight.queue.statistics.rev131216.OpendaylightQueueStatisticsService;
13 import org.opendaylight.yangtools.concepts.ListenerRegistration;
14 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
15 import org.opendaylight.yangtools.yang.binding.RpcService;
17 public class RpcProviderRegistryMock implements RpcProviderRegistry {
19 OpendaylightFlowStatisticsServiceMock flowStatisticsServiceMock;
20 OpendaylightFlowTableStatisticsServiceMock flowTableStatisticsServiceMock;
21 OpendaylightGroupStatisticsServiceMock groupStatisticsServiceMock;
22 OpendaylightMeterStatisticsServiceMock meterStatisticsServiceMock;
23 OpendaylightPortStatisticsServiceMock portStatisticsServiceMock;
24 OpendaylightQueueStatisticsServiceMock queueStatisticsServiceMock;
26 public RpcProviderRegistryMock(NotificationProviderServiceHelper notificationProviderService) {
27 this.flowStatisticsServiceMock = new OpendaylightFlowStatisticsServiceMock(notificationProviderService);
28 this.flowTableStatisticsServiceMock = new OpendaylightFlowTableStatisticsServiceMock(notificationProviderService);
29 this.groupStatisticsServiceMock = new OpendaylightGroupStatisticsServiceMock(notificationProviderService);
30 this.meterStatisticsServiceMock = new OpendaylightMeterStatisticsServiceMock(notificationProviderService);
31 this.portStatisticsServiceMock = new OpendaylightPortStatisticsServiceMock(notificationProviderService);
32 this.queueStatisticsServiceMock = new OpendaylightQueueStatisticsServiceMock(notificationProviderService);
36 public <T extends RpcService> BindingAwareBroker.RpcRegistration<T> addRpcImplementation(Class<T> serviceInterface, T implementation) throws IllegalStateException {
41 public <T extends RpcService> BindingAwareBroker.RoutedRpcRegistration<T> addRoutedRpcImplementation(Class<T> serviceInterface, T implementation) throws IllegalStateException {
46 public <L extends RouteChangeListener<RpcContextIdentifier, InstanceIdentifier<?>>> ListenerRegistration<L> registerRouteChangeListener(L listener) {
50 @SuppressWarnings("unchecked")
52 public <T extends RpcService> T getRpcService(Class<T> serviceInterface) {
53 if (serviceInterface.equals(OpendaylightFlowStatisticsService.class)) {
54 return (T)flowStatisticsServiceMock;
55 } else if (serviceInterface.equals(OpendaylightFlowTableStatisticsService.class)) {
56 return (T) flowTableStatisticsServiceMock;
57 } else if (serviceInterface.equals(OpendaylightGroupStatisticsService.class)) {
58 return (T) groupStatisticsServiceMock;
59 } else if (serviceInterface.equals(OpendaylightMeterStatisticsService.class)) {
60 return (T) meterStatisticsServiceMock;
61 } else if (serviceInterface.equals(OpendaylightPortStatisticsService.class)) {
62 return (T) portStatisticsServiceMock;
63 } else if (serviceInterface.equals(OpendaylightQueueStatisticsService.class)) {
64 return (T) queueStatisticsServiceMock;
70 public OpendaylightFlowStatisticsServiceMock getFlowStatisticsServiceMock() {
71 return flowStatisticsServiceMock;
74 public OpendaylightFlowTableStatisticsServiceMock getFlowTableStatisticsServiceMock() {
75 return flowTableStatisticsServiceMock;
78 public OpendaylightGroupStatisticsServiceMock getGroupStatisticsServiceMock() {
79 return groupStatisticsServiceMock;
82 public OpendaylightMeterStatisticsServiceMock getMeterStatisticsServiceMock() {
83 return meterStatisticsServiceMock;
86 public OpendaylightPortStatisticsServiceMock getPortStatisticsServiceMock() {
87 return portStatisticsServiceMock;
90 public OpendaylightQueueStatisticsServiceMock getQueueStatisticsServiceMock() {
91 return queueStatisticsServiceMock;