Add support for .equals() to Java structs.
- Add a new method to t_java_generator that generates a .equals() method.
- Add a correct but useless implementation of hashCode for structs.
(This is required by conventino when overriding .equals().)
- Add java_package to DebugProtoTest and OptionalRequiredTest.
- Add a new structure to OptionalRequiredTest to assist testing the behavior
of .equals() with respect to null and unset fields.
- Clean up test/java/build.xml a bit. (It still has a ways to go.)
- Add EqualityTest.java to test .equals().
- Add IdentityTest.java to test that writing and reading a structure
preserves equality.
Tested by runnint atn test.
I also looked at the generated code for OptionalRequiredTest.thrift.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665541 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/test/OptionalRequiredTest.thrift b/test/OptionalRequiredTest.thrift
index a635813..d8f0fa0 100644
--- a/test/OptionalRequiredTest.thrift
+++ b/test/OptionalRequiredTest.thrift
@@ -1,4 +1,5 @@
namespace cpp thrift.test
+namespace java thrift.test
struct OldSchool {
1: i16 im_int;
@@ -41,3 +42,12 @@
5: optional i32 opt5;
6: optional i32 opt6;
}
+
+struct JavaTestHelper {
+ 1: required i32 req_int;
+ 2: optional i32 opt_int;
+ 3: required string req_obj;
+ 4: optional string opt_obj;
+ 5: required binary req_bin;
+ 6: optional binary opt_bin;
+}