import java.util.Map;\r
import java.util.Set;\r
\r
+import org.opendaylight.controller.binding.generator.util.generated.type.builder.GeneratedTOBuilderImpl;\r
import org.opendaylight.controller.sal.binding.model.api.ConcreteType;\r
+import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject;\r
import org.opendaylight.controller.sal.binding.model.api.ParameterizedType;\r
import org.opendaylight.controller.sal.binding.model.api.Type;\r
+import org.opendaylight.controller.sal.binding.model.api.WildcardType;\r
import org.opendaylight.controller.yang.binding.Augmentable;\r
import org.opendaylight.controller.yang.binding.Augmentation;\r
+import org.opendaylight.controller.yang.binding.BaseIdentity;\r
import org.opendaylight.controller.yang.binding.DataObject;\r
\r
public final class Types {\r
\r
/**\r
* Returns an instance of {@link ConcreteType} describing the class\r
- * \r
+ *\r
* @param cls\r
* Class to describe\r
* @return Description of class\r
/**\r
* Returns an instance of {@link ParameterizedType} describing the typed\r
* {@link Map}<K,V>\r
- * \r
+ *\r
* @param keyType\r
* Key Type\r
* @param valueType\r
/**\r
* Returns an instance of {@link ParameterizedType} describing the typed\r
* {@link Set}<V> with concrete type of value.\r
- * \r
+ *\r
* @param valueType\r
* Value Type\r
* @return Description of generic type instance of Set\r
/**\r
* Returns an instance of {@link ParameterizedType} describing the typed\r
* {@link List}<V> with concrete type of value.\r
- * \r
+ *\r
* @param valueType\r
* Value Type\r
* @return Description of type instance of List\r
return parameterizedTypeFor(LIST_TYPE, valueType);\r
}\r
\r
+ public static GeneratedTransferObject getBaseIdentityTO() {\r
+ Class<BaseIdentity> cls = BaseIdentity.class;\r
+ GeneratedTOBuilderImpl gto = new GeneratedTOBuilderImpl(cls.getPackage().getName(),\r
+ cls.getSimpleName());\r
+ return gto.toInstance();\r
+ }\r
+\r
/**\r
- * \r
+ *\r
* @param type\r
* @param parameters\r
* @return\r
Type... parameters) {\r
return new ParametrizedTypeImpl(type, parameters);\r
}\r
- \r
+\r
+ public static WildcardType wildcardTypeFor(String packageName, String typeName) {\r
+ return new WildcardTypeImpl(packageName, typeName);\r
+ }\r
+\r
public static ParameterizedType augmentableTypeFor(Type valueType) {\r
final Type augmentable = typeForClass(Augmentable.class);\r
return parameterizedTypeFor(augmentable, valueType);\r
}\r
- \r
+\r
public static ParameterizedType augmentationTypeFor(Type valueType) {\r
final Type augmentation = typeForClass(Augmentation.class);\r
return parameterizedTypeFor(augmentation, valueType);\r
}\r
- \r
+\r
private static class ConcreteTypeImpl extends AbstractBaseType implements\r
ConcreteType {\r
private ConcreteTypeImpl(String pkName, String name) {\r
}\r
\r
}\r
+\r
+ private static class WildcardTypeImpl extends AbstractBaseType\r
+ implements WildcardType {\r
+ public WildcardTypeImpl(String packageName, String typeName) {\r
+ super(packageName, typeName);\r
+ }\r
+ }\r
+\r
}\r