public abstract class AbstractVpnRIBSupport<C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject,S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C> & L3vpnIpRoute> extends AbstractRIBSupport<C,S,VpnRoute,VpnRouteKey>
RIBSupport.ApplyRoute
mappingService, ROUTE_KEY, routeDefaultYii
Modifier | Constructor and Description |
---|---|
protected |
AbstractVpnRIBSupport(org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer mappingService,
Class<C> cazeClass,
Class<S> containerClass,
Class<? extends AddressFamily> afiClass,
org.opendaylight.yangtools.yang.common.QName vpnDstContainerClassQname)
Default constructor.
|
Modifier and Type | Method and 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) |
protected abstract org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpPrefix |
createPrefix(String prefix) |
VpnRoute |
createRoute(VpnRoute route,
String vpnRouteKey,
long pathId,
Attributes attributes)
Creates a route with new path Id and attributes.
|
VpnRouteKey |
createRouteListKey(long pathId,
String vpnRouteKey)
Construct a Route List Key using new path Id for Families.
|
protected abstract DestinationType |
getAdvertisedDestinationType(List<VpnDestination> dests) |
protected abstract DestinationType |
getWithdrawnDestinationType(List<VpnDestination> dests) |
protected void |
processDestination(org.opendaylight.controller.md.sal.dom.api.DOMDataWriteTransaction 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) |
buildUpdate, changedRoutes, createRouteIdentifier, deleteRoutes, deleteRoutes, emptyTable, extractPrefix, extractRouteDistinguisher, getAfi, getSafi, getTablesKey, pathIdQName, prefixNid, putRoutes, putRoutes, routeAttributesIdentifier, routeKeyQName, routeNid, routePath, routePathIdNid, routeQName, routesCaseClass, routesContainerClass, routesContainerIdentifier, routesListClass, routesYangInstanceIdentifier
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
cacheableAttributeObjects, cacheableNlriObjects, emptyRoutesCase, emptyRoutesContainer
protected AbstractVpnRIBSupport(org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer mappingService, Class<C> cazeClass, Class<S> containerClass, Class<? extends AddressFamily> afiClass, org.opendaylight.yangtools.yang.common.QName vpnDstContainerClassQname)
cazeClass
- Binding class of the AFI/SAFI-specific case statement, must not be nullcontainerClass
- Binding class of the container in routes choice, must not be null.protected abstract org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpPrefix createPrefix(String prefix)
protected abstract DestinationType getAdvertisedDestinationType(List<VpnDestination> dests)
protected abstract DestinationType getWithdrawnDestinationType(List<VpnDestination> dests)
protected DestinationType buildDestination(Collection<org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode> routes)
buildDestination
in class AbstractRIBSupport<C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject,S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C> & L3vpnIpRoute,VpnRoute,VpnRouteKey>
protected DestinationType buildWithdrawnDestination(Collection<org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode> routes)
buildWithdrawnDestination
in class AbstractRIBSupport<C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject,S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C> & L3vpnIpRoute,VpnRoute,VpnRouteKey>
protected void processDestination(org.opendaylight.controller.md.sal.dom.api.DOMDataWriteTransaction 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)
processDestination
in class AbstractRIBSupport<C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject,S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C> & L3vpnIpRoute,VpnRoute,VpnRouteKey>
public final VpnRoute createRoute(VpnRoute route, String vpnRouteKey, long pathId, Attributes attributes)
RIBSupport
route
- routevpnRouteKey
- route keypathId
- new path Idattributes
- route attributespublic VpnRouteKey createRouteListKey(long pathId, String vpnRouteKey)
RIBSupport
pathId
- The path identifiervpnRouteKey
- RouteKeyCopyright © 2019 OpenDaylight. All rights reserved.