Implemented refine statement parsing.
[controller.git] / opendaylight / sal / yang-prototype / code-generator / yang-model-parser-impl / src / main / java / org / opendaylight / controller / yang / model / parser / builder / api / TypeDefinitionBuilder.java
index fc7ef22b80b679328988cab6b4f9b3d37611cc12..a18fa8b4d66794d9e2c46f00cc2642b95ad1e9cc 100644 (file)
@@ -1,24 +1,65 @@
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-package org.opendaylight.controller.yang.model.parser.builder.api;
-
-import org.opendaylight.controller.yang.common.QName;
-import org.opendaylight.controller.yang.model.api.TypeDefinition;
-
-
-/**
- * Interface for builders of 'typedef' statement.
- */
-public interface TypeDefinitionBuilder {
-
-       QName getQName();
-       TypeDefinition<?> getBaseType();
-       TypeDefinition<?> build();
-       void setUnits(String units);
-
-}
+/*\r
+ * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
+ *\r
+ * This program and the accompanying materials are made available under the\r
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
+ * and is available at http://www.eclipse.org/legal/epl-v10.html\r
+ */\r
+package org.opendaylight.controller.yang.model.parser.builder.api;\r
+\r
+import java.util.List;\r
+\r
+import org.opendaylight.controller.yang.common.QName;\r
+import org.opendaylight.controller.yang.model.api.SchemaPath;\r
+import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.TypeDefinition;\r
+import org.opendaylight.controller.yang.model.api.type.LengthConstraint;\r
+import org.opendaylight.controller.yang.model.api.type.PatternConstraint;\r
+import org.opendaylight.controller.yang.model.api.type.RangeConstraint;\r
+import org.opendaylight.controller.yang.model.parser.builder.impl.UnknownSchemaNodeBuilder;\r
+\r
+/**\r
+ * Interface for builders of 'typedef' statement.\r
+ */\r
+public interface TypeDefinitionBuilder extends TypeAwareBuilder,\r
+        SchemaNodeBuilder {\r
+\r
+    TypeDefinition<?> build();\r
+\r
+    QName getQName();\r
+\r
+    SchemaPath getPath();\r
+\r
+    String getDescription();\r
+\r
+    String getReference();\r
+\r
+    Status getStatus();\r
+\r
+    List<RangeConstraint> getRanges();\r
+\r
+    void setRanges(List<RangeConstraint> ranges);\r
+\r
+    List<LengthConstraint> getLengths();\r
+\r
+    void setLengths(List<LengthConstraint> lengths);\r
+\r
+    List<PatternConstraint> getPatterns();\r
+\r
+    void setPatterns(List<PatternConstraint> patterns);\r
+\r
+    Integer getFractionDigits();\r
+\r
+    void setFractionDigits(Integer fractionDigits);\r
+\r
+    List<UnknownSchemaNodeBuilder> getUnknownNodes();\r
+\r
+    Object getDefaultValue();\r
+\r
+    void setDefaultValue(Object defaultValue);\r
+\r
+    String getUnits();\r
+\r
+    void setUnits(String units);\r
+\r
+}\r