in activemq-openwire-generator/src/main/java/org/apache/activemq/openwire/tool/JavaMarshallingGenerator.java [54:244]
protected void generateFile(PrintWriter out) throws Exception {
generateLicence(out);
out.println("");
out.println("package org.apache.activemq.openwire.v" + getOpenwireVersion() + ";");
out.println("");
out.println("import java.io.DataInput;");
out.println("import java.io.DataOutput;");
out.println("import java.io.IOException;");
out.println("");
out.println("import org.apache.activemq.openwire.*;");
out.println("import org.apache.activemq.command.*;");
out.println("");
out.println("");
for (int i = 0; i < getJclass().getImportedPackages().length; i++) {
JPackage pkg = getJclass().getImportedPackages()[i];
for (int j = 0; j < pkg.getClasses().length; j++) {
JClass clazz = pkg.getClasses()[j];
out.println("import " + clazz.getQualifiedName() + ";");
}
}
out.println("");
out.println("/**");
out.println(" * Marshalling code for Open Wire Format for " + getClassName() + "");
out.println(" *");
out.println(" *");
out.println(" * NOTE!: This file is auto generated - do not modify!");
out.println(" * if you need to make a change, please see the modify the groovy scripts in the");
out.println(" * under src/gram/script and then use maven openwire:generate to regenerate ");
out.println(" * this file.");
out.println(" *");
out.println(" * ");
out.println(" */");
out.println("public " + getAbstractClassText() + "class " + getClassName() + " extends " + getBaseClass() + " {");
out.println("");
if (!isAbstractClass()) {
out.println(" /**");
out.println(" * Return the type of Data Structure we marshal");
out.println(" * @return short representation of the type data structure");
out.println(" */");
out.println(" public byte getDataStructureType() {");
out.println(" return " + getJclass().getSimpleName() + ".DATA_STRUCTURE_TYPE;");
out.println(" }");
out.println(" ");
out.println(" /**");
out.println(" * @return a new object instance");
out.println(" */");
out.println(" public DataStructure createObject() {");
out.println(" return new " + getJclass().getSimpleName() + "();");
out.println(" }");
out.println("");
}
out.println(" /**");
out.println(" * Un-marshal an object instance from the data input stream");
out.println(" *");
out.println(" * @param o the object to un-marshal");
out.println(" * @param dataIn the data input stream to build the object from");
out.println(" * @throws IOException");
out.println(" */");
out.println(" public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException {");
out.println(" super.tightUnmarshal(wireFormat, o, dataIn, bs);");
if (!getProperties().isEmpty()) {
out.println("");
out.println(" " + getJclass().getSimpleName() + " info = (" + getJclass().getSimpleName() + ")o;");
}
if (isMarshallerAware()) {
out.println("");
out.println(" info.beforeUnmarshall(wireFormat);");
out.println(" ");
}
generateTightUnmarshalBody(out);
if (isMarshallerAware()) {
out.println("");
out.println(" info.afterUnmarshall(wireFormat);");
}
out.println("");
out.println(" }");
out.println("");
out.println("");
out.println(" /**");
out.println(" * Write the booleans that this object uses to a BooleanStream");
out.println(" */");
out.println(" public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException {");
if (!getProperties().isEmpty()) {
out.println("");
out.println(" " + getJclass().getSimpleName() + " info = (" + getJclass().getSimpleName() + ")o;");
}
if (isMarshallerAware()) {
out.println("");
out.println(" info.beforeMarshall(wireFormat);");
}
out.println("");
out.println(" int rc = super.tightMarshal1(wireFormat, o, bs);");
int baseSize = generateTightMarshal1Body(out);
out.println("");
out.println(" return rc + " + baseSize + ";");
out.println(" }");
out.println("");
out.println(" /**");
out.println(" * Write a object instance to data output stream");
out.println(" *");
out.println(" * @param o the instance to be marshaled");
out.println(" * @param dataOut the output stream");
out.println(" * @throws IOException thrown if an error occurs");
out.println(" */");
out.println(" public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException {");
out.println(" super.tightMarshal2(wireFormat, o, dataOut, bs);");
if (!getProperties().isEmpty()) {
out.println("");
out.println(" " + getJclass().getSimpleName() + " info = (" + getJclass().getSimpleName() + ")o;");
}
generateTightMarshal2Body(out);
if (isMarshallerAware()) {
out.println("");
out.println(" info.afterMarshall(wireFormat);");
}
out.println("");
out.println(" }");
out.println("");
out.println(" /**");
out.println(" * Un-marshal an object instance from the data input stream");
out.println(" *");
out.println(" * @param o the object to un-marshal");
out.println(" * @param dataIn the data input stream to build the object from");
out.println(" * @throws IOException");
out.println(" */");
out.println(" public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException {");
out.println(" super.looseUnmarshal(wireFormat, o, dataIn);");
if (!getProperties().isEmpty()) {
out.println("");
out.println(" " + getJclass().getSimpleName() + " info = (" + getJclass().getSimpleName() + ")o;");
}
if (isMarshallerAware()) {
out.println("");
out.println(" info.beforeUnmarshall(wireFormat);");
out.println(" ");
}
generateLooseUnmarshalBody(out);
if (isMarshallerAware()) {
out.println("");
out.println(" info.afterUnmarshall(wireFormat);");
}
out.println("");
out.println(" }");
out.println("");
out.println("");
out.println(" /**");
out.println(" * Write the booleans that this object uses to a BooleanStream");
out.println(" */");
out.println(" public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException {");
if (!getProperties().isEmpty()) {
out.println("");
out.println(" " + getJclass().getSimpleName() + " info = (" + getJclass().getSimpleName() + ")o;");
}
if (isMarshallerAware()) {
out.println("");
out.println(" info.beforeMarshall(wireFormat);");
}
out.println("");
out.println(" super.looseMarshal(wireFormat, o, dataOut);");
generateLooseMarshalBody(out);
out.println("");
out.println(" }");
out.println("}");
}