code: @Override
     public void writeClassBody(Definition def, Writer out) throws IOException
     {
        if (def.isUseAnnotation())
        {
           if (!def.isDefaultPackageInbound())
           {
              out.write("@Activation(messageListeners = { " + def.getMlClass() + ".class })\n");
           }
           else
           {
              out.write("@Activation(messageListeners = { " + def.getRaPackage() +
                    ".inflow." + def.getMlClass() + ".class })\n");
           }
        }
        out.write("public class " + getClassName(def) + " implements ActivationSpec");
        writeLeftCurlyBracket(out, 0);
        writeEol(out);
  
        int indent = 1;
        writeWithIndent(out, indent, "/** The logger */\n");
        writeWithIndent(out, indent, "private static Logger log = Logger.getLogger(" + getSelfClassName(def) + ");\n\n");
  
        writeWithIndent(out, indent, "/** The resource adapter */\n");
        writeWithIndent(out, indent, "private ResourceAdapter ra;\n\n");
  
        writeConfigPropsDeclare(def, out, indent);
  
        writeDefaultConstructor(def, out, indent);
  
        writeConfigProps(def, out, indent);
  
        writeValidate(def, out, indent);
        writeResourceAdapter(def, out, indent);
  
        writeRightCurlyBracket(out, 0);
     }
docs: Output class
  
  @param def definition
  @param out Writer
  @throws IOException ioException