*/
package org.opendaylight.yangtools.yang.data.impl.schema.builder.impl;
-import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier;
+import static java.util.Objects.requireNonNull;
+
+import org.eclipse.jdt.annotation.NonNull;
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithValue;
import org.opendaylight.yangtools.yang.data.api.schema.LeafSetEntryNode;
import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.NormalizedNodeBuilder;
import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode;
public final class ImmutableLeafSetEntryNodeSchemaAwareBuilder<T> extends ImmutableLeafSetEntryNodeBuilder<T> {
-
private final LeafListSchemaNode schema;
- private ImmutableLeafSetEntryNodeSchemaAwareBuilder(LeafListSchemaNode schema) {
- super();
- this.schema = schema;
+ private ImmutableLeafSetEntryNodeSchemaAwareBuilder(final LeafListSchemaNode schema) {
+ this.schema = requireNonNull(schema);
}
- public static <T> NormalizedNodeBuilder<InstanceIdentifier.NodeWithValue, T, LeafSetEntryNode<T>> create(LeafListSchemaNode schema) {
+ public static <T> @NonNull NormalizedNodeBuilder<NodeWithValue, T, LeafSetEntryNode<T>> create(
+ final LeafListSchemaNode schema) {
return new ImmutableLeafSetEntryNodeSchemaAwareBuilder<>(schema);
}
@Override
- public NormalizedNodeBuilder<InstanceIdentifier.NodeWithValue, T, LeafSetEntryNode<T>> withValue(T value) {
- super.withNodeIdentifier(new InstanceIdentifier.NodeWithValue(schema.getQName(), value));
- // TODO check value type
- return super.withValue(value);
+ public NormalizedNodeBuilder<NodeWithValue, T, LeafSetEntryNode<T>> withValue(final T withValue) {
+ super.withNodeIdentifier(new NodeWithValue<>(schema.getQName(), withValue));
+ // TODO check value type using TypeProvider ?
+ return super.withValue(withValue);
}
@Override
- public NormalizedNodeBuilder<InstanceIdentifier.NodeWithValue, T, LeafSetEntryNode<T>> withNodeIdentifier(InstanceIdentifier.NodeWithValue nodeIdentifier) {
+ public NormalizedNodeBuilder<NodeWithValue, T, LeafSetEntryNode<T>> withNodeIdentifier(
+ final NodeWithValue withNodeIdentifier) {
throw new UnsupportedOperationException("Node identifier created from schema");
}
-
}