From 9c2964ce01fa05c715499206cf3d0f610c5c334d Mon Sep 17 00:00:00 2001 From: Marek Gradzki Date: Mon, 24 Oct 2016 08:06:52 +0200 Subject: Fix jvpp coverity issues #2 - synchronize AbstractFutureJvppInvoker.getRequests - handle registry & jvpp close in API usage examples Change-Id: I918bf864b8212fde04f0d9194037f1c6a810fc3f Signed-off-by: Marek Gradzki --- .../vpp/jvpp/core/test/CreateSubInterfaceTest.java | 47 ++++++++++------------ 1 file changed, 22 insertions(+), 25 deletions(-) (limited to 'vpp-api/java/jvpp-core/io/fd/vpp/jvpp/core/test/CreateSubInterfaceTest.java') diff --git a/vpp-api/java/jvpp-core/io/fd/vpp/jvpp/core/test/CreateSubInterfaceTest.java b/vpp-api/java/jvpp-core/io/fd/vpp/jvpp/core/test/CreateSubInterfaceTest.java index 43605849..a96258f4 100644 --- a/vpp-api/java/jvpp-core/io/fd/vpp/jvpp/core/test/CreateSubInterfaceTest.java +++ b/vpp-api/java/jvpp-core/io/fd/vpp/jvpp/core/test/CreateSubInterfaceTest.java @@ -18,7 +18,6 @@ package io.fd.vpp.jvpp.core.test; import static java.util.Objects.requireNonNull; -import io.fd.vpp.jvpp.JVpp; import io.fd.vpp.jvpp.JVppRegistry; import io.fd.vpp.jvpp.JVppRegistryImpl; import io.fd.vpp.jvpp.core.JVppCoreImpl; @@ -54,8 +53,8 @@ public class CreateSubInterfaceTest { private static void requireSingleIface(final SwInterfaceDetailsReplyDump response, final String ifaceName) { if (response.swInterfaceDetails.size() != 1) { throw new IllegalStateException( - String.format("Expected one interface matching filter %s but was %d", ifaceName, - response.swInterfaceDetails.size())); + String.format("Expected one interface matching filter %s but was %d", ifaceName, + response.swInterfaceDetails.size())); } } @@ -82,38 +81,36 @@ public class CreateSubInterfaceTest { private static void testCreateSubInterface() throws Exception { System.out.println("Testing sub-interface creation using Java callback API"); - final JVppRegistry registry = new JVppRegistryImpl("CreateSubInterface"); - final JVpp jvpp = new JVppCoreImpl(); - final FutureJVppCoreFacade jvppFacade = new FutureJVppCoreFacade(registry, jvpp); + try (final JVppRegistry registry = new JVppRegistryImpl("CreateSubInterface"); + final FutureJVppCoreFacade jvppFacade = new FutureJVppCoreFacade(registry, new JVppCoreImpl())) { + System.out.println("Successfully connected to VPP"); + Thread.sleep(1000); - System.out.println("Successfully connected to VPP"); - Thread.sleep(1000); - - final String ifaceName = "GigabitEthernet0/8/0"; + final String ifaceName = "GigabitEthernet0/8/0"; - final SwInterfaceDetailsReplyDump swInterfaceDetails = + final SwInterfaceDetailsReplyDump swInterfaceDetails = jvppFacade.swInterfaceDump(createSwInterfaceDumpRequest(ifaceName)).toCompletableFuture().get(); - requireNonNull(swInterfaceDetails, "swInterfaceDump returned null"); - requireNonNull(swInterfaceDetails.swInterfaceDetails, "swInterfaceDetails is null"); - requireSingleIface(swInterfaceDetails, ifaceName); + requireNonNull(swInterfaceDetails, "swInterfaceDump returned null"); + requireNonNull(swInterfaceDetails.swInterfaceDetails, "swInterfaceDetails is null"); + requireSingleIface(swInterfaceDetails, ifaceName); - final int swIfIndex = swInterfaceDetails.swInterfaceDetails.get(0).swIfIndex; - final int subId = 1; + final int swIfIndex = swInterfaceDetails.swInterfaceDetails.get(0).swIfIndex; + final int subId = 1; - final CreateSubifReply createSubifReply = + final CreateSubifReply createSubifReply = jvppFacade.createSubif(createSubifRequest(swIfIndex, subId)).toCompletableFuture().get(); - print(createSubifReply); + print(createSubifReply); - final String subIfaceName = "GigabitEthernet0/8/0." + subId; - final SwInterfaceDetailsReplyDump subIface = + final String subIfaceName = "GigabitEthernet0/8/0." + subId; + final SwInterfaceDetailsReplyDump subIface = jvppFacade.swInterfaceDump(createSwInterfaceDumpRequest(subIfaceName)).toCompletableFuture().get(); - requireNonNull(swInterfaceDetails, "swInterfaceDump returned null"); - requireNonNull(subIface.swInterfaceDetails, "swInterfaceDump returned null"); - requireSingleIface(swInterfaceDetails, ifaceName); + requireNonNull(swInterfaceDetails, "swInterfaceDump returned null"); + requireNonNull(subIface.swInterfaceDetails, "swInterfaceDump returned null"); + requireSingleIface(swInterfaceDetails, ifaceName); - System.out.println("Disconnecting..."); - registry.close(); + System.out.println("Disconnecting..."); + } Thread.sleep(1000); } -- cgit 1.2.3-korg