package org.opendaylight.openflowplugin.impl.statistics.services.direct;
-import java.util.concurrent.Future;
+import com.google.common.util.concurrent.ListenableFuture;
import org.opendaylight.yang.gen.v1.urn.opendaylight.direct.statistics.rev160511.GetFlowStatisticsInput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.direct.statistics.rev160511.GetFlowStatisticsOutput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.direct.statistics.rev160511.GetGroupStatisticsInput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.direct.statistics.rev160511.GetQueueStatisticsOutput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.direct.statistics.rev160511.OpendaylightDirectStatisticsService;
import org.opendaylight.yangtools.yang.binding.DataObject;
-import org.opendaylight.yangtools.yang.common.RpcError;
+import org.opendaylight.yangtools.yang.common.ErrorType;
import org.opendaylight.yangtools.yang.common.RpcResult;
import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
@Override
@SuppressWarnings("unchecked")
- public Future<RpcResult<GetGroupStatisticsOutput>> getGroupStatistics(GetGroupStatisticsInput input) {
+ public ListenableFuture<RpcResult<GetGroupStatisticsOutput>> getGroupStatistics(GetGroupStatisticsInput input) {
return provider.lookup(AbstractGroupDirectStatisticsService.class)
.map(service -> service.handleAndReply(input))
.orElse(missingImplementation(AbstractGroupDirectStatisticsService.class));
@Override
@SuppressWarnings("unchecked")
- public Future<RpcResult<GetQueueStatisticsOutput>> getQueueStatistics(GetQueueStatisticsInput input) {
+ public ListenableFuture<RpcResult<GetQueueStatisticsOutput>> getQueueStatistics(GetQueueStatisticsInput input) {
return provider.lookup(AbstractQueueDirectStatisticsService.class)
.map(service -> service.handleAndReply(input))
.orElse(missingImplementation(AbstractQueueDirectStatisticsService.class));
@Override
@SuppressWarnings("unchecked")
- public Future<RpcResult<GetFlowStatisticsOutput>> getFlowStatistics(GetFlowStatisticsInput input) {
+ public ListenableFuture<RpcResult<GetFlowStatisticsOutput>> getFlowStatistics(GetFlowStatisticsInput input) {
return provider.lookup(AbstractFlowDirectStatisticsService.class)
.map(service -> service.handleAndReply(input))
.orElse(missingImplementation(AbstractFlowDirectStatisticsService.class));
@Override
@SuppressWarnings("unchecked")
- public Future<RpcResult<GetMeterStatisticsOutput>> getMeterStatistics(GetMeterStatisticsInput input) {
+ public ListenableFuture<RpcResult<GetMeterStatisticsOutput>> getMeterStatistics(GetMeterStatisticsInput input) {
return provider.lookup(AbstractMeterDirectStatisticsService.class)
.map(service -> service.handleAndReply(input))
.orElse(missingImplementation(AbstractMeterDirectStatisticsService.class));
@Override
@SuppressWarnings("unchecked")
- public Future<RpcResult<GetNodeConnectorStatisticsOutput>> getNodeConnectorStatistics(GetNodeConnectorStatisticsInput input) {
+ public ListenableFuture<RpcResult<GetNodeConnectorStatisticsOutput>>
+ getNodeConnectorStatistics(GetNodeConnectorStatisticsInput input) {
return provider.lookup(AbstractPortDirectStatisticsService.class)
.map(service -> service.handleAndReply(input))
.orElse(missingImplementation(AbstractPortDirectStatisticsService.class));
}
- private static <T extends DataObject> Future<RpcResult<T>> missingImplementation(Class service) {
+ private static <T extends DataObject> ListenableFuture<RpcResult<T>> missingImplementation(Class service) {
return RpcResultBuilder.<T>failed().withError(
- RpcError.ErrorType.APPLICATION,
+ ErrorType.APPLICATION,
String.format("No implementation found for direct statistics service %s.", service.getCanonicalName()))
.buildFuture();
}