@Override public <C extends ChoiceIn<? super T> & DataObject, N extends ChildOf<? super C>> InstanceIdentifierBuilder<N> child(final Class<C> caze, final Class<N> container) { return addWildNode(Item.of(caze, container)); }
private <N extends DataObject> InstanceIdentifierBuilderImpl<N> addNode(final Class<N> container) { return addWildNode(Item.of(container)); } }
/** * Create an InstanceIdentifierBuilder for a specific type of InstanceIdentifier as specified by container. * * @param container Base container * @param <T> Type of the container * @return A new {@link InstanceIdentifierBuilder} * @throws NullPointerException if {@code container} is null */ public static <T extends ChildOf<? extends DataRoot>> InstanceIdentifierBuilder<T> builder( final Class<T> container) { return new InstanceIdentifierBuilderImpl<T>().addWildNode(Item.of(container)); }
/** * Create an InstanceIdentifierBuilder for a specific type of InstanceIdentifier as specified by container in * a {@code grouping} used in the {@code case} statement. * * @param caze Choice case class * @param container Base container * @param <C> Case type * @param <T> Type of the container * @return A new {@link InstanceIdentifierBuilder} * @throws NullPointerException if any argument is null */ public static <C extends ChoiceIn<? extends DataRoot> & DataObject, T extends ChildOf<? super C>> InstanceIdentifierBuilder<T> builder(final Class<C> caze, final Class<T> container) { return new InstanceIdentifierBuilderImpl<T>().addWildNode(Item.of(caze, container)); }