BUG 2245 - Fix Unnecessary Local Before Return 28/12228/2
authorMarian Adamjak <marian.adamjak@pantheon.sk>
Fri, 24 Oct 2014 12:49:12 +0000 (14:49 +0200)
committerMarian Adamjak <marian.adamjak@pantheon.sk>
Mon, 27 Oct 2014 13:20:29 +0000 (14:20 +0100)
Change-Id: I6fc4762d8af5cced96e82529cf23d75bb017dffa
Signed-off-by: Marian Adamjak <marian.adamjak@pantheon.sk>
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/connection/SwitchConnectionProviderImpl.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/connection/SwitchConnectionProviderImpl02Test.java

index 75f698c44085bf9605e8e04fa6c1b11e00c21dca..002343d75d1c3a82b0dac3fe23d922e913817e63 100644 (file)
@@ -97,9 +97,11 @@ public class SwitchConnectionProviderImpl implements SwitchConnectionProvider {
     @Override
     public ListenableFuture<Boolean> shutdown() {
         LOGGER.debug("Shutdown summoned");
-        //TODO: provide exception in case of: not started, not configured (already stopped)
-        ListenableFuture<Boolean> result = serverFacade.shutdown();
-        return result;
+        if(serverFacade == null){
+            LOGGER.debug("Can not shutdown - not configured or started");
+            throw new IllegalStateException("SwitchConnectionProvider is not started or not configured.");
+        }
+        return serverFacade.shutdown();
     }
 
     @Override
index e0fecc2782fef84ae15f4f9c7ae0fdddcff6e1d3..c388c6826776ee31197fbe6b9c59d316c841ee55 100644 (file)
@@ -112,6 +112,14 @@ public class SwitchConnectionProviderImpl02Test {
         Assert.assertNotNull("Wrong -- getServerFacade return null",serverFacade);
     }
 
+    /**
+     * Test shutdown on unconfigured provider
+     */
+    @Test(expected = IllegalStateException.class)
+    public void testShutdownUnconfigured(){
+        startUp(TransportProtocol.TCP);
+        provider.shutdown();
+    }
     /**
      * Test unregister by wrong key
      */