ONOS-2694: Unregister a device from resources when it is removed

Change-Id: I01e4dad8eea3e8042749d63696e1c1f2162c78f7
This commit is contained in:
Sho SHIMIZU 2015-08-20 11:51:49 -07:00 committed by Gerrit Code Review
parent c2ddedda4d
commit e60a5ab8a2

View File

@ -52,6 +52,9 @@ final class ResourceDeviceListener implements DeviceListener {
case DEVICE_ADDED:
registerDeviceResource(device);
break;
case DEVICE_REMOVED:
unregisterDeviceResource(device);
break;
case PORT_ADDED:
registerPortResource(device, event.port());
break;
@ -64,6 +67,10 @@ final class ResourceDeviceListener implements DeviceListener {
executor.submit(() -> adminService.registerResources(ResourcePath.ROOT, device.id()));
}
private void unregisterDeviceResource(Device device) {
executor.submit(() -> adminService.unregisterResources(ResourcePath.ROOT, device.id()));
}
private void registerPortResource(Device device, Port port) {
ResourcePath parent = new ResourcePath(device.id());
executor.submit(() -> adminService.registerResources(parent, port.number()));