Merge "OF plugin classes must have a strict dependency on Connection Service"
[controller.git] / opendaylight / sal / yang-prototype / code-generator / binding-model-api / src / main / java / org / opendaylight / controller / sal / binding / model / api / Type.java
index 1ec3c9fab2e06da547a256f840846f03be87896e..c564ab46e4740a42150627d59bef7a63386d5f9a 100644 (file)
@@ -7,6 +7,13 @@
  */\r
 package org.opendaylight.controller.sal.binding.model.api;\r
 \r
+/**\r
+ * The Type interface defines the base type for all types defined in java.\r
+ * Each Type defined in java MUST contain name and package name,\r
+ * except of primitive types like int, byte etc. In case of mapping of\r
+ * primitive type the package name MUST be left as empty string.\r
+ *\r
+ */\r
 public interface Type {\r
     /**\r
      * Returns name of the package that interface belongs to.\r
@@ -21,4 +28,19 @@ public interface Type {
      * @return name of the interface.\r
      */\r
     public String getName();\r
+\r
+    /**\r
+     * Returns fully qualified name of Type.\r
+     * <br>\r
+     * The fully qualified name of Type MUST be returned in following format:\r
+     * <ul>\r
+     *     <li>If does not contains package name: [type name] (e.g. int, byte,\r
+     *     byte[],...)</li>\r
+     *     <li>If Type contains package name: [package name].[type name]\r
+     *     (e.g java.lang.Byte, org.opendaylight.controller.gen.GenType)</li>\r
+     * </ul>\r
+     *\r
+     * @return fully qualified name of Type.\r
+     */\r
+    public String getFullyQualifiedName();\r
 }\r