Advertisement
Guest User

Untitled

a guest
Jul 3rd, 2015
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.60 KB | None | 0 0
  1. package com.esotericsoftware.kryo;
  2.  
  3. import java.io.Serializable;
  4. import java.lang.reflect.Array;
  5. import java.util.Arrays;
  6.  
  7. public class PrivateInnerClassTest extends KryoTestCase {
  8. {
  9. supportsCopy = true;
  10. }
  11.  
  12. public void testPrivateInnerClassArrays () throws Exception {
  13. kryo.setReferences(true);
  14. kryo.setRegistrationRequired(true);
  15. kryo.setAsmEnabled(true);
  16. // kryo.register(ConcreteClass.class);
  17. kryo.register(Class.forName("com.esotericsoftware.kryo.PrivateInnerClassTest$ConcreteClass"));
  18. kryo.register(Class.forName("com.esotericsoftware.kryo.PrivateInnerClassTest$ConcreteClass$Segment"));
  19. kryo.register(Array.newInstance(Class.forName("com.esotericsoftware.kryo.PrivateInnerClassTest$ConcreteClass$Segment"), 0)
  20. .getClass());
  21.  
  22. ConcreteClass cc1 = new ConcreteClass();
  23.  
  24. roundTrip(6, 9, cc1);
  25. }
  26.  
  27. static public class ConcreteClass {
  28. private final Segment[] segments = new Segment[1];
  29.  
  30. public ConcreteClass () {
  31. segments[0] = new Segment();
  32. }
  33.  
  34. @Override
  35. public boolean equals (Object obj) {
  36. if (this == obj) return true;
  37. if (obj == null) return false;
  38. if (getClass() != obj.getClass()) return false;
  39. ConcreteClass other = (ConcreteClass)obj;
  40. if (!Arrays.equals(segments, other.segments)) return false;
  41. return true;
  42. }
  43.  
  44. private static final class Segment {
  45. int field;
  46.  
  47. Segment () {
  48. }
  49.  
  50. @Override
  51. public boolean equals (Object obj) {
  52. if (this == obj) return true;
  53. if (obj == null) return false;
  54. if (getClass() != obj.getClass()) return false;
  55. Segment other = (Segment)obj;
  56. if (field != other.field) return false;
  57. return true;
  58. }
  59. }
  60. }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement