2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.yangtools.yang.data.impl.schema;
10 import javax.xml.transform.dom.DOMSource;
11 import org.eclipse.jdt.annotation.NonNull;
12 import org.opendaylight.yangtools.yang.data.api.schema.AnydataNode;
13 import org.opendaylight.yangtools.yang.data.api.schema.AnyxmlNode;
14 import org.opendaylight.yangtools.yang.data.api.schema.ChoiceNode;
15 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
16 import org.opendaylight.yangtools.yang.data.api.schema.LeafNode;
17 import org.opendaylight.yangtools.yang.data.api.schema.LeafSetEntryNode;
18 import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode;
19 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode.BuilderFactory;
20 import org.opendaylight.yangtools.yang.data.api.schema.SystemLeafSetNode;
21 import org.opendaylight.yangtools.yang.data.api.schema.SystemMapNode;
22 import org.opendaylight.yangtools.yang.data.api.schema.UnkeyedListEntryNode;
23 import org.opendaylight.yangtools.yang.data.api.schema.UnkeyedListNode;
24 import org.opendaylight.yangtools.yang.data.api.schema.UserLeafSetNode;
25 import org.opendaylight.yangtools.yang.data.api.schema.UserMapNode;
27 public final class Builders {
28 private static final BuilderFactory BUILDER_FACTORY = ImmutableNodes.builderFactory();
34 public static <T> LeafNode.@NonNull Builder<T> leafBuilder() {
35 return BUILDER_FACTORY.newLeafBuilder();
38 public static <T> LeafSetEntryNode.@NonNull Builder<T> leafSetEntryBuilder() {
39 return BUILDER_FACTORY.newLeafSetEntryBuilder();
42 public static AnyxmlNode.@NonNull Builder<DOMSource, AnyxmlNode<DOMSource>> anyXmlBuilder() {
43 return BUILDER_FACTORY.newAnyxmlBuilder(DOMSource.class);
46 public static <T> AnydataNode.@NonNull Builder<T> anydataBuilder(final Class<T> objectModel) {
47 return BUILDER_FACTORY.newAnydataBuilder(objectModel);
50 public static <T> UserLeafSetNode.@NonNull Builder<T> orderedLeafSetBuilder() {
51 return BUILDER_FACTORY.newUserLeafSetBuilder();
54 public static <T> UserLeafSetNode.@NonNull Builder<T> orderedLeafSetBuilder(final UserLeafSetNode<T> node) {
55 return BUILDER_FACTORY.newUserLeafSetBuilder(node);
58 public static <T> SystemLeafSetNode.@NonNull Builder<T> leafSetBuilder() {
59 return BUILDER_FACTORY.newSystemLeafSetBuilder();
62 public static <T> SystemLeafSetNode.@NonNull Builder<T> leafSetBuilder(final int sizeHint) {
63 return BUILDER_FACTORY.newSystemLeafSetBuilder(sizeHint);
66 public static <T> SystemLeafSetNode.@NonNull Builder<T> leafSetBuilder(final SystemLeafSetNode<T> node) {
67 return BUILDER_FACTORY.newSystemLeafSetBuilder(node);
70 public static ContainerNode.@NonNull Builder containerBuilder() {
71 return BUILDER_FACTORY.newContainerBuilder();
74 public static ContainerNode.@NonNull Builder containerBuilder(final int sizeHint) {
75 return BUILDER_FACTORY.newContainerBuilder(sizeHint);
78 public static ContainerNode.@NonNull Builder containerBuilder(final ContainerNode node) {
79 return BUILDER_FACTORY.newContainerBuilder(node);
82 public static MapEntryNode.@NonNull Builder mapEntryBuilder() {
83 return BUILDER_FACTORY.newMapEntryBuilder();
86 public static MapEntryNode.@NonNull Builder mapEntryBuilder(final int sizeHint) {
87 return BUILDER_FACTORY.newMapEntryBuilder(sizeHint);
90 public static MapEntryNode.@NonNull Builder mapEntryBuilder(final MapEntryNode mapEntryNode) {
91 return BUILDER_FACTORY.newMapEntryBuilder(mapEntryNode);
94 public static UserMapNode.@NonNull Builder orderedMapBuilder() {
95 return BUILDER_FACTORY.newUserMapBuilder();
98 public static UserMapNode.@NonNull Builder orderedMapBuilder(final int sizeHint) {
99 return BUILDER_FACTORY.newUserMapBuilder(sizeHint);
102 public static UnkeyedListNode.@NonNull Builder unkeyedListBuilder() {
103 return BUILDER_FACTORY.newUnkeyedListBuilder();
106 public static UnkeyedListNode.@NonNull Builder unkeyedListBuilder(final int sizeHint) {
107 return BUILDER_FACTORY.newUnkeyedListBuilder(sizeHint);
110 public static SystemMapNode.@NonNull Builder mapBuilder() {
111 return BUILDER_FACTORY.newSystemMapBuilder();
114 public static SystemMapNode.@NonNull Builder mapBuilder(final int sizeHint) {
115 return BUILDER_FACTORY.newSystemMapBuilder(sizeHint);
118 public static SystemMapNode.@NonNull Builder mapBuilder(final SystemMapNode node) {
119 return BUILDER_FACTORY.newSystemMapBuilder(node);
122 public static ChoiceNode.@NonNull Builder choiceBuilder() {
123 return BUILDER_FACTORY.newChoiceBuilder();
126 public static ChoiceNode.@NonNull Builder choiceBuilder(final int sizeHint) {
127 return BUILDER_FACTORY.newChoiceBuilder(sizeHint);
130 public static UnkeyedListEntryNode.@NonNull Builder unkeyedListEntryBuilder() {
131 return BUILDER_FACTORY.newUnkeyedListEntryBuilder();
134 public static UnkeyedListEntryNode.@NonNull Builder unkeyedListEntryBuilder(final int sizeHint) {
135 return BUILDER_FACTORY.newUnkeyedListEntryBuilder(sizeHint);