X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=openflowplugin-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fopenflowplugin%2Fapi%2Fopenflow%2Fdevice%2FDeviceManager.java;h=0e199c26f8adb591e564a9982342c4241b72d6ba;hb=6e2627630ebabb37526133a13deeb62adcc85d35;hp=0283bcef393b9331060d07dce192ed85a69a2839;hpb=342c2317655d1e1db0cfe988681e8c5897dccf8d;p=openflowplugin.git diff --git a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/DeviceManager.java b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/DeviceManager.java index 0283bcef39..0e199c26f8 100644 --- a/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/DeviceManager.java +++ b/openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/DeviceManager.java @@ -9,38 +9,43 @@ package org.opendaylight.openflowplugin.api.openflow.device; import org.opendaylight.controller.md.sal.binding.api.NotificationPublishService; -import org.opendaylight.controller.md.sal.binding.api.NotificationService; -import org.opendaylight.controller.sal.binding.api.NotificationProviderService; - import org.opendaylight.openflowplugin.api.openflow.device.handlers.DeviceConnectedHandler; -import org.opendaylight.openflowplugin.api.openflow.device.handlers.DeviceContextClosedHandler; +import org.opendaylight.openflowplugin.api.openflow.device.handlers.DeviceDisconnectedHandler; import org.opendaylight.openflowplugin.api.openflow.device.handlers.DeviceInitializationPhaseHandler; -import org.opendaylight.openflowplugin.api.openflow.device.handlers.DeviceInitializator; +import org.opendaylight.openflowplugin.api.openflow.device.handlers.DeviceLifecycleSupervisor; +import org.opendaylight.openflowplugin.api.openflow.device.handlers.DeviceTerminationPhaseHandler; import org.opendaylight.openflowplugin.api.openflow.translator.TranslatorLibrarian; /** * This interface is responsible for instantiating DeviceContext and * registering transaction chain for each DeviceContext. Each device * has its own device context managed by this manager. - *

* Created by Martin Bobak <mbobak@cisco.com> on 25.2.2015. */ -public interface DeviceManager extends DeviceConnectedHandler, - TranslatorLibrarian, - DeviceInitializator, - DeviceInitializationPhaseHandler, DeviceContextClosedHandler { +public interface DeviceManager extends DeviceConnectedHandler, DeviceDisconnectedHandler, DeviceLifecycleSupervisor, + DeviceInitializationPhaseHandler, DeviceTerminationPhaseHandler, TranslatorLibrarian, AutoCloseable { /** - * Sets notification receiving service - * @param notificationService + * Sets notification publish service + * + * @param notificationPublishService */ - void setNotificationService(NotificationService notificationService); + void setNotificationPublishService(NotificationPublishService notificationPublishService); /** - * Sets notification publish service - * @param notificationPublishService + * invoked after all services injected + */ + void initialize(); + + /** + * Returning device context from map maintained in device manager + * This prevent to send whole device context to another context + * If device context not exists for nodeId it will return null + * + * @param deviceInfo@return device context or null */ - void setNotificationPublishService(NotificationPublishService notificationPublishService); + DeviceContext getDeviceContextFromNodeId(DeviceInfo deviceInfo); + void setStatisticsRpcEnabled(boolean isStatisticsRpcEnabled); }