THRIFT-3098 Print binary typedefs the same way we do binary fields
Client: Java
Patch: Roshan George <roshan@arjie.com>

This closes #445
diff --git a/compiler/cpp/src/generate/t_java_generator.cc b/compiler/cpp/src/generate/t_java_generator.cc
index 3d8da1e..ee58ad5 100644
--- a/compiler/cpp/src/generate/t_java_generator.cc
+++ b/compiler/cpp/src/generate/t_java_generator.cc
@@ -2420,17 +2420,17 @@
       indent_up();
     }
 
-    if (field->get_type()->is_base_type() && ((t_base_type*)(field->get_type()))->is_binary()) {
+    if (get_true_type(field->get_type())->is_base_type() && ((t_base_type*)(get_true_type(field->get_type())))->is_binary()) {
       indent(out) << "org.apache.thrift.TBaseHelper.toString(this." << field->get_name() << ", sb);"
                   << endl;
     } else if ((field->get_type()->is_set()) &&
-               (((t_set*) field->get_type())->get_elem_type()->is_base_type()) &&
-               (((t_base_type*) ((t_set*) field->get_type())->get_elem_type())->is_binary())) {
+               (get_true_type(((t_set*) field->get_type())->get_elem_type())->is_base_type()) &&
+               (((t_base_type*) get_true_type(((t_set*) field->get_type())->get_elem_type()))->is_binary())) {
       indent(out) << "org.apache.thrift.TBaseHelper.toString(this." << field->get_name() << ", sb);"
                   << endl;
     } else if ((field->get_type()->is_list()) &&
-               (((t_list*) field->get_type())->get_elem_type()->is_base_type()) &&
-               (((t_base_type*) ((t_list*) field->get_type())->get_elem_type())->is_binary())) {
+               (get_true_type(((t_list*) field->get_type())->get_elem_type())->is_base_type()) &&
+               (((t_base_type*) get_true_type(((t_list*) field->get_type())->get_elem_type()))->is_binary())) {
       indent(out) << "org.apache.thrift.TBaseHelper.toString(this." << field->get_name() << ", sb);"
                   << endl;
     } else {