*/
package org.opendaylight.yangtools.yang.parser.builder.api;
-import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
-import org.opendaylight.yangtools.yang.parser.builder.impl.ConstraintsBuilder;
/**
* Interface for all yang data-schema nodes [anyxml, case, container, grouping,
* list, module, notification].
+ *
+ * @deprecated Pre-Beryllium implementation, scheduled for removal.
*/
-public interface DataSchemaNodeBuilder extends SchemaNodeBuilder {
+@Deprecated
+public interface DataSchemaNodeBuilder extends SchemaNodeBuilder, GroupingMember {
- void setQName(QName qname);
+ /**
+ * Get original builder definition from grouping, where it is defined.
+ *
+ * @return original builder definition from grouping if this node is added
+ * by uses, null otherwise
+ */
+ SchemaNodeBuilder getOriginal();
/**
- * Build DataSchemaNode object from this builder.
+ * Set original builder definition from grouping
+ *
+ * @param original
+ * original builder definition from grouping
*/
- DataSchemaNode build();
+ void setOriginal(SchemaNodeBuilder original);
/**
+ *
+ * Returns true if product of this builder is added by augmentation.
*
* @return true, if this node is added by augmentation, false otherwise
*/
boolean isAugmenting();
/**
- * Set if this node is added by augmentation.
+ * Set if the product of the builder node is introduced by augmentation.
*
- * @param augmenting
+ * @param augmenting information about augmentation
*/
void setAugmenting(boolean augmenting);
*
* @return value of config statement
*/
- Boolean isConfiguration();
+ boolean isConfiguration();
/**
- * Set config statement.
+ * Set config statement to the product.
*
- * @param config
+ *
+ * @param config true if config true was set, false if config false was set.
*/
- void setConfiguration(Boolean config);
+ void setConfiguration(boolean config);
/**
* Get constraints of this builder.
*/
ConstraintsBuilder getConstraints();
+ /**
+ * Build DataSchemaNode object from this builder.
+ *
+ * @return instance of {@link DataSchemaNode} based on the state present in this builder.
+ */
+ @Override
+ DataSchemaNode build();
+
}