Interface RIBExtensionConsumerContext

All Known Subinterfaces:
RIBExtensionProviderContext
All Known Implementing Classes:
DefaultRIBExtensionConsumerContext, OSGiRIBExtensionConsumerContext, SimpleRIBExtensionProviderContext

public interface RIBExtensionConsumerContext
Interface for acquiring AdjRIBsIn factories. In order for a model-driven RIB implementation to work correctly, it has to know how to handle individual NLRI fields, whose encoding is specific to a AFI/SAFI pair. This interface exposes an entry point for locating the AFI/SAFI-specific implementation handler.
  • Method Summary

    Modifier and Type
    Method
    Description
    <C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>, S extends org.opendaylight.yangtools.yang.binding.ChildOf<C>>
    @Nullable RIBSupport<C,S>
    getRIBSupport(@NonNull TablesKey key)
    Acquire a RIB implementation factory for a AFI/SAFI combination.
    <C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>, S extends org.opendaylight.yangtools.yang.binding.ChildOf<C>>
    @Nullable RIBSupport<C,S>
    getRIBSupport(@NonNull AddressFamily afi, @NonNull SubsequentAddressFamily safi)
    Acquire a RIB implementation factory for a AFI/SAFI combination.
    <C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>, S extends org.opendaylight.yangtools.yang.binding.ChildOf<C>>
    @Nullable RIBSupport<C,S>
    getRIBSupport(@NonNull org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates key)
    Acquire a RIB implementation factory for a AFI/SAFI combination.
  • Method Details

    • getRIBSupport

      <C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>, S extends org.opendaylight.yangtools.yang.binding.ChildOf<C>> @Nullable RIBSupport<C,S> getRIBSupport(@NonNull TablesKey key)
      Acquire a RIB implementation factory for a AFI/SAFI combination.
      Parameters:
      key - AFI/SAFI key
      Returns:
      RIBSupport instance, or null if the AFI/SAFI is not implemented.
    • getRIBSupport

      <C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>, S extends org.opendaylight.yangtools.yang.binding.ChildOf<C>> @Nullable RIBSupport<C,S> getRIBSupport(@NonNull AddressFamily afi, @NonNull SubsequentAddressFamily safi)
      Acquire a RIB implementation factory for a AFI/SAFI combination.
      Parameters:
      afi - Address Family Identifier
      safi - Subsequent Address Family identifier
      Returns:
      RIBSupport instance, or null if the AFI/SAFI is not implemented.
    • getRIBSupport

      <C extends Routes & org.opendaylight.yangtools.yang.binding.DataObject & org.opendaylight.yangtools.yang.binding.ChoiceIn<Tables>, S extends org.opendaylight.yangtools.yang.binding.ChildOf<C>> @Nullable RIBSupport<C,S> getRIBSupport(@NonNull org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates key)
      Acquire a RIB implementation factory for a AFI/SAFI combination.
      Parameters:
      key - Tables key with AFI/SAFI
      Returns:
      RIBSupport instance, or null if the AFI/SAFI is not implemented.