Bump versions to 0.21.8-SNAPSHOT
[bgpcep.git] / bgp / rib-impl / src / main / java / org / opendaylight / protocol / bgp / rib / impl / spi / RIB.java
old mode 100755 (executable)
new mode 100644 (file)
index b1da819..9896ba8
@@ -8,27 +8,23 @@
 package org.opendaylight.protocol.bgp.rib.impl.spi;
 
 import java.util.Set;
-import javax.annotation.Nonnull;
-import org.opendaylight.controller.md.sal.binding.api.BindingTransactionChain;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionChainListener;
-import org.opendaylight.controller.md.sal.dom.api.DOMDataTreeChangeService;
-import org.opendaylight.controller.md.sal.dom.api.DOMTransactionChain;
+import org.eclipse.jdt.annotation.NonNull;
+import org.opendaylight.mdsal.dom.api.DOMDataBroker.DataTreeChangeExtension;
+import org.opendaylight.mdsal.dom.api.DOMTransactionChain;
 import org.opendaylight.protocol.bgp.rib.RibReference;
 import org.opendaylight.protocol.bgp.rib.spi.BGPPeerTracker;
-import org.opendaylight.protocol.bgp.rib.spi.ExportPolicyPeerTracker;
 import org.opendaylight.protocol.bgp.rib.spi.RIBExtensionConsumerContext;
 import org.opendaylight.protocol.bgp.rib.spi.policy.BGPRibRoutingPolicy;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.AsNumber;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.multiprotocol.rev171207.BgpTableType;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.rib.rev171207.rib.TablesKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev130919.BgpId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.multiprotocol.rev180329.BgpTableType;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.rib.rev180329.rib.TablesKey;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev200120.BgpId;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 
 /**
  * Internal reference to a RIB instance.
  */
-public interface RIB extends RibReference {
+public interface RIB extends RibReference, RibOutRefresh {
     /**
      * RIB AS.
      *
@@ -44,26 +40,16 @@ public interface RIB extends RibReference {
      *
      * @return A set of identifiers.
      */
-    @Nonnull
-    Set<? extends BgpTableType> getLocalTables();
+    @NonNull Set<? extends BgpTableType> getLocalTables();
 
     BGPDispatcher getDispatcher();
 
     /**
      * Allocate a new transaction chain for use with a peer.
      *
-     * @param listener {@link TransactionChainListener} handling recovery
      * @return A new transaction chain.
      */
-    DOMTransactionChain createPeerDOMChain(TransactionChainListener listener);
-
-    /**
-     * Allocate a new transaction chain for use with a peer.
-     *
-     * @param listener {@link TransactionChainListener} handling recovery
-     * @return A new transaction chain.
-     */
-    BindingTransactionChain createPeerChain(TransactionChainListener listener);
+    DOMTransactionChain createPeerDOMChain();
 
     /**
      * Return the RIB extensions available to the RIB instance.
@@ -96,24 +82,7 @@ public interface RIB extends RibReference {
      *
      * @return DOMDataTreeChangeService
      */
-    DOMDataTreeChangeService getService();
-
-    /**
-     * Returns ExportPolicyPeerTracker for specific tableKey, where peer can register himself
-     * as supporting the table. Same export policy can be used to check which peers support respective
-     * table and announce then routes if required.
-     *
-     * @param tablesKey supported table
-     * @return ExportPolicyPeerTracker
-     */
-    ExportPolicyPeerTracker getExportPolicyPeerTracker(TablesKey tablesKey);
-
-    /**
-     * Return DataBroker
-     *
-     * @return DataTreeChangeService
-     */
-    DataBroker getDataBroker();
+    DataTreeChangeExtension getService();
 
     /**
      * Returns true if RIB supports table.