Class AbstractVpnRIBSupport<C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject,​S extends org.opendaylight.yangtools.yang.binding.ChildOf<? super C> & L3vpnIpRoute>

    • Constructor Detail

      • AbstractVpnRIBSupport

        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. Requires the QName of the container augmented under the routes choice node in instantiations of the rib grouping. It is assumed that this container is defined by the same model which populates it with route grouping instantiation, and by extension with the route attributes container.
        Parameters:
        cazeClass - Binding class of the AFI/SAFI-specific case statement, must not be null
        containerClass - Binding class of the container in routes choice, must not be null.
    • Method Detail

      • createPrefix

        protected abstract org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpPrefix createPrefix​(String prefix)
      • 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)
        Specified by:
        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>
      • createRoute

        public final VpnRoute createRoute​(VpnRoute route,
                                          VpnRouteKey key,
                                          Attributes attributes)
        Description copied from interface: RIBSupport
        Creates a route with new path Id and attributes.
        Parameters:
        route - route
        key - route key
        attributes - route attributes
        Returns:
        Route List key
      • createRouteListKey

        public VpnRouteKey createRouteListKey​(PathId pathId,
                                              String vpnRouteKey)
        Description copied from interface: RIBSupport
        Construct a Route List Key using new path Id for Families.
        Parameters:
        pathId - The path identifier
        vpnRouteKey - RouteKey
        Returns:
        route list Key (RouteKey + pathId)
      • extractPathId

        public PathId extractPathId​(VpnRouteKey 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 final String extractRouteKey​(VpnRouteKey routeListKey)
        Description copied from interface: RIBSupport
        Given a route list key, return the associated path ID.
        Parameters:
        routeListKey - Route list key
        Returns:
        RouteKey