DeviceContext holds device group registry 16/18316/1
authorMartin Bobak <mbobak@cisco.com>
Wed, 15 Apr 2015 09:04:57 +0000 (11:04 +0200)
committerMartin Bobak <mbobak@cisco.com>
Wed, 15 Apr 2015 09:08:05 +0000 (11:08 +0200)
Change-Id: I74e2d6f458fed5c6e59e953b9a502236fff0df0e
Signed-off-by: Martin Bobak <mbobak@cisco.com>
openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/device/DeviceContext.java
openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/device/DeviceContextImpl.java

index 8301c075a8425448be91dec53f2dbbe0c70cb7ec..e2b1d5ba2066fd2fac56449fc4faee5a18a49bef 100644 (file)
@@ -22,6 +22,7 @@ import org.opendaylight.openflowplugin.api.openflow.device.handlers.MessageHandl
 import org.opendaylight.openflowplugin.api.openflow.device.handlers.OutstandingMessageExtractor;
 import org.opendaylight.openflowplugin.api.openflow.device.listener.OpenflowMessageListenerFacade;
 import org.opendaylight.openflowplugin.api.openflow.registry.flow.DeviceFlowRegistry;
+import org.opendaylight.openflowplugin.api.openflow.registry.group.DeviceGroupRegistry;
 import org.opendaylight.openflowplugin.api.openflow.translator.TranslatorLibrarian;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.table.types.rev131026.TableFeatures;
 import org.opendaylight.yangtools.yang.binding.DataObject;
@@ -146,6 +147,12 @@ public interface DeviceContext extends OpenflowPluginTimer, MessageHandler, Tran
      * @return
      */
     DeviceFlowRegistry getDeviceFlowRegistry();
+    /**
+     * Method exposes device group registry used for storing group ids.
+     * @return
+     */
+    DeviceGroupRegistry getDeviceGroupRegistry();
+
 
     /**
      * store cancellable timeout handler of currently running barrier task
index 457ea043ed761754c1d27a02977094e0eb03e70f..cf1d75ff51ae02737b8737b22a09dc59674f116d 100644 (file)
@@ -33,11 +33,13 @@ import org.opendaylight.openflowplugin.api.openflow.device.TranslatorLibrary;
 import org.opendaylight.openflowplugin.api.openflow.device.Xid;
 import org.opendaylight.openflowplugin.api.openflow.device.exception.DeviceDataException;
 import org.opendaylight.openflowplugin.api.openflow.device.listener.OpenflowMessageListenerFacade;
-import org.opendaylight.openflowplugin.api.openflow.registry.flow.DeviceFlowRegistry;
 import org.opendaylight.openflowplugin.api.openflow.md.core.SwitchConnectionDistinguisher;
 import org.opendaylight.openflowplugin.api.openflow.md.core.TranslatorKey;
+import org.opendaylight.openflowplugin.api.openflow.registry.flow.DeviceFlowRegistry;
+import org.opendaylight.openflowplugin.api.openflow.registry.group.DeviceGroupRegistry;
 import org.opendaylight.openflowplugin.impl.common.NodeStaticReplyTranslatorUtil;
 import org.opendaylight.openflowplugin.impl.flow.registry.DeviceFlowRegistryImpl;
+import org.opendaylight.openflowplugin.impl.registry.group.DeviceGroupRegistryImpl;
 import org.opendaylight.openflowplugin.openflow.md.core.session.SwitchConnectionCookieOFImpl;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNodeConnector;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId;
@@ -87,6 +89,7 @@ public class DeviceContextImpl implements DeviceContext {
     private TranslatorLibrary translatorLibrary;
     private OpenflowMessageListenerFacade openflowMessageListenerFacade;
     private final DeviceFlowRegistry deviceFlowRegistry;
+    private final DeviceGroupRegistry deviceGroupRegistry;
     private Timeout barrierTaskTimeout;
     private NotificationProviderService notificationService;
 
@@ -103,6 +106,7 @@ public class DeviceContextImpl implements DeviceContext {
         auxiliaryConnectionContexts = new HashMap<>();
         requests = new HashMap<>();
         deviceFlowRegistry = new DeviceFlowRegistryImpl();
+        deviceGroupRegistry = new DeviceGroupRegistryImpl();
     }
 
     /**
@@ -200,6 +204,11 @@ public class DeviceContextImpl implements DeviceContext {
         return deviceFlowRegistry;
     }
 
+    @Override
+    public DeviceGroupRegistry getDeviceGroupRegistry() {
+        return deviceGroupRegistry;
+    }
+
     @Override
     public void processReply(final OfHeader ofHeader) {
         final RequestContext requestContext = getRequests().get(ofHeader.getXid());
@@ -298,7 +307,7 @@ public class DeviceContextImpl implements DeviceContext {
             nConnectorBuilder.addAugmentation(FlowCapableNodeConnectorStatisticsData.class, new FlowCapableNodeConnectorStatisticsDataBuilder().build());
             nConnectorBuilder.addAugmentation(FlowCapableNodeConnector.class, flowCapableNodeConnector);
             writeToTransaction(LogicalDatastoreType.OPERATIONAL, iiToNodeConnector, nConnectorBuilder.build());
-        } else if (portStatus.getReason().equals(PortReason.OFPPRDELETE) ) {
+        } else if (portStatus.getReason().equals(PortReason.OFPPRDELETE)) {
             addDeleteToTxChain(LogicalDatastoreType.OPERATIONAL, iiToNodeConnector);
         }
     }