a97385c57d9b12501185946bf6f6867264c14474
[yangtools.git] / code-generator / binding-java-api-generator / src / main / java / org / opendaylight / yangtools / sal / java / api / generator / TOGenerator.java
1 /*\r
2  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
3  *\r
4  * This program and the accompanying materials are made available under the\r
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
6  * and is available at http://www.eclipse.org/legal/epl-v10.html\r
7  */\r
8 package org.opendaylight.yangtools.sal.java.api.generator;\r
9 \r
10 import java.io.IOException;\r
11 import java.io.StringWriter;\r
12 import java.io.Writer;\r
13 \r
14 import org.opendaylight.yangtools.sal.java.api.generator.ClassTemplate;\r
15 import org.opendaylight.yangtools.sal.binding.model.api.CodeGenerator;\r
16 import org.opendaylight.yangtools.sal.binding.model.api.GeneratedTransferObject;\r
17 import org.opendaylight.yangtools.sal.binding.model.api.Type;\r
18 \r
19 public final class TOGenerator extends AbstractCodeGenerator {\r
20 \r
21     @Override\r
22     public Writer generate(Type type) throws IOException {\r
23         final Writer writer = new StringWriter();\r
24         if (type instanceof GeneratedTransferObject) {\r
25             final GeneratedTransferObject genTO = (GeneratedTransferObject) type;\r
26             final ClassTemplate template = new ClassTemplate(genTO);\r
27             writer.write(template.generate().toString());\r
28         }\r
29         return writer;\r
30     }\r
31     \r
32     @Override\r
33     public boolean isAcceptable(Type type) {\r
34         return type instanceof GeneratedTransferObject;\r
35     }\r
36 \r
37 }\r