Sho SHIMIZU
Committed by Gerrit Code Review

ONOS-2691: Register a port as resource when is is added

Change-Id: I8acdf4752cb349c3b87a23240695ffb369c4c48e
...@@ -17,6 +17,7 @@ package org.onosproject.net.newresource.impl; ...@@ -17,6 +17,7 @@ package org.onosproject.net.newresource.impl;
17 17
18 import org.onosproject.net.Device; 18 import org.onosproject.net.Device;
19 import org.onosproject.net.DeviceId; 19 import org.onosproject.net.DeviceId;
20 +import org.onosproject.net.Port;
20 import org.onosproject.net.device.DeviceEvent; 21 import org.onosproject.net.device.DeviceEvent;
21 import org.onosproject.net.device.DeviceListener; 22 import org.onosproject.net.device.DeviceListener;
22 import org.onosproject.net.newresource.ResourceAdminService; 23 import org.onosproject.net.newresource.ResourceAdminService;
...@@ -52,6 +53,8 @@ final class ResourceDeviceListener implements DeviceListener { ...@@ -52,6 +53,8 @@ final class ResourceDeviceListener implements DeviceListener {
52 case DEVICE_ADDED: 53 case DEVICE_ADDED:
53 registerDeviceResource(device); 54 registerDeviceResource(device);
54 break; 55 break;
56 + case PORT_ADDED:
57 + registerPortResource(device, event.port());
55 default: 58 default:
56 break; 59 break;
57 } 60 }
...@@ -61,4 +64,9 @@ final class ResourceDeviceListener implements DeviceListener { ...@@ -61,4 +64,9 @@ final class ResourceDeviceListener implements DeviceListener {
61 DeviceId deviceId = device.id(); 64 DeviceId deviceId = device.id();
62 executor.submit(() -> adminService.registerResources(new ResourcePath(ResourcePath.ROOT, deviceId))); 65 executor.submit(() -> adminService.registerResources(new ResourcePath(ResourcePath.ROOT, deviceId)));
63 } 66 }
67 +
68 + private void registerPortResource(Device device, Port port) {
69 + ResourcePath parent = new ResourcePath(device.id());
70 + executor.submit(() -> adminService.registerResources(parent, port.number()));
71 + }
64 } 72 }
......