X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=benchmark%2Frpcbenchmark%2Fsrc%2Fmain%2Fjava%2Frpcbenchmark%2Fimpl%2FGlobalBindingRTCServer.java;fp=benchmark%2Frpcbenchmark%2Fsrc%2Fmain%2Fjava%2Frpcbenchmark%2Fimpl%2FGlobalBindingRTCServer.java;h=67fde76865771b5d5135d0d2bf800092afeaa54f;hb=d357d50baf588218ed755be73f28892129ed2601;hp=edded6a835298b741adc092155530657915b6782;hpb=3082546776c21f7cbc6b4e8ae7530dc4000f8edd;p=controller.git diff --git a/benchmark/rpcbenchmark/src/main/java/rpcbenchmark/impl/GlobalBindingRTCServer.java b/benchmark/rpcbenchmark/src/main/java/rpcbenchmark/impl/GlobalBindingRTCServer.java index edded6a835..67fde76865 100644 --- a/benchmark/rpcbenchmark/src/main/java/rpcbenchmark/impl/GlobalBindingRTCServer.java +++ b/benchmark/rpcbenchmark/src/main/java/rpcbenchmark/impl/GlobalBindingRTCServer.java @@ -5,49 +5,28 @@ * 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 rpcbenchmark.impl; -import com.google.common.util.concurrent.Futures; -import com.google.common.util.concurrent.ListenableFuture; -import org.opendaylight.yang.gen.v1.rpcbench.payload.rev150702.GlobalRpcBenchInput; -import org.opendaylight.yang.gen.v1.rpcbench.payload.rev150702.GlobalRpcBenchOutput; -import org.opendaylight.yang.gen.v1.rpcbench.payload.rev150702.GlobalRpcBenchOutputBuilder; -import org.opendaylight.yang.gen.v1.rpcbench.payload.rev150702.RoutedRpcBenchInput; -import org.opendaylight.yang.gen.v1.rpcbench.payload.rev150702.RoutedRpcBenchOutput; -import org.opendaylight.yang.gen.v1.rpcbench.payload.rev150702.RoutedRpcBenchOutputBuilder; +import org.opendaylight.mdsal.binding.api.RpcProviderService; import org.opendaylight.yang.gen.v1.rpcbench.payload.rev150702.RpcbenchPayloadService; -import org.opendaylight.yangtools.yang.common.RpcResult; -import org.opendaylight.yangtools.yang.common.RpcResultBuilder; +import org.opendaylight.yangtools.concepts.Registration; +import org.osgi.service.component.annotations.Reference; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class GlobalBindingRTCServer implements RpcbenchPayloadService { - +final class GlobalBindingRTCServer extends AbstractRpcbenchPayloadService implements AutoCloseable { private static final Logger LOG = LoggerFactory.getLogger(GlobalBindingRTCServer.class); - private int numRpcs = 0; - public GlobalBindingRTCServer() { - LOG.debug("GlobalBindingRTCServer created."); - } + private final Registration reg; - @Override - public ListenableFuture> globalRpcBench(final GlobalRpcBenchInput input) { - GlobalRpcBenchOutput output = new GlobalRpcBenchOutputBuilder(input).build(); - RpcResult result = RpcResultBuilder.success(output).build(); - numRpcs++; - return Futures.immediateFuture(result); + GlobalBindingRTCServer(@Reference final RpcProviderService rpcProvider) { + reg = rpcProvider.registerRpcImplementation(RpcbenchPayloadService.class, this); + LOG.debug("GlobalBindingRTCServer started"); } @Override - public ListenableFuture> routedRpcBench(final RoutedRpcBenchInput input) { - RoutedRpcBenchOutput output = new RoutedRpcBenchOutputBuilder(input).build(); - RpcResult result = RpcResultBuilder.success(output).build(); - numRpcs++; - return Futures.immediateFuture(result); - } - - public int getNumRpcs() { - return numRpcs; + public void close() { + reg.close(); + LOG.debug("GlobalBindingRTCServer stopped"); } }