From 87e9ac638241ca215846bb7643ef8af4ec6fe893 Mon Sep 17 00:00:00 2001 From: David Reiss Date: Tue, 10 Jun 2008 22:56:34 +0000 Subject: [PATCH] Fix a bug with initialization in JavaBean-style generated code. git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@666371 13f79535-47bb-0310-9956-ffa450edef68 --- compiler/cpp/src/generate/t_java_generator.cc | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/compiler/cpp/src/generate/t_java_generator.cc b/compiler/cpp/src/generate/t_java_generator.cc index f473e494..6268adf2 100644 --- a/compiler/cpp/src/generate/t_java_generator.cc +++ b/compiler/cpp/src/generate/t_java_generator.cc @@ -384,7 +384,15 @@ void t_java_generator::print_const_value(std::ofstream& out, string name, t_type throw "type error: " + type->get_name() + " has no field " + v_iter->first->get_string(); } string val = render_const_value(out, name, field_type, v_iter->second); - indent(out) << name << "." << v_iter->first->get_string() << " = " << val << ";" << endl; + indent(out) << name << "."; + if (bean_style_) { + std::string cap_name = v_iter->first->get_string(); + cap_name[0] = toupper(cap_name[0]); + out << "set" << cap_name << "(" << val << ")"; + } else { + out << v_iter->first->get_string() << " = " << val; + } + out << ";" << endl; indent(out) << name << ".__isset." << v_iter->first->get_string() << " = true;" << endl; } if (!in_static) { -- 2.17.1