From d3b898504281f4fd249f6e47944cb82a86427ea8 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Sat, 16 May 2015 18:15:38 +0200 Subject: [PATCH] Fix various warnings Fixes raw RequestContext references, as well as unclosed test resources. Change-Id: Ia2aa821e0d520fa26e2de66e30f09de7cf300ba5 Signed-off-by: Robert Varga --- .../test/java/test/mock/NodeListenerTest.java | 31 +++++++++---------- .../api/openflow/device/DeviceContext.java | 6 ++-- .../device/handlers/MessageHandler.java | 2 +- .../handlers/OutstandingMessageExtractor.java | 2 +- .../registry/flow/DeviceFlowRegistry.java | 6 ++-- .../registry/group/DeviceGroupRegistry.java | 2 ++ .../registry/meter/DeviceMeterRegistry.java | 3 +- .../impl/device/DeviceContextImpl.java | 19 ++++++------ .../registry/flow/DeviceFlowRegistryImpl.java | 8 ++--- .../group/DeviceGroupRegistryImpl.java | 2 +- .../meter/DeviceMeterRegistryImpl.java | 2 +- .../openflow/device/RpcContextImplTest.java | 15 ++++----- .../impl/device/DeviceContextImplTest.java | 8 ++--- 13 files changed, 54 insertions(+), 52 deletions(-) diff --git a/applications/forwardingrules-manager/src/test/java/test/mock/NodeListenerTest.java b/applications/forwardingrules-manager/src/test/java/test/mock/NodeListenerTest.java index f8b8b5920e..56b940b539 100644 --- a/applications/forwardingrules-manager/src/test/java/test/mock/NodeListenerTest.java +++ b/applications/forwardingrules-manager/src/test/java/test/mock/NodeListenerTest.java @@ -7,6 +7,8 @@ */ package test.mock; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; import org.junit.Test; import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry; import org.opendaylight.openflowplugin.applications.frm.impl.ForwardingRulesManagerImpl; @@ -16,37 +18,32 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node; import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; - import test.mock.util.FRMTest; import test.mock.util.RpcProviderRegistryMock; -import java.util.concurrent.ExecutionException; - -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertTrue; - public class NodeListenerTest extends FRMTest { RpcProviderRegistry rpcProviderRegistryMock = new RpcProviderRegistryMock(); NodeKey s1Key = new NodeKey(new NodeId("S1")); @Test - public void addRemoveNodeTest() throws ExecutionException, InterruptedException { - ForwardingRulesManagerImpl forwardingRulesManager = new ForwardingRulesManagerImpl(getDataBroker(), rpcProviderRegistryMock); - forwardingRulesManager.start(); + public void addRemoveNodeTest() throws Exception { + try (ForwardingRulesManagerImpl forwardingRulesManager = new ForwardingRulesManagerImpl(getDataBroker(), rpcProviderRegistryMock)) { + forwardingRulesManager.start(); - addFlowCapableNode(s1Key); + addFlowCapableNode(s1Key); - InstanceIdentifier nodeII = InstanceIdentifier.create(Nodes.class).child(Node.class, s1Key) - .augmentation(FlowCapableNode.class); + InstanceIdentifier nodeII = InstanceIdentifier.create(Nodes.class).child(Node.class, s1Key) + .augmentation(FlowCapableNode.class); - boolean nodeActive = forwardingRulesManager.isNodeActive(nodeII); - assertTrue(nodeActive); + boolean nodeActive = forwardingRulesManager.isNodeActive(nodeII); + assertTrue(nodeActive); - removeNode(s1Key); + removeNode(s1Key); - nodeActive = forwardingRulesManager.isNodeActive(nodeII); - assertFalse(nodeActive); + nodeActive = forwardingRulesManager.isNodeActive(nodeII); + assertFalse(nodeActive); + } } diff --git a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/DeviceContext.java b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/DeviceContext.java index 63a5951696..f6adb9ef01 100644 --- a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/DeviceContext.java +++ b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/DeviceContext.java @@ -116,7 +116,7 @@ public interface DeviceContext extends AutoCloseable, * @param xid key * @return request by xid */ - RequestContext lookupRequest(Xid xid); + RequestContext lookupRequest(Xid xid); /** * @return number of outstanding requests in map @@ -130,14 +130,14 @@ public interface DeviceContext extends AutoCloseable, * @param xid * @param requestFutureContext */ - void hookRequestCtx(Xid xid, RequestContext requestFutureContext); + void hookRequestCtx(Xid xid, RequestContext requestFutureContext); /** * Method removes request context from request context map. * * @param xid */ - RequestContext unhookRequestCtx(Xid xid); + RequestContext unhookRequestCtx(Xid xid); /** * Method exposes flow registry used for storing flow ids identified by calculated flow hash. diff --git a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/handlers/MessageHandler.java b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/handlers/MessageHandler.java index c21cb41fff..08f2aac633 100644 --- a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/handlers/MessageHandler.java +++ b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/handlers/MessageHandler.java @@ -17,5 +17,5 @@ import org.opendaylight.yangtools.yang.binding.DataObject; */ public interface MessageHandler { - > void onMessage(M message, RequestContext requestContext); + > void onMessage(M message, RequestContext requestContext); } diff --git a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/handlers/OutstandingMessageExtractor.java b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/handlers/OutstandingMessageExtractor.java index 8c78b89b45..a7700d0a63 100644 --- a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/handlers/OutstandingMessageExtractor.java +++ b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/handlers/OutstandingMessageExtractor.java @@ -19,5 +19,5 @@ public interface OutstandingMessageExtractor { * @param barrierXid * @return next older message, delivered messages will be removed from original cache */ - RequestContext extractNextOutstandingMessage(long barrierXid); + RequestContext extractNextOutstandingMessage(long barrierXid); } diff --git a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/flow/DeviceFlowRegistry.java b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/flow/DeviceFlowRegistry.java index 99fe2fd016..19d0475d44 100644 --- a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/flow/DeviceFlowRegistry.java +++ b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/flow/DeviceFlowRegistry.java @@ -9,9 +9,8 @@ package org.opendaylight.openflowplugin.api.openflow.registry.flow; -import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowId; - import java.util.Map; +import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowId; /** * Created by Martin Bobak <mbobak@cisco.com> on 8.4.2015. @@ -29,4 +28,7 @@ public interface DeviceFlowRegistry extends AutoCloseable { void removeMarked(); Map getAllFlowDescriptors(); + + @Override + void close(); } diff --git a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/group/DeviceGroupRegistry.java b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/group/DeviceGroupRegistry.java index 637705df3d..05eb9f6d0d 100644 --- a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/group/DeviceGroupRegistry.java +++ b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/group/DeviceGroupRegistry.java @@ -24,4 +24,6 @@ public interface DeviceGroupRegistry extends AutoCloseable { List getAllGroupIds(); + @Override + void close(); } diff --git a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/meter/DeviceMeterRegistry.java b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/meter/DeviceMeterRegistry.java index 4ff8cbe0b1..12540cb086 100644 --- a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/meter/DeviceMeterRegistry.java +++ b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/registry/meter/DeviceMeterRegistry.java @@ -24,6 +24,7 @@ public interface DeviceMeterRegistry extends AutoCloseable { List getAllMeterIds(); - + @Override + void close(); } diff --git a/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/device/DeviceContextImpl.java b/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/device/DeviceContextImpl.java index fe3a170220..b922bcca2a 100644 --- a/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/device/DeviceContextImpl.java +++ b/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/device/DeviceContextImpl.java @@ -99,7 +99,7 @@ public class DeviceContextImpl implements DeviceContext { private final DeviceState deviceState; private final DataBroker dataBroker; private final HashedWheelTimer hashedWheelTimer; - private final Map requests = new TreeMap<>(); + private final Map> requests = new TreeMap<>(); private final Map auxiliaryConnectionContexts; private final TransactionChainManager txChainManager; @@ -163,7 +163,7 @@ public class DeviceContextImpl implements DeviceContext { } @Override - public > void onMessage(final M message, final RequestContext requestContext) { + public > void onMessage(final M message, final RequestContext requestContext) { // TODO Auto-generated method stub } @@ -215,7 +215,7 @@ public class DeviceContextImpl implements DeviceContext { } @Override - public RequestContext lookupRequest(final Xid xid) { + public RequestContext lookupRequest(final Xid xid) { synchronized (requests) { return requests.get(xid.getValue()); } @@ -229,14 +229,14 @@ public class DeviceContextImpl implements DeviceContext { } @Override - public void hookRequestCtx(final Xid xid, final RequestContext requestFutureContext) { + public void hookRequestCtx(final Xid xid, final RequestContext requestFutureContext) { synchronized (requests) { requests.put(xid.getValue(), requestFutureContext); } } @Override - public RequestContext unhookRequestCtx(final Xid xid) { + public RequestContext unhookRequestCtx(final Xid xid) { synchronized (requests) { return requests.remove(xid.getValue()); } @@ -464,7 +464,7 @@ public class DeviceContextImpl implements DeviceContext { } @Override - public void close() throws Exception { + public void close() { deviceState.setValid(false); LOG.trace("Removing node {} from operational DS.", getDeviceState().getNodeId()); @@ -478,7 +478,7 @@ public class DeviceContextImpl implements DeviceContext { primaryConnectionContext.setConnectionState(ConnectionContext.CONNECTION_STATE.RIP); primaryConnectionContext.getConnectionAdapter().disconnect(); } - for (final Map.Entry entry : requests.entrySet()) { + for (final Map.Entry> entry : requests.entrySet()) { RequestContextUtil.closeRequestContextWithRpcError(entry.getValue(), DEVICE_DISCONNECTED); } for (final ConnectionContext connectionContext : auxiliaryConnectionContexts.values()) { @@ -489,7 +489,6 @@ public class DeviceContextImpl implements DeviceContext { for (final DeviceContextClosedHandler deviceContextClosedHandler : closeHandlers) { deviceContextClosedHandler.onDeviceContextClosed(this); } - } @Override @@ -510,8 +509,8 @@ public class DeviceContextImpl implements DeviceContext { } @Override - public RequestContext extractNextOutstandingMessage(final long barrierXid) { - RequestContext nextMessage = null; + public RequestContext extractNextOutstandingMessage(final long barrierXid) { + RequestContext nextMessage = null; synchronized (requests) { final Iterator keyIterator = requests.keySet().iterator(); if (keyIterator.hasNext()) { diff --git a/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/flow/DeviceFlowRegistryImpl.java b/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/flow/DeviceFlowRegistryImpl.java index f50ef956f2..02dceac8b5 100644 --- a/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/flow/DeviceFlowRegistryImpl.java +++ b/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/flow/DeviceFlowRegistryImpl.java @@ -8,8 +8,6 @@ package org.opendaylight.openflowplugin.impl.registry.flow; -import org.opendaylight.openflowplugin.impl.util.FlowUtil; -import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowId; import java.util.Collection; import java.util.HashMap; import java.util.HashSet; @@ -17,6 +15,8 @@ import java.util.Map; import org.opendaylight.openflowplugin.api.openflow.registry.flow.DeviceFlowRegistry; import org.opendaylight.openflowplugin.api.openflow.registry.flow.FlowDescriptor; import org.opendaylight.openflowplugin.api.openflow.registry.flow.FlowHash; +import org.opendaylight.openflowplugin.impl.util.FlowUtil; +import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowId; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -60,7 +60,7 @@ public class DeviceFlowRegistryImpl implements DeviceFlowRegistry { } } } - + @Override public void markToBeremoved(final FlowHash flowHash) { synchronized (marks) { @@ -90,7 +90,7 @@ public class DeviceFlowRegistryImpl implements DeviceFlowRegistry { } @Override - public void close() throws Exception { + public void close() { flowRegistry.clear(); marks.clear(); } diff --git a/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/group/DeviceGroupRegistryImpl.java b/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/group/DeviceGroupRegistryImpl.java index 001ccaaad7..1698929974 100644 --- a/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/group/DeviceGroupRegistryImpl.java +++ b/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/group/DeviceGroupRegistryImpl.java @@ -45,7 +45,7 @@ public class DeviceGroupRegistryImpl implements DeviceGroupRegistry { } @Override - public void close() throws Exception { + public void close() { synchronized (groupIdList) { groupIdList.clear(); } diff --git a/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/meter/DeviceMeterRegistryImpl.java b/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/meter/DeviceMeterRegistryImpl.java index 4d15fe3b86..c5e2192a53 100644 --- a/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/meter/DeviceMeterRegistryImpl.java +++ b/openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/registry/meter/DeviceMeterRegistryImpl.java @@ -47,7 +47,7 @@ public class DeviceMeterRegistryImpl implements DeviceMeterRegistry { } @Override - public void close() throws Exception { + public void close() { synchronized (meterIds) { meterIds.clear(); } diff --git a/openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/api/openflow/device/RpcContextImplTest.java b/openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/api/openflow/device/RpcContextImplTest.java index 4df1a484e6..a8308120af 100644 --- a/openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/api/openflow/device/RpcContextImplTest.java +++ b/openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/api/openflow/device/RpcContextImplTest.java @@ -59,16 +59,17 @@ public class RpcContextImplTest { @Test public void testStoreOrFail() throws Exception { - final RpcContext rpcContext = new RpcContextImpl(messageSpy, mockedRpcProviderRegistry, deviceContext, 100); - RequestContext requestContext = rpcContext.createRequestContext(); - assertNotNull(requestContext); - + try (final RpcContext rpcContext = new RpcContextImpl(messageSpy, mockedRpcProviderRegistry, deviceContext, 100)) { + RequestContext requestContext = rpcContext.createRequestContext(); + assertNotNull(requestContext); + } } @Test public void testStoreOrFailThatFails() throws Exception { - final RpcContext rpcContext = new RpcContextImpl(messageSpy, mockedRpcProviderRegistry, deviceContext, 0); - RequestContext requestContext = rpcContext.createRequestContext(); - assertNull(requestContext); + try (final RpcContext rpcContext = new RpcContextImpl(messageSpy, mockedRpcProviderRegistry, deviceContext, 0)) { + RequestContext requestContext = rpcContext.createRequestContext(); + assertNull(requestContext); + } } } diff --git a/openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/impl/device/DeviceContextImplTest.java b/openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/impl/device/DeviceContextImplTest.java index 4557accb23..c4427038d0 100644 --- a/openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/impl/device/DeviceContextImplTest.java +++ b/openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/impl/device/DeviceContextImplTest.java @@ -127,22 +127,22 @@ public class DeviceContextImplTest { @Test(expected = NullPointerException.class) public void testDeviceContextImplConstructorNullConnectionContext() { - new DeviceContextImpl(null, deviceState, dataBroker, timer, messageIntelligenceAgency,throttledConnectionsHolder); + new DeviceContextImpl(null, deviceState, dataBroker, timer, messageIntelligenceAgency,throttledConnectionsHolder).close(); } @Test(expected = NullPointerException.class) public void testDeviceContextImplConstructorNullDataBroker() { - new DeviceContextImpl(connectionContext, deviceState, null, timer, messageIntelligenceAgency,throttledConnectionsHolder); + new DeviceContextImpl(connectionContext, deviceState, null, timer, messageIntelligenceAgency,throttledConnectionsHolder).close(); } @Test(expected = NullPointerException.class) public void testDeviceContextImplConstructorNullDeviceState() { - new DeviceContextImpl(connectionContext, null, dataBroker, timer, messageIntelligenceAgency,throttledConnectionsHolder); + new DeviceContextImpl(connectionContext, null, dataBroker, timer, messageIntelligenceAgency,throttledConnectionsHolder).close(); } @Test(expected = NullPointerException.class) public void testDeviceContextImplConstructorNullTimer() { - new DeviceContextImpl(null, deviceState, dataBroker, null, messageIntelligenceAgency,throttledConnectionsHolder); + new DeviceContextImpl(null, deviceState, dataBroker, null, messageIntelligenceAgency,throttledConnectionsHolder).close(); } @Test -- 2.36.6