in activemq-openwire-generator/src/main/java/org/apache/activemq/openwire/tool/CSharpMarshallingGenerator.java [361:531]
protected void generateFile(PrintWriter out) throws Exception {
generateLicence(out);
out.println("");
out.println("//");
out.println("// NOTE!: This file is autogenerated - do not modify!");
out.println("// if you need to make a change, please see the Groovy scripts in the");
out.println("// activemq-core module");
out.println("//");
out.println("");
out.println("using System;");
out.println("using System.Collections;");
out.println("using System.IO;");
out.println("");
out.println("using ActiveMQ.Commands;");
out.println("using ActiveMQ.OpenWire;");
out.println("using ActiveMQ.OpenWire.V" + getOpenwireVersion() + ";");
out.println("");
out.println("namespace ActiveMQ.OpenWire.V" + getOpenwireVersion() + "");
out.println("{");
out.println(" /// <summary>");
out.println(" /// Marshalling code for Open Wire Format for " + jclass.getSimpleName() + "");
out.println(" /// </summary>");
out.println(" " + getAbstractClassText() + "class " + getClassName() + " : " + getBaseClass() + "");
out.println(" {");
if (!isAbstractClass()) {
out.println("");
out.println("");
out.println(" public override DataStructure CreateObject() ");
out.println(" {");
out.println(" return new " + jclass.getSimpleName() + "();");
out.println(" }");
out.println("");
out.println(" public override byte GetDataStructureType() ");
out.println(" {");
out.println(" return " + jclass.getSimpleName() + ".ID_" + jclass.getSimpleName() + ";");
out.println(" }");
}
/*
* Generate the tight encoding marshallers
*/
out.println("");
out.println(" // ");
out.println(" // Un-marshal an object instance from the data input stream");
out.println(" // ");
out.println(" public override void TightUnmarshal(OpenWireFormat wireFormat, Object o, BinaryReader dataIn, BooleanStream bs) ");
out.println(" {");
out.println(" base.TightUnmarshal(wireFormat, o, dataIn, bs);");
if (!getProperties().isEmpty() || isMarshallerAware()) {
out.println("");
out.println(" " + jclass.getSimpleName() + " info = (" + jclass.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(" // Write the booleans that this object uses to a BooleanStream");
out.println(" //");
out.println(" public override int TightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) {");
out.println(" " + jclass.getSimpleName() + " info = (" + jclass.getSimpleName() + ")o;");
if (isMarshallerAware()) {
out.println("");
out.println(" info.BeforeMarshall(wireFormat);");
}
out.println("");
out.println(" int rc = base.TightMarshal1(wireFormat, info, 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(" public override void TightMarshal2(OpenWireFormat wireFormat, Object o, BinaryWriter dataOut, BooleanStream bs) {");
out.println(" base.TightMarshal2(wireFormat, o, dataOut, bs);");
if (!getProperties().isEmpty() || isMarshallerAware()) {
out.println("");
out.println(" " + jclass.getSimpleName() + " info = (" + jclass.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(" public override void LooseUnmarshal(OpenWireFormat wireFormat, Object o, BinaryReader dataIn) ");
out.println(" {");
out.println(" base.LooseUnmarshal(wireFormat, o, dataIn);");
if (!getProperties().isEmpty() || isMarshallerAware()) {
out.println("");
out.println(" " + jclass.getSimpleName() + " info = (" + jclass.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(" // Write a object instance to data output stream");
out.println(" //");
out.println(" public override void LooseMarshal(OpenWireFormat wireFormat, Object o, BinaryWriter dataOut) {");
if (!getProperties().isEmpty() || isMarshallerAware()) {
out.println("");
out.println(" " + jclass.getSimpleName() + " info = (" + jclass.getSimpleName() + ")o;");
}
if (isMarshallerAware()) {
out.println("");
out.println(" info.BeforeMarshall(wireFormat);");
}
out.println("");
out.println(" base.LooseMarshal(wireFormat, o, dataOut);");
generateLooseMarshalBody(out);
if (isMarshallerAware()) {
out.println("");
out.println(" info.AfterMarshall(wireFormat);");
}
out.println("");
out.println(" }");
out.println(" }");
out.println("}");
}