private final MapEntryNode emptyTable;
private final QName routeQname;
private final QName routeKeyQname;
- private final AddressFamily afiClass;
- private final SubsequentAddressFamily safiClass;
private final NodeIdentifier destinationNid;
private final NodeIdentifier pathIdNid;
private final NodeIdentifier prefixTypeNid;
private final NodeIdentifier rdNid;
protected final BindingNormalizedNodeSerializer mappingService;
protected final YangInstanceIdentifier routeDefaultYii;
- private final TablesKey tk;
+ private final @NonNull TablesKey tk;
private final NodeIdentifierWithPredicates tablesKey;
private final ImmutableList<PathArgument> relativeRoutesPath;
private final ImmutableOffsetMapTemplate<QName> routeKeyTemplate;
* @param cazeClass Binding class of the AFI/SAFI-specific case statement, must not be null
* @param containerClass Binding class of the container in routes choice, must not be null.
* @param listClass Binding class of the route list, nust not be null;
- * @param afiClass address Family Class
- * @param safiClass SubsequentAddressFamily
+ * @param afi Address Family
+ * @param safi Subsequent Address Family
* @param destContainerQname destination Container Qname
*/
protected AbstractRIBSupport(
final Class<C> cazeClass,
final Class<S> containerClass,
final Class<R> listClass,
- final AddressFamily afiClass,
- final SubsequentAddressFamily safiClass,
+ final AddressFamily afi,
+ final SubsequentAddressFamily safi,
final QName destContainerQname) {
final QNameModule module = BindingReflections.getQNameModule(cazeClass);
routesContainerIdentifier = NodeIdentifier.create(
routeQname = BindingReflections.findQName(listClass).bindTo(module);
routeKeyQname = QName.create(module, ROUTE_KEY).intern();
routesListIdentifier = NodeIdentifier.create(routeQname);
- this.afiClass = requireNonNull(afiClass);
- this.safiClass = requireNonNull(safiClass);
- tk = new TablesKey(afiClass, safiClass);
+ tk = new TablesKey(afi, safi);
tablesKey = NodeIdentifierWithPredicates.of(Tables.QNAME, TABLES_KEY_TEMPLATE.instantiateWithValues(
- BindingReflections.findQName(afiClass.implementedInterface()),
- BindingReflections.findQName(safiClass.implementedInterface())));
+ BindingReflections.getQName(afi), BindingReflections.getQName(safi)));
emptyTable = (MapEntryNode) this.mappingService
.toNormalizedNode(TABLES_II, new TablesBuilder().withKey(tk)
@Override
public final AddressFamily getAfi() {
- return afiClass;
+ return tk.getAfi();
}
@Override
public final SubsequentAddressFamily getSafi() {
- return safiClass;
+ return tk.getSafi();
}
/**
public static NodeIdentifierWithPredicates toYangKey(final QName id, final AddressFamily afi,
final SubsequentAddressFamily safi) {
return NodeIdentifierWithPredicates.of(id, AFI_SAFI_TEMPLATE.instantiateWithValues(
- BindingReflections.findQName(afi.implementedInterface()),
- BindingReflections.findQName(safi.implementedInterface())));
+ BindingReflections.getQName(afi), BindingReflections.getQName(safi)));
}
/**
public static NodeIdentifierWithPredicates toYangPathKey(final QName id, final AddressFamily afi,
final SubsequentAddressFamily safi) {
return NodeIdentifierWithPredicates.of(id, ADD_PATH_AFI_SAFI_TEMPLATE.instantiateWithValues(
- BindingReflections.findQName(afi.implementedInterface()),
- BindingReflections.findQName(safi.implementedInterface())));
+ BindingReflections.getQName(afi), BindingReflections.getQName(safi)));
}
/**
public static final QName BMP_AFI_QNAME = QName.create(BMP_TABLES_QNAME, "afi").intern();
public static final QName BMP_SAFI_QNAME = QName.create(BMP_TABLES_QNAME, "safi").intern();
- private static final String AFI = "afi";
- private static final String SAFI = "safi";
-
private TablesUtil() {
// Hidden on purpose
}
*/
public static NodeIdentifierWithPredicates toYangTablesKey(final AddressFamily afi,
final SubsequentAddressFamily safi) {
- return NodeIdentifierWithPredicates.of(BMP_TABLES_QNAME, ImmutableMap.of(
- BMP_AFI_QNAME, BindingReflections.findQName(afi.implementedInterface()),
- BMP_SAFI_QNAME, BindingReflections.findQName(safi.implementedInterface())));
+ return NodeIdentifierWithPredicates.of(BMP_TABLES_QNAME,
+ ImmutableMap.of(
+ BMP_AFI_QNAME, BindingReflections.getQName(afi),
+ BMP_SAFI_QNAME, BindingReflections.getQName(safi)));
}
/**
*/
public static NodeIdentifierWithPredicates toYangTablesKey(final QName nodeName,
final AddressFamily afi, final SubsequentAddressFamily safi) {
- final QName afiQname = QName.create(nodeName, AFI).intern();
- final QName safiQname = QName.create(nodeName, SAFI).intern();
- return NodeIdentifierWithPredicates.of(nodeName, ImmutableMap.of(
- afiQname, BindingReflections.findQName(afi.implementedInterface()),
- safiQname, BindingReflections.findQName(safi.implementedInterface())));
+ return NodeIdentifierWithPredicates.of(nodeName,
+ ImmutableMap.of(
+ BMP_AFI_QNAME.bindTo(nodeName.getModule()).intern(), BindingReflections.getQName(afi),
+ BMP_SAFI_QNAME.bindTo(nodeName.getModule()).intern(), BindingReflections.getQName(safi)));
}
/**