public class ApplicationPeer extends BGPPeerStateImpl implements org.opendaylight.controller.md.sal.dom.api.ClusteredDOMDataTreeChangeListener
Constructor and Description |
---|
ApplicationPeer(BGPTableTypeRegistryConsumer tableTypeRegistry,
ApplicationRibId applicationRibId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address ipAddress,
RIB rib) |
Modifier and Type | Method and Description |
---|---|
com.google.common.util.concurrent.FluentFuture<? extends org.opendaylight.mdsal.common.api.CommitInfo> |
close()
Close Peers and performs asynchronously DS clean up.
|
BGPAfiSafiState |
getBGPAfiSafiState()
Afi Safi Operational State.
|
BGPErrorHandlingState |
getBGPErrorHandlingState()
Error Handling State.
|
BGPSessionState |
getBGPSessionState()
BGP Session Operational State.
|
BGPTimersState |
getBGPTimersState()
BGP Operation Timers State.
|
BGPTransportState |
getBGPTransportState()
BGP Operational Transport State.
|
ClusterIdentifier |
getClusterId()
Returns Cluster Id.
|
org.opendaylight.controller.md.sal.dom.api.DOMTransactionChain |
getDomChain()
Returns Peer DOMTransactionChain.
|
ClusterIdentifier |
getFromClusterId()
Peer id of Peer route entry announcer.
|
PeerId |
getFromPeerId()
Peer id of Peer route entry announcer.
|
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.AsNumber |
getFromPeerLocalAs()
Peer local AS of route entry announcer.
|
PeerRole |
getFromPeerRole()
Peer id of Peer route entry announcer.
|
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.AsNumber |
getLocalAs()
Returns Local AS.
|
List<RouteTarget> |
getMemberships()
Returns list of Route target advertized per Peer.
|
String |
getName()
Return peer's symbolic name.
|
PeerId |
getPeerId()
Returns Peer id.
|
byte[] |
getRawIdentifier()
Return the peer's BGP identifier as raw byte array.
|
org.opendaylight.yangtools.yang.binding.KeyedInstanceIdentifier<Tables,TablesKey> |
getRibOutIId(TablesKey tablesKey)
Creates Table Adj Rib Out Instance identifier.
|
PeerRole |
getRole()
Returns Peer Role.
|
SendReceive |
getSupportedAddPathTables(TablesKey tableKey)
Returns AddPath support configuration if supported, otherwise null.
|
<C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>,S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C>,R extends Route & org.opendaylight.yangtools.yang.binding.ChildOf<? super S> & org.opendaylight.yangtools.yang.binding.Identifiable<I>,I extends org.opendaylight.yangtools.yang.binding.Identifier<R>> |
initializeRibOut(RouteEntryDependenciesContainer entryDep,
List<ActualBestPathRoutes<C,S,R,I>> routesToStore)
Stores under peers rib Out already present routes, before proceed to process any new route advertizement.
|
void |
instantiateServiceInstance(org.opendaylight.controller.md.sal.dom.api.DOMDataTreeChangeService dataTreeChangeService,
org.opendaylight.controller.md.sal.dom.api.DOMDataTreeIdentifier appPeerDOMId) |
void |
onDataTreeChanged(Collection<org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate> changes)
Routes come from application RIB that is identified by (configurable) name.
|
void |
onTransactionChainFailed(org.opendaylight.controller.md.sal.common.api.data.TransactionChain<?,?> chain,
org.opendaylight.controller.md.sal.common.api.data.AsyncTransaction<?,?> transaction,
Throwable cause) |
void |
onTransactionChainSuccessful(org.opendaylight.controller.md.sal.common.api.data.TransactionChain<?,?> chain) |
<C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>,S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C>,R extends Route & org.opendaylight.yangtools.yang.binding.ChildOf<? super S> & org.opendaylight.yangtools.yang.binding.Identifiable<I>,I extends org.opendaylight.yangtools.yang.binding.Identifier<R>> |
reEvaluateAdvertizement(RouteEntryDependenciesContainer entryDep,
List<ActualBestPathRoutes<C,S,R,I>> routesToStore)
Applies all policies through all present routes, and advertize/withdraws based on new results.
|
<C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>,S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C>,R extends Route & org.opendaylight.yangtools.yang.binding.ChildOf<? super S> & org.opendaylight.yangtools.yang.binding.Identifiable<I>,I extends org.opendaylight.yangtools.yang.binding.Identifier<R>> |
refreshRibOut(RouteEntryDependenciesContainer entryDep,
List<StaleBestPathRoute<C,S,R,I>> staleRoutes,
List<AdvertizedRoute<C,S,R,I>> newRoutes)
Update peers ribout after path selection processing.
|
boolean |
supportsAddPathSupported(TablesKey tableKey)
Returns if peer supports Additional Path for specific table.
|
boolean |
supportsTable(TablesKey tableKey)
Returns true if peer supports table.
|
getAfiSafisAdvertized, getAfiSafisReceived, getBGPGracelfulRestart, getBGPPeerMessagesState, getErroneousUpdateReceivedCount, getGroupId, getNeighborAddress, getNotificationMessagesReceivedCount, getNotificationMessagesSentCount, getPeerRestartTime, getPeerState, getPrefixesInstalledCount, getPrefixesReceivedCount, getPrefixesSentCount, getTotalPrefixes, getUpdateMessagesReceivedCount, getUpdateMessagesSentCount, isActive, isAfiSafiSupported, isGracefulRestartAdvertized, isGracefulRestartReceived, isLocalRestarting, isPeerRestarting, messageReceived, messageSent, registerPrefixesCounters, registerPrefixesSentCounter, resetState, setActive, setAdvertizedGracefulRestartTableTypes, setAfiSafiGracefulRestartState
getInstanceIdentifier
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getTotalPathsCount
getInstanceIdentifier
protected final RIB rib
public ApplicationPeer(BGPTableTypeRegistryConsumer tableTypeRegistry, ApplicationRibId applicationRibId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address ipAddress, RIB rib)
public List<RouteTarget> getMemberships()
RouteTargetMembershipConsumer
getMemberships
in interface RouteTargetMembershipConsumer
public void instantiateServiceInstance(org.opendaylight.controller.md.sal.dom.api.DOMDataTreeChangeService dataTreeChangeService, org.opendaylight.controller.md.sal.dom.api.DOMDataTreeIdentifier appPeerDOMId)
public void onDataTreeChanged(Collection<org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate> changes)
onDataTreeChanged
in interface org.opendaylight.controller.md.sal.dom.api.DOMDataTreeChangeListener
public com.google.common.util.concurrent.FluentFuture<? extends org.opendaylight.mdsal.common.api.CommitInfo> close()
Peer
public boolean supportsAddPathSupported(TablesKey tableKey)
PeerTrackerInformation
supportsAddPathSupported
in interface PeerTrackerInformation
tableKey
- tablepublic SendReceive getSupportedAddPathTables(TablesKey tableKey)
PeerTrackerInformation
getSupportedAddPathTables
in interface PeerTrackerInformation
tableKey
- tablepublic boolean supportsTable(TablesKey tableKey)
PeerTrackerInformation
supportsTable
in interface PeerTrackerInformation
tableKey
- tablepublic org.opendaylight.yangtools.yang.binding.KeyedInstanceIdentifier<Tables,TablesKey> getRibOutIId(TablesKey tablesKey)
PeerTrackerInformation
getRibOutIId
in interface PeerTrackerInformation
tablesKey
- table keypublic void onTransactionChainFailed(org.opendaylight.controller.md.sal.common.api.data.TransactionChain<?,?> chain, org.opendaylight.controller.md.sal.common.api.data.AsyncTransaction<?,?> transaction, Throwable cause)
onTransactionChainFailed
in interface org.opendaylight.controller.md.sal.common.api.data.TransactionChainListener
public BGPSessionState getBGPSessionState()
BGPPeerState
getBGPSessionState
in interface BGPPeerState
public BGPTimersState getBGPTimersState()
BGPPeerState
getBGPTimersState
in interface BGPPeerState
public BGPTransportState getBGPTransportState()
BGPPeerState
getBGPTransportState
in interface BGPPeerState
public final PeerId getPeerId()
PeerTrackerInformation
getPeerId
in interface PeerTrackerInformation
public final PeerRole getRole()
PeerTrackerInformation
getRole
in interface PeerTrackerInformation
public final byte[] getRawIdentifier()
Peer
getRawIdentifier
in interface Peer
public final PeerRole getFromPeerRole()
BGPRouteEntryImportParameters
getFromPeerRole
in interface BGPRouteEntryImportParameters
public final PeerId getFromPeerId()
BGPRouteEntryImportParameters
getFromPeerId
in interface BGPRouteEntryImportParameters
public final ClusterIdentifier getFromClusterId()
BGPRouteEntryImportParameters
getFromClusterId
in interface BGPRouteEntryImportParameters
public final void onTransactionChainSuccessful(org.opendaylight.controller.md.sal.common.api.data.TransactionChain<?,?> chain)
onTransactionChainSuccessful
in interface org.opendaylight.controller.md.sal.common.api.data.TransactionChainListener
public final BGPErrorHandlingState getBGPErrorHandlingState()
BGPPeerState
getBGPErrorHandlingState
in interface BGPPeerState
public final BGPAfiSafiState getBGPAfiSafiState()
BGPPeerState
getBGPAfiSafiState
in interface BGPPeerState
public final org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.AsNumber getFromPeerLocalAs()
BGPRouteEntryImportParameters
getFromPeerLocalAs
in interface BGPRouteEntryImportParameters
public final String getName()
Peer
public final ClusterIdentifier getClusterId()
PeerTrackerInformation
getClusterId
in interface PeerTrackerInformation
public final org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.AsNumber getLocalAs()
PeerTrackerInformation
getLocalAs
in interface PeerTrackerInformation
public org.opendaylight.controller.md.sal.dom.api.DOMTransactionChain getDomChain()
PeerTransactionChain
getDomChain
in interface PeerTransactionChain
public final <C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>,S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C>,R extends Route & org.opendaylight.yangtools.yang.binding.ChildOf<? super S> & org.opendaylight.yangtools.yang.binding.Identifiable<I>,I extends org.opendaylight.yangtools.yang.binding.Identifier<R>> void initializeRibOut(RouteEntryDependenciesContainer entryDep, List<ActualBestPathRoutes<C,S,R,I>> routesToStore)
Peer
initializeRibOut
in interface Peer
entryDep
- RouteEntryDependenciesContainerroutesToStore
- routes to be advertized.public final <C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>,S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C>,R extends Route & org.opendaylight.yangtools.yang.binding.ChildOf<? super S> & org.opendaylight.yangtools.yang.binding.Identifiable<I>,I extends org.opendaylight.yangtools.yang.binding.Identifier<R>> void refreshRibOut(RouteEntryDependenciesContainer entryDep, List<StaleBestPathRoute<C,S,R,I>> staleRoutes, List<AdvertizedRoute<C,S,R,I>> newRoutes)
Peer
refreshRibOut
in interface Peer
entryDep
- RouteEntryDependenciesContainerstaleRoutes
- routes to be removed.newRoutes
- routes to be advertized.public final <C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>,S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C>,R extends Route & org.opendaylight.yangtools.yang.binding.ChildOf<? super S> & org.opendaylight.yangtools.yang.binding.Identifiable<I>,I extends org.opendaylight.yangtools.yang.binding.Identifier<R>> void reEvaluateAdvertizement(RouteEntryDependenciesContainer entryDep, List<ActualBestPathRoutes<C,S,R,I>> routesToStore)
Peer
reEvaluateAdvertizement
in interface Peer
entryDep
- RouteEntryDependenciesContainerroutesToStore
- routes to be updated.Copyright © 2019 OpenDaylight. All rights reserved.