Class RouteTargetConstrainRIBSupport
- java.lang.Object
-
- org.opendaylight.protocol.bgp.rib.spi.AbstractRIBSupport<RouteTargetConstrainRoutesCase,RouteTargetConstrainRoutes,RouteTargetConstrainRoute,RouteTargetConstrainRouteKey>
-
- org.opendaylight.protocol.bgp.route.targetcontrain.impl.RouteTargetConstrainRIBSupport
-
- All Implemented Interfaces:
RIBSupport<RouteTargetConstrainRoutesCase,RouteTargetConstrainRoutes,RouteTargetConstrainRoute,RouteTargetConstrainRouteKey>
public final class RouteTargetConstrainRIBSupport extends AbstractRIBSupport<RouteTargetConstrainRoutesCase,RouteTargetConstrainRoutes,RouteTargetConstrainRoute,RouteTargetConstrainRouteKey>
Route Target Constrains RIBSupport.- Author:
- Claudio D. Gasparini
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.opendaylight.protocol.bgp.rib.spi.RIBSupport
RIBSupport.ApplyRoute
-
-
Field Summary
-
Fields inherited from class org.opendaylight.protocol.bgp.rib.spi.AbstractRIBSupport
mappingService, ROUTE_KEY, routeDefaultYii
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected DestinationType
buildDestination(Collection<org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode> routes)
protected DestinationType
buildWithdrawnDestination(Collection<org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode> routes)
com.google.common.collect.ImmutableCollection<Class<? extends org.opendaylight.yangtools.yang.binding.BindingObject>>
cacheableNlriObjects()
RouteTargetConstrainRoute
createRoute(RouteTargetConstrainRoute route, RouteTargetConstrainRouteKey key, Attributes attributes)
Creates a route with new path Id and attributes.RouteTargetConstrainRouteKey
createRouteListKey(PathId pathId, String routeKey)
Construct a Route List Key using new path Id for Families.RouteTargetConstrainRoutes
emptyRoutesContainer()
Return the table-type-specific empty routes container, as augmented into the bgp-peer model under /peer/effect-rib-in/tables/routes choice node/routes container.Map<RouteTargetConstrainRouteKey,RouteTargetConstrainRoute>
extractAdjRibInRoutes(Routes routes)
Extract a route list from the adj-rib-in instantiation of table routes.PathId
extractPathId(RouteTargetConstrainRouteKey routeListKey)
Given a route list key, return the associated path ID.String
extractRouteKey(RouteTargetConstrainRouteKey routeListKey)
Given a route list key, return the associated path ID.static RouteTargetConstrainRIBSupport
getInstance(org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer mappingService)
protected Collection<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates>
processDestination(org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction tx, org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier routesPath, org.opendaylight.yangtools.yang.data.api.schema.ContainerNode destination, org.opendaylight.yangtools.yang.data.api.schema.ContainerNode attributes, RIBSupport.ApplyRoute function)
-
Methods inherited from class org.opendaylight.protocol.bgp.rib.spi.AbstractRIBSupport
attributeFromContainerNode, attributeToContainerNode, buildUpdate, changedRoutes, createRouteIdentifier, deleteRoutes, deleteRoutes, emptyTable, extractPrefix, extractRouteDistinguisher, fromNormalizedNode, getAfi, getSafi, getTablesKey, prefixNid, putRoutes, putRoutes, relativeRoutesPath, routeAttributesIdentifier, routeKeyTemplate, routeNid, routePathIdNid, routeQName, routesCaseClass, routesContainerClass, routesContainerIdentifier, routesListClass, routesPath, routesYangInstanceIdentifier
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.opendaylight.protocol.bgp.rib.spi.RIBSupport
cacheableAttributeObjects, createRouteListKey, routePath
-
-
-
-
Method Detail
-
getInstance
public static RouteTargetConstrainRIBSupport getInstance(org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer mappingService)
-
cacheableNlriObjects
public com.google.common.collect.ImmutableCollection<Class<? extends org.opendaylight.yangtools.yang.binding.BindingObject>> cacheableNlriObjects()
-
buildDestination
protected DestinationType buildDestination(Collection<org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode> routes)
-
buildWithdrawnDestination
protected DestinationType buildWithdrawnDestination(Collection<org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode> routes)
-
processDestination
protected Collection<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates> processDestination(org.opendaylight.mdsal.dom.api.DOMDataTreeWriteTransaction tx, org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier routesPath, org.opendaylight.yangtools.yang.data.api.schema.ContainerNode destination, org.opendaylight.yangtools.yang.data.api.schema.ContainerNode attributes, RIBSupport.ApplyRoute function)
-
createRoute
public RouteTargetConstrainRoute createRoute(RouteTargetConstrainRoute route, RouteTargetConstrainRouteKey key, Attributes attributes)
Description copied from interface:RIBSupport
Creates a route with new path Id and attributes.- Parameters:
route
- routekey
- route keyattributes
- route attributes- Returns:
- Route List key
-
emptyRoutesContainer
public RouteTargetConstrainRoutes emptyRoutesContainer()
Description copied from interface:RIBSupport
Return the table-type-specific empty routes container, as augmented into the bgp-peer model under /peer/effect-rib-in/tables/routes choice node/routes container. This needs to include all the skeleton nodes under which the individual routes will be stored.- Returns:
- Protocol-specific container in the routes, may not be null.
-
createRouteListKey
public RouteTargetConstrainRouteKey createRouteListKey(PathId pathId, String routeKey)
Description copied from interface:RIBSupport
Construct a Route List Key using new path Id for Families.- Parameters:
pathId
- The path identifierrouteKey
- RouteKey- Returns:
- route list Key (RouteKey + pathId)
-
extractPathId
public PathId extractPathId(RouteTargetConstrainRouteKey routeListKey)
Description copied from interface:RIBSupport
Given a route list key, return the associated path ID.- Parameters:
routeListKey
- Route list key- Returns:
- Path ID
-
extractRouteKey
public String extractRouteKey(RouteTargetConstrainRouteKey routeListKey)
Description copied from interface:RIBSupport
Given a route list key, return the associated path ID.- Parameters:
routeListKey
- Route list key- Returns:
- RouteKey
-
extractAdjRibInRoutes
public Map<RouteTargetConstrainRouteKey,RouteTargetConstrainRoute> extractAdjRibInRoutes(Routes routes)
Description copied from interface:RIBSupport
Extract a route list from the adj-rib-in instantiation of table routes.- Parameters:
routes
- Table route choice- Returns:
- A potentially empty list of routes
-
-