From: Bryan Duxbury Date: Tue, 10 Feb 2009 18:36:56 +0000 (+0000) Subject: THRIFT-316. java: @Override isn't generated for hashCode() without the hash code... X-Git-Tag: 0.2.0~307 X-Git-Url: https://source.supwisdom.com/gerrit/gitweb?a=commitdiff_plain;h=30e1de9fd5c11e5df3fc3673620ccac3299d8b86;p=common%2Fthrift.git THRIFT-316. java: @Override isn't generated for hashCode() without the hash code builder Fixed with a trivial reorganization of the hashCode method generation. git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@743046 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/compiler/cpp/src/generate/t_java_generator.cc b/compiler/cpp/src/generate/t_java_generator.cc index a9ad54f3..e8eab5c3 100644 --- a/compiler/cpp/src/generate/t_java_generator.cc +++ b/compiler/cpp/src/generate/t_java_generator.cc @@ -861,13 +861,11 @@ void t_java_generator::generate_java_struct_equality(ofstream& out, scope_down(out); out << endl; + out << indent() << "@Override" << endl << + indent() << "public int hashCode() {" << endl; + indent_up(); if (gen_hash_code_) { - out << indent() << "@Override" << endl << - indent() << "public int hashCode() {" << endl; - indent_up(); - - out << - indent() << "HashCodeBuilder builder = new HashCodeBuilder();" << endl; + indent(out) << "HashCodeBuilder builder = new HashCodeBuilder();" << endl; for (m_iter = members.begin(); m_iter != members.end(); ++m_iter) { out << endl; @@ -895,20 +893,12 @@ void t_java_generator::generate_java_struct_equality(ofstream& out, } out << endl; - out << - indent() << "return builder.toHashCode();" << endl; - scope_down(out); - out << endl; - + indent(out) << "return builder.toHashCode();" << endl; } else { - out << - indent() << "public int hashCode() {" << endl; - indent_up(); - out << - indent() << "return 0;" << endl; - scope_down(out); - out << endl; + indent(out) << "return 0;" << endl; } + indent_down(); + indent(out) << "}" << endl << endl; } /**