Class VrfEntryListener

  • All Implemented Interfaces:
    java.lang.AutoCloseable, java.util.EventListener, org.opendaylight.controller.md.sal.binding.api.DataTreeChangeListener<VrfEntry>, org.opendaylight.serviceutils.tools.mdsal.listener.ChainableDataTreeChangeListener<VrfEntry>

    @Singleton
    public class VrfEntryListener
    extends org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,​VrfEntryListener>
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase

        org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase.DataTreeChangeHandler
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static org.opendaylight.yangtools.yang.common.Uint64 COOKIE_TUNNEL  
      • Fields inherited from class org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase

        clazz
    • Constructor Summary

      Constructors 
      Constructor Description
      VrfEntryListener​(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker, org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalApiManager, NexthopManager nexthopManager, IElanService elanManager, BaseVrfEntryHandler vrfEntryHandler, BgpRouteVrfEntryHandler bgpRouteVrfEntryHandler, RouterInterfaceVrfEntryHandler routerInterfaceVrfEntryHandler, org.opendaylight.infrautils.jobcoordinator.JobCoordinator jobCoordinator, FibUtil fibUtil, InterVpnLinkCache interVpnLinkCache, org.opendaylight.serviceutils.upgrade.UpgradeState upgradeState, org.opendaylight.genius.datastoreutils.listeners.DataTreeEventCallbackRegistrar eventCallbacks)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void add​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier, VrfEntry vrfEntry)  
      static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfTables> buildVrfId​(java.lang.String rd)  
      void cleanUpDpnForVpn​(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, com.google.common.util.concurrent.FutureCallback<java.util.List<java.lang.Void>> callback)  
      void cleanUpExternalRoutesOnDpn​(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String localNextHopIp, java.lang.String remoteNextHopIp)  
      protected void cleanUpOpDataForFib​(org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String primaryRd, VrfEntry vrfEntry)  
      void close()  
      void createTerminatingServiceActions​(org.opendaylight.yangtools.yang.common.Uint64 destDpId, org.opendaylight.yangtools.yang.common.Uint32 label, java.util.List<org.opendaylight.genius.mdsalutil.ActionInfo> actionsInfos, org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> tx)  
      java.util.List<org.opendaylight.yangtools.yang.common.Uint64> deleteLocalFibEntry​(org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, VrfEntry vrfEntry)  
      protected VrfEntryListener getDataTreeChangeListener()  
      protected org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> getWildCardPath()  
      void init()  
      void manageRemoteRouteOnDPN​(boolean action, org.opendaylight.yangtools.yang.common.Uint64 localDpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String destPrefix, java.lang.String destTepIp, org.opendaylight.yangtools.yang.common.Uint32 label)  
      void populateExternalRoutesOnDpn​(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, java.lang.String localNextHopIp, java.lang.String remoteNextHopIp)  
      void populateFibOnNewDpn​(org.opendaylight.yangtools.yang.common.Uint64 dpnId, org.opendaylight.yangtools.yang.common.Uint32 vpnId, java.lang.String rd, com.google.common.util.concurrent.FutureCallback<java.util.List<java.lang.Void>> callback)  
      protected void remove​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier, VrfEntry vrfEntry)  
      void removeInterVPNLinkRouteFlows​(InterVpnLinkDataComposite interVpnLink, java.lang.String vpnName, VrfEntry vrfEntry)  
      protected void update​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier, VrfEntry original, VrfEntry update)  
      • Methods inherited from class org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase

        addAfterListener, addBeforeListener, deregisterListener, onDataTreeChanged, registerListener
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • COOKIE_TUNNEL

        public static final org.opendaylight.yangtools.yang.common.Uint64 COOKIE_TUNNEL
    • Constructor Detail

      • VrfEntryListener

        @Inject
        public VrfEntryListener​(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
                                org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager mdsalApiManager,
                                NexthopManager nexthopManager,
                                IElanService elanManager,
                                BaseVrfEntryHandler vrfEntryHandler,
                                BgpRouteVrfEntryHandler bgpRouteVrfEntryHandler,
                                RouterInterfaceVrfEntryHandler routerInterfaceVrfEntryHandler,
                                org.opendaylight.infrautils.jobcoordinator.JobCoordinator jobCoordinator,
                                FibUtil fibUtil,
                                InterVpnLinkCache interVpnLinkCache,
                                org.opendaylight.serviceutils.upgrade.UpgradeState upgradeState,
                                org.opendaylight.genius.datastoreutils.listeners.DataTreeEventCallbackRegistrar eventCallbacks)
    • Method Detail

      • init

        @PostConstruct
        public void init()
        Overrides:
        init in class org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,​VrfEntryListener>
      • close

        public void close()
        Specified by:
        close in interface java.lang.AutoCloseable
        Overrides:
        close in class org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,​VrfEntryListener>
      • getDataTreeChangeListener

        protected VrfEntryListener getDataTreeChangeListener()
        Specified by:
        getDataTreeChangeListener in class org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,​VrfEntryListener>
      • getWildCardPath

        protected org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> getWildCardPath()
        Specified by:
        getWildCardPath in class org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,​VrfEntryListener>
      • add

        protected void add​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier,
                           VrfEntry vrfEntry)
        Specified by:
        add in class org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,​VrfEntryListener>
      • remove

        protected void remove​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier,
                              VrfEntry vrfEntry)
        Specified by:
        remove in class org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,​VrfEntryListener>
      • update

        protected void update​(org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfEntry> identifier,
                              VrfEntry original,
                              VrfEntry update)
        Specified by:
        update in class org.opendaylight.genius.datastoreutils.AsyncDataTreeChangeListenerBase<VrfEntry,​VrfEntryListener>
      • createTerminatingServiceActions

        public void createTerminatingServiceActions​(org.opendaylight.yangtools.yang.common.Uint64 destDpId,
                                                    org.opendaylight.yangtools.yang.common.Uint32 label,
                                                    java.util.List<org.opendaylight.genius.mdsalutil.ActionInfo> actionsInfos,
                                                    org.opendaylight.genius.infra.TypedWriteTransaction<org.opendaylight.genius.infra.Datastore.Configuration> tx)
      • deleteLocalFibEntry

        public java.util.List<org.opendaylight.yangtools.yang.common.Uint64> deleteLocalFibEntry​(org.opendaylight.yangtools.yang.common.Uint32 vpnId,
                                                                                                 java.lang.String rd,
                                                                                                 VrfEntry vrfEntry)
      • cleanUpOpDataForFib

        protected void cleanUpOpDataForFib​(org.opendaylight.yangtools.yang.common.Uint32 vpnId,
                                           java.lang.String primaryRd,
                                           VrfEntry vrfEntry)
      • populateFibOnNewDpn

        public void populateFibOnNewDpn​(org.opendaylight.yangtools.yang.common.Uint64 dpnId,
                                        org.opendaylight.yangtools.yang.common.Uint32 vpnId,
                                        java.lang.String rd,
                                        com.google.common.util.concurrent.FutureCallback<java.util.List<java.lang.Void>> callback)
      • populateExternalRoutesOnDpn

        public void populateExternalRoutesOnDpn​(org.opendaylight.yangtools.yang.common.Uint64 dpnId,
                                                org.opendaylight.yangtools.yang.common.Uint32 vpnId,
                                                java.lang.String rd,
                                                java.lang.String localNextHopIp,
                                                java.lang.String remoteNextHopIp)
      • manageRemoteRouteOnDPN

        public void manageRemoteRouteOnDPN​(boolean action,
                                           org.opendaylight.yangtools.yang.common.Uint64 localDpnId,
                                           org.opendaylight.yangtools.yang.common.Uint32 vpnId,
                                           java.lang.String rd,
                                           java.lang.String destPrefix,
                                           java.lang.String destTepIp,
                                           org.opendaylight.yangtools.yang.common.Uint32 label)
      • cleanUpDpnForVpn

        public void cleanUpDpnForVpn​(org.opendaylight.yangtools.yang.common.Uint64 dpnId,
                                     org.opendaylight.yangtools.yang.common.Uint32 vpnId,
                                     java.lang.String rd,
                                     com.google.common.util.concurrent.FutureCallback<java.util.List<java.lang.Void>> callback)
      • cleanUpExternalRoutesOnDpn

        public void cleanUpExternalRoutesOnDpn​(org.opendaylight.yangtools.yang.common.Uint64 dpnId,
                                               org.opendaylight.yangtools.yang.common.Uint32 vpnId,
                                               java.lang.String rd,
                                               java.lang.String localNextHopIp,
                                               java.lang.String remoteNextHopIp)
      • buildVrfId

        public static org.opendaylight.yangtools.yang.binding.InstanceIdentifier<VrfTables> buildVrfId​(java.lang.String rd)