-/*\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.yangtools.sal.java.api.generator;\r
-\r
-import java.io.IOException;\r
-import java.io.StringWriter;\r
-import java.io.Writer;\r
-\r
-import org.opendaylight.yangtools.sal.java.api.generator.ClassTemplate;\r
-import org.opendaylight.yangtools.sal.binding.model.api.CodeGenerator;\r
-import org.opendaylight.yangtools.sal.binding.model.api.GeneratedTransferObject;\r
-import org.opendaylight.yangtools.sal.binding.model.api.Type;\r
-\r
-public final class TOGenerator extends AbstractCodeGenerator {\r
-\r
- @Override\r
- public Writer generate(Type type) throws IOException {\r
- final Writer writer = new StringWriter();\r
- if (type instanceof GeneratedTransferObject) {\r
- final GeneratedTransferObject genTO = (GeneratedTransferObject) type;\r
- final ClassTemplate template = new ClassTemplate(genTO);\r
- writer.write(template.generate().toString());\r
- }\r
- return writer;\r
- }\r
- \r
- @Override\r
- public boolean isAcceptable(Type type) {\r
- return type instanceof GeneratedTransferObject;\r
- }\r
-\r
-}\r
+/*
+ * 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.yangtools.sal.java.api.generator;
+
+import org.opendaylight.yangtools.sal.binding.model.api.CodeGenerator;
+import org.opendaylight.yangtools.sal.binding.model.api.GeneratedTransferObject;
+import org.opendaylight.yangtools.sal.binding.model.api.Type;
+
+/**
+ *
+ * Transformator of the data from the virtual form to JAVA source code. The
+ * result source code represents JAVA class. For generating of the source code
+ * is used the template written in XTEND language.
+ *
+ */
+public final class TOGenerator implements CodeGenerator {
+
+ /**
+ * Generates JAVA source code for generated type <code>Type</code>. The code
+ * is generated according to the template source code template which is
+ * written in XTEND language.
+ */
+ @Override
+ public String generate(Type type) {
+ if (type instanceof GeneratedTransferObject) {
+ final GeneratedTransferObject genTO = (GeneratedTransferObject) type;
+ final ClassTemplate template = new ClassTemplate(genTO);
+ return template.generate();
+ }
+ return "";
+ }
+
+ @Override
+ public boolean isAcceptable(Type type) {
+ return type instanceof GeneratedTransferObject;
+ }
+
+ @Override
+ public String getUnitName(Type type) {
+ return type.getName();
+ }
+
+}