public void generateToString() {
JMethod toString1 = cls().method(JMod.PUBLIC, cm.ref("java.lang.String"), "toString");
toString1.body()._return(ref("this").invoke("toString").arg(lit("")));
JMethod toString2 = cls().method(JMod.PUBLIC, cm.ref("java.lang.String"), "toString");
toString2.param(String.class, "indent");
toString2.body().decl(cm.ref("java.lang.String"), "rc", lit(""));
for (int i = 0; i < amqpFields.size(); i++) {
Attribute attr = amqpFields.get(i);
if ( attr.attribute.type().isArray() ) {
JBlock block = toString2.body()._if(_this().ref(attr.attribute).ne(_null()))._then().block();
block._if(ref("rc").invoke("length").ne(lit(0)))._then().assignPlus(ref("rc"), lit(",\n"));
block.assignPlus(ref("rc"), ref("indent").plus(lit(" " + attr.attribute.name() + ":").plus(cm.ref("java.util.Arrays").staticInvoke("toString").arg(_this().ref(attr.attribute)))));
} else {
JExpression value = _this().ref(attr.attribute);
if ( generator.getMapping().get(attr.type) == null ) {
value = value.invoke("toString").arg(ref("indent").plus(lit(" ")));
}
JBlock block = toString2.body()._if(_this().ref(attr.attribute).ne(_null()))._then().block();
block._if(ref("rc").invoke("length").ne(lit(0)))._then().assignPlus(ref("rc"), lit(",\n"));
block.assignPlus(ref("rc"), ref("indent").plus(lit(" " + attr.attribute.name() + ":").plus(value)));
}
}
toString2.body()._if(ref("rc").invoke("length").ne(lit(0)))._then().
assign(ref("rc"), lit(", {\n").plus(ref("rc").plus(lit("}"))));
toString2.body()._return(lit("[" + toJavaClassName(type.getName())).plus(ref("rc")).plus(lit("]")));
}