@NotThreadSafe public abstract class AddPathAbstractRouteEntry<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>> extends Object implements RouteEntry<C,S,R,I>
Modifier and Type | Field and Description |
---|---|
protected OffsetMap |
offsets |
protected Long[] |
pathsId |
protected R[] |
values |
Constructor and Description |
---|
AddPathAbstractRouteEntry() |
Modifier and Type | Method and Description |
---|---|
List<ActualBestPathRoutes<C,S,R,I>> |
actualBestPaths(RIBSupport<C,S,R,I> ribSupport,
RouteEntryInfo entryInfo)
Returns collections of present selected best path.
|
int |
addRoute(com.google.common.primitives.UnsignedInteger routerId,
long remotePathId,
R route)
Add Route.
|
protected boolean |
isBestPathNew(com.google.common.collect.ImmutableList<AddPathBestPath> newBestPathList) |
boolean |
isEmpty() |
List<AdvertizedRoute<C,S,R,I>> |
newBestPaths(RIBSupport<C,S,R,I> ribSupport,
String routeKey)
Returns collection of best path routes after processing update of stale and new advertisement of routes.
|
boolean |
removeRoute(com.google.common.primitives.UnsignedInteger routerId,
long remotePathId)
Remove route.
|
Optional<StaleBestPathRoute<C,S,R,I>> |
removeStalePaths(RIBSupport<C,S,R,I> ribSupport,
String routeKey)
Returns list of stale best path.
|
protected AddPathBestPath |
selectBest(long localAs,
List<RouteKey> keyList)
Process best path selection.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
selectBest
protected OffsetMap offsets
protected R extends Route & org.opendaylight.yangtools.yang.binding.ChildOf<? super S> & org.opendaylight.yangtools.yang.binding.Identifiable<I>[] values
protected Long[] pathsId
public final int addRoute(com.google.common.primitives.UnsignedInteger routerId, long remotePathId, R route)
RouteEntry
addRoute
in interface RouteEntry<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>>
routerId
- router ID in unsigned integer format from an Ipv4AddressremotePathId
- remote path Id receivedroute
- route Data changepublic final boolean removeRoute(com.google.common.primitives.UnsignedInteger routerId, long remotePathId)
RouteEntry
removeRoute
in interface RouteEntry<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>>
routerId
- router ID in unsigned integer format from an Ipv4AddressremotePathId
- remote path Id receivedpublic final Optional<StaleBestPathRoute<C,S,R,I>> removeStalePaths(RIBSupport<C,S,R,I> ribSupport, String routeKey)
RouteEntry
removeStalePaths
in interface RouteEntry<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>>
ribSupport
- RIB SupportrouteKey
- of stale routepublic final List<AdvertizedRoute<C,S,R,I>> newBestPaths(RIBSupport<C,S,R,I> ribSupport, String routeKey)
RouteEntry
newBestPaths
in interface RouteEntry<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>>
ribSupport
- RIB SupportrouteKey
- route keypublic final List<ActualBestPathRoutes<C,S,R,I>> actualBestPaths(RIBSupport<C,S,R,I> ribSupport, RouteEntryInfo entryInfo)
RouteEntry
actualBestPaths
in interface RouteEntry<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>>
ribSupport
- RIB SupportentryInfo
- Route Entry Info wrapperpublic final boolean isEmpty()
protected AddPathBestPath selectBest(long localAs, List<RouteKey> keyList)
localAs
- The local autonomous system numberkeyList
- List of RouteKeyprotected boolean isBestPathNew(com.google.common.collect.ImmutableList<AddPathBestPath> newBestPathList)
Copyright © 2019 OpenDaylight. All rights reserved.