/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.ptc.tifworkbench.generator;
import com.ptc.tifworkbench.jaxbbinding.FieldReference;
import com.ptc.tifworkbench.jaxbbinding.TypeDefinition;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.PrintStream;
/**
*
* @author pbowden
*/
public class BasicJavaClassWriter extends AbstractClassWriter
{
public BasicJavaClassWriter(String packageName, String className, TypeDefinition tdef, File directory) throws FileNotFoundException, IOException
{
super(packageName, className, tdef, directory);
}
@Override
protected void writeClassHeader(TypeDefinition tdef, String className, PrintStream ps) throws IOException
{
println(0, "/* Generated class for " + className + " do not edit. */");
println(0, "package " + getPackageName() + ";");
}
@Override
protected void writeClassDeclaration(TypeDefinition tdef, String className, PrintStream ps) throws IOException
{
println(0, "class " + className);
println(0, "{");
}
@Override
protected void writeClassMembers(TypeDefinition tdef, String className, PrintStream ps) throws IOException
{
}
@Override
protected void writeConstructor(TypeDefinition tdef, String className, PrintStream ps) throws IOException
{
println(1, "public " + className + "()");
println(1, "{");
println(1, "}");
}
@Override
protected void writeFieldAccessors(FieldReference fref, PrintStream ps) throws IOException
{
String aname = makeJavaName(fref.getName());
println(1, "// Get the value of the field: " + fref.getName());
println(1, "public String get" + aname + "()");
println(1, "{");
writeGetterBody(fref, ps);
println(1, "}");
println(1, "// Set the value of the field: " + fref.getName());
println(1, "public void set" + aname + "(String value)");
println(1, "{");
writeSetterBody(fref, ps);
println(1, "}");
}
protected void writeGetterBody(FieldReference fref, PrintStream ps)
{
println(2, "");
}
protected void writeSetterBody(FieldReference fref, PrintStream ps)
{
println(2, "");
}
}