Merge "Fix modules Restconf call for mounted devices"
[controller.git] / opendaylight / md-sal / sal-remoterpc-connector / src / main / java / org / opendaylight / controller / remote / rpc / RoutedRpcListener.java
index 2aaac5a78ed531fc830bfca7540d2603a2e0f41b..c354320b8bea6bc450daeb976bdbe82d1e6f1ed9 100644 (file)
@@ -11,6 +11,10 @@ package org.opendaylight.controller.remote.rpc;
 
 import akka.actor.ActorRef;
 import com.google.common.base.Preconditions;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
 import org.opendaylight.controller.md.sal.common.api.routing.RouteChange;
 import org.opendaylight.controller.md.sal.common.api.routing.RouteChangeListener;
 import org.opendaylight.controller.remote.rpc.registry.RpcRegistry;
@@ -20,73 +24,69 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
 public class RoutedRpcListener implements RouteChangeListener<RpcRoutingContext, YangInstanceIdentifier>{
-  private static final Logger LOG = LoggerFactory.getLogger(RoutedRpcListener.class);
-  private final ActorRef rpcRegistry;
+    private static final Logger LOG = LoggerFactory.getLogger(RoutedRpcListener.class);
+    private final ActorRef rpcRegistry;
 
-  public RoutedRpcListener(ActorRef rpcRegistry) {
-    Preconditions.checkNotNull(rpcRegistry, "rpc registry actor should not be null");
-
-    this.rpcRegistry = rpcRegistry;
-  }
-
-  @Override
-  public void onRouteChange(RouteChange<RpcRoutingContext, YangInstanceIdentifier> routeChange) {
-    Map<RpcRoutingContext, Set<YangInstanceIdentifier>> announcements = routeChange.getAnnouncements();
-    if(announcements != null && announcements.size() > 0){
-      announce(getRouteIdentifiers(announcements));
+    public RoutedRpcListener(final ActorRef rpcRegistry) {
+        Preconditions.checkNotNull(rpcRegistry, "rpc registry actor should not be null");
+        this.rpcRegistry = rpcRegistry;
     }
 
-    Map<RpcRoutingContext, Set<YangInstanceIdentifier>> removals = routeChange.getRemovals();
-    if(removals != null && removals.size() > 0 ) {
-      remove(getRouteIdentifiers(removals));
+    @Override
+    public void onRouteChange(final RouteChange<RpcRoutingContext, YangInstanceIdentifier> routeChange) {
+        final Map<RpcRoutingContext, Set<YangInstanceIdentifier>> announcements = routeChange.getAnnouncements();
+        if(announcements != null && announcements.size() > 0){
+            announce(getRouteIdentifiers(announcements));
+        }
+
+        final Map<RpcRoutingContext, Set<YangInstanceIdentifier>> removals = routeChange.getRemovals();
+        if(removals != null && removals.size() > 0 ) {
+            remove(getRouteIdentifiers(removals));
+        }
     }
-  }
 
-  /**
-   *
-   * @param announcements
-   */
-  private void announce(Set<RpcRouter.RouteIdentifier<?, ?, ?>> announcements) {
-    if(LOG.isDebugEnabled()) {
-        LOG.debug("Announcing [{}]", announcements);
+    /**
+     *
+     * @param announcements
+     */
+    private void announce(final Set<RpcRouter.RouteIdentifier<?, ?, ?>> announcements) {
+        if(LOG.isDebugEnabled()) {
+            LOG.debug("Announcing [{}]", announcements);
+        }
+        final RpcRegistry.Messages.AddOrUpdateRoutes addRpcMsg =
+                new RpcRegistry.Messages.AddOrUpdateRoutes(new ArrayList<>(announcements));
+        rpcRegistry.tell(addRpcMsg, ActorRef.noSender());
     }
-    RpcRegistry.Messages.AddOrUpdateRoutes addRpcMsg = new RpcRegistry.Messages.AddOrUpdateRoutes(new ArrayList<>(announcements));
-    rpcRegistry.tell(addRpcMsg, ActorRef.noSender());
-  }
 
-  /**
-   *
-   * @param removals
-   */
-  private void remove(Set<RpcRouter.RouteIdentifier<?, ?, ?>> removals){
-    if(LOG.isDebugEnabled()) {
-        LOG.debug("Removing [{}]", removals);
+    /**
+     *
+     * @param removals
+     */
+    private void remove(final Set<RpcRouter.RouteIdentifier<?, ?, ?>> removals){
+        if(LOG.isDebugEnabled()) {
+            LOG.debug("Removing [{}]", removals);
+        }
+        final RpcRegistry.Messages.RemoveRoutes removeRpcMsg =
+                new RpcRegistry.Messages.RemoveRoutes(new ArrayList<>(removals));
+        rpcRegistry.tell(removeRpcMsg, ActorRef.noSender());
     }
-    RpcRegistry.Messages.RemoveRoutes removeRpcMsg = new RpcRegistry.Messages.RemoveRoutes(new ArrayList<>(removals));
-    rpcRegistry.tell(removeRpcMsg, ActorRef.noSender());
-  }
 
-  /**
-   *
-   * @param changes
-   * @return
-   */
-  private Set<RpcRouter.RouteIdentifier<?, ?, ?>> getRouteIdentifiers(Map<RpcRoutingContext, Set<YangInstanceIdentifier>> changes) {
-    RouteIdentifierImpl routeId = null;
-    Set<RpcRouter.RouteIdentifier<?, ?, ?>> routeIdSet = new HashSet<>();
+    /**
+     *
+     * @param changes
+     * @return
+     */
+    private Set<RpcRouter.RouteIdentifier<?, ?, ?>> getRouteIdentifiers(
+            final Map<RpcRoutingContext, Set<YangInstanceIdentifier>> changes) {
 
-    for (RpcRoutingContext context : changes.keySet()){
-      for (YangInstanceIdentifier instanceId : changes.get(context)){
-        routeId = new RouteIdentifierImpl(null, context.getRpc(), instanceId);
-        routeIdSet.add(routeId);
-      }
+        final Set<RpcRouter.RouteIdentifier<?, ?, ?>> routeIdSet = new HashSet<>();
+        for (final RpcRoutingContext context : changes.keySet()){
+            for (final YangInstanceIdentifier instanceId : changes.get(context)){
+                final RouteIdentifierImpl routeId = new RouteIdentifierImpl(null, context.getRpc(), instanceId);
+                routeIdSet.add(routeId);
+            }
+        }
+        return routeIdSet;
     }
-    return routeIdSet;
-  }
 }