import java.util.Iterator;
import java.util.Optional;
+import org.opendaylight.yangtools.yang.common.Empty;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithValue;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
import org.opendaylight.yangtools.yang.data.api.schema.LeafNode;
import org.opendaylight.yangtools.yang.data.api.schema.LeafSetEntryNode;
import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.NormalizedNodeBuilder;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.NormalizedNodeBuilder;
import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode;
import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode;
}
@Override
- final NormalizedNode<?, ?> create(final PathArgument first, final Iterator<PathArgument> others,
- final Optional<NormalizedNode<?, ?>> deepestChild) {
- final NormalizedNodeBuilder<? extends PathArgument, Object,
- ? extends NormalizedNode<? extends PathArgument, Object>> builder = getBuilder(first);
+ final NormalizedNode create(final PathArgument first, final Iterator<PathArgument> others,
+ final Optional<NormalizedNode> deepestChild) {
+ final NormalizedNodeBuilder<? extends PathArgument, Object, ? extends NormalizedNode> builder =
+ getBuilder(first);
if (deepestChild.isPresent()) {
- builder.withValue(deepestChild.get().getValue());
+ builder.withValue(deepestChild.orElseThrow().body());
}
return builder.build();
return false;
}
- abstract NormalizedNodeBuilder<? extends PathArgument, Object,
- ? extends NormalizedNode<? extends PathArgument, Object>> getBuilder(PathArgument node);
+ abstract NormalizedNodeBuilder<? extends PathArgument, Object, ? extends NormalizedNode> getBuilder(
+ PathArgument node);
static final class LeafNormalization extends InstanceIdToSimpleNodes<NodeIdentifier> {
LeafNormalization(final LeafSchemaNode potential) {
static final class LeafListEntryNormalization extends InstanceIdToSimpleNodes<NodeWithValue> {
LeafListEntryNormalization(final LeafListSchemaNode potential) {
- super(new NodeWithValue<>(potential.getQName(), null));
+ // We are fudging a value here
+ super(new NodeWithValue<>(potential.getQName(), Empty.getInstance()));
}
@Override