diff --git a/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java b/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java index b72304e017b7d10ab560ae309b27de8ae665f41a..8bdbf463a765aca6dde64ccb8881162dae82c10b 100755 --- a/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java +++ b/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImpl.java @@ -1472,8 +1472,6 @@ IFlowReconcileListener, IInfoProvider, IHAListener { d = deviceMap.get(d.getDeviceKey()); if (null != d) continue; - else - break; } } else { deviceUpdates.add(new DeviceUpdate(d, DELETE, null)); @@ -1484,8 +1482,6 @@ IFlowReconcileListener, IInfoProvider, IHAListener { d = deviceMap.get(d.getDeviceKey()); if (null != d) continue; - else - break; } processUpdates(deviceUpdates); break; diff --git a/src/test/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImplTest.java b/src/test/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImplTest.java index df4d8e7ca069643094a1909fabdbd8bec4113e99..e266d4a0a0d464493418de1d65b9244ce82bd381 100644 --- a/src/test/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImplTest.java +++ b/src/test/java/net/floodlightcontroller/devicemanager/internal/DeviceManagerImplTest.java @@ -869,6 +869,10 @@ public class DeviceManagerImplTest extends FloodlightTestCase { } public void doTestDeviceExpiration() throws Exception { + IDeviceListener mockListener = + createStrictMock(IDeviceListener.class); + mockListener.deviceRemoved(isA(IDevice.class)); + Calendar c = Calendar.getInstance(); c.add(Calendar.MILLISECOND, -DeviceManagerImpl.ENTITY_TIMEOUT-1); Entity entity1 = new Entity(1L, null, 1, 1L, 1, c.getTime()); @@ -897,6 +901,8 @@ public class DeviceManagerImplTest extends FloodlightTestCase { d = deviceManager.learnDeviceByEntity(entity1); assertArrayEquals(new Integer[] { 1, 2 }, d.getIPv4Addresses()); + deviceManager.addListener(mockListener); + replay(mockListener); deviceManager.entityCleanupTask.reschedule(0, null); IDevice r = deviceManager.getDevice(d.getDeviceKey()); @@ -907,6 +913,8 @@ public class DeviceManagerImplTest extends FloodlightTestCase { r = deviceManager.findDevice(1L, null, null, null, null); assertNull(r); + + verify(mockListener); } /*