Bug-7004: NPE when configuring BGP peer using OpenConfig API twice
[bgpcep.git] / bgp / rib-impl / src / main / java / org / opendaylight / protocol / bgp / rib / impl / config / BgpPeer.java
index 92523b5489b77bbd7290c365dfdf5c81120ff0dd..beda7c7d1ba09b9d6f5f10aa8d2332cbabd8ffa1 100644 (file)
@@ -20,6 +20,7 @@ import com.google.common.util.concurrent.ListenableFuture;
 import io.netty.util.concurrent.Future;
 import java.net.InetSocketAddress;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 import java.util.Objects;
 import org.opendaylight.controller.config.yang.bgp.rib.impl.BGPPeerRuntimeMXBean;
@@ -112,8 +113,8 @@ public final class BgpPeer implements PeerBean, BGPPeerRuntimeMXBean {
     public Boolean containsEqualConfiguration(final Neighbor neighbor) {
         final AfiSafis actAfiSafi = this.currentConfiguration.getAfiSafis();
         final AfiSafis extAfiSafi = neighbor.getAfiSafis();
-        final List<AfiSafi> actualSafi = actAfiSafi.getAfiSafi();
-        final List<AfiSafi> extSafi = extAfiSafi.getAfiSafi();
+        final List<AfiSafi> actualSafi = actAfiSafi != null ? actAfiSafi.getAfiSafi() : Collections.emptyList();
+        final List<AfiSafi> extSafi = extAfiSafi != null ? extAfiSafi.getAfiSafi() : Collections.emptyList();
         return actualSafi.containsAll(extSafi) && extSafi.containsAll(actualSafi)
         && Objects.equals(this.currentConfiguration.getConfig(), neighbor.getConfig())
         && Objects.equals(this.currentConfiguration.getNeighborAddress(), neighbor.getNeighborAddress())