Mercurial > hg > Members > sugi > MessagePack-java
comparison src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java @ 0:cb825acd883a
first commit
author | sugi |
---|---|
date | Sat, 18 Oct 2014 15:06:15 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:cb825acd883a |
---|---|
1 package org.msgpack.testclasses; | |
2 | |
3 import java.io.IOException; | |
4 import java.util.ArrayList; | |
5 import java.util.Iterator; | |
6 import java.util.List; | |
7 | |
8 import org.junit.Ignore; | |
9 import org.msgpack.MessagePackable; | |
10 import org.msgpack.annotation.Beans; | |
11 import org.msgpack.annotation.Message; | |
12 import org.msgpack.annotation.NotNullable; | |
13 import org.msgpack.packer.Packer; | |
14 import org.msgpack.unpacker.Unpacker; | |
15 | |
16 | |
17 @Ignore @Message @Beans | |
18 public class MessagePackableTypeFieldsClassNotNullable { | |
19 @NotNullable | |
20 public String f0; | |
21 | |
22 @NotNullable | |
23 public NestedClass f1; | |
24 | |
25 public MessagePackableTypeFieldsClassNotNullable() { | |
26 } | |
27 | |
28 @NotNullable | |
29 public String getF0() { | |
30 return f0; | |
31 } | |
32 | |
33 @NotNullable | |
34 public void setF0(String f0) { | |
35 this.f0 = f0; | |
36 } | |
37 | |
38 @NotNullable | |
39 public NestedClass getF1() { | |
40 return f1; | |
41 } | |
42 | |
43 @NotNullable | |
44 public void setF1(NestedClass f1) { | |
45 this.f1 = f1; | |
46 } | |
47 | |
48 @Override | |
49 public boolean equals(Object o) { | |
50 if (! (o instanceof MessagePackableTypeFieldsClassNotNullable)) { | |
51 return false; | |
52 } | |
53 MessagePackableTypeFieldsClassNotNullable that = (MessagePackableTypeFieldsClassNotNullable) o; | |
54 // f0 | |
55 if (f0 == null) { | |
56 if (that.f0 != null) { | |
57 return false; | |
58 } | |
59 } | |
60 if (that.f0 != null) { | |
61 if (! f0.equals(that.f0)) { | |
62 return false; | |
63 } | |
64 } | |
65 // f1 | |
66 if (f1 == null) { | |
67 if (that.f1 != null) { | |
68 return false; | |
69 } | |
70 } | |
71 if (that.f1 != null) { | |
72 if (! f1.equals(that.f1)) { | |
73 return false; | |
74 } | |
75 } | |
76 return true; | |
77 } | |
78 | |
79 @Ignore | |
80 public static class NestedClass implements MessagePackable { | |
81 public String f0; | |
82 | |
83 public int[] f1; | |
84 | |
85 public List<String> f2; | |
86 | |
87 public NestedClass() { } | |
88 | |
89 @NotNullable | |
90 public String getF0() { | |
91 return f0; | |
92 } | |
93 | |
94 @NotNullable | |
95 public void setF0(String f0) { | |
96 this.f0 = f0; | |
97 } | |
98 | |
99 @NotNullable | |
100 public int[] getF1() { | |
101 return f1; | |
102 } | |
103 | |
104 @NotNullable | |
105 public void setF1(int[] f1) { | |
106 this.f1 = f1; | |
107 } | |
108 | |
109 @NotNullable | |
110 public List<String> getF2() { | |
111 return f2; | |
112 } | |
113 | |
114 @NotNullable | |
115 public void setF2(List<String> f2) { | |
116 this.f2 = f2; | |
117 } | |
118 | |
119 public void writeTo(Packer packer) throws IOException { | |
120 packer.writeArrayBegin(3); | |
121 packer.write(f0); | |
122 packer.writeArrayBegin(f1.length); | |
123 for(int e : f1) { | |
124 packer.write(e); | |
125 } | |
126 packer.writeArrayEnd(); | |
127 packer.writeArrayBegin(f2.size()); | |
128 for(String e : f2) { | |
129 packer.write(e); | |
130 } | |
131 packer.writeArrayEnd(); | |
132 packer.writeArrayEnd(); | |
133 } | |
134 | |
135 public void readFrom(Unpacker uunpacker) throws IOException { | |
136 uunpacker.readArrayBegin(); | |
137 f0 = uunpacker.readString(); | |
138 int nf1 = uunpacker.readArrayBegin(); | |
139 f1 = new int[nf1]; | |
140 for(int i=0; i < nf1; i++) { | |
141 f1[i] = uunpacker.readInt(); | |
142 } | |
143 uunpacker.readArrayEnd(); | |
144 int nf2 = uunpacker.readArrayBegin(); | |
145 f2 = new ArrayList<String>(nf2); | |
146 for(int i=0; i < nf2; i++) { | |
147 f2.add(uunpacker.readString()); | |
148 } | |
149 uunpacker.readArrayEnd(); | |
150 uunpacker.readArrayEnd(); | |
151 } | |
152 | |
153 @Override | |
154 public boolean equals(Object o) { | |
155 if (! (o instanceof NestedClass)) { | |
156 return false; | |
157 } | |
158 NestedClass that = (NestedClass) o; | |
159 // f0 | |
160 if (f0 == null) { | |
161 if (that.f0 != null) { | |
162 return false; | |
163 } | |
164 } | |
165 if (that.f0 != null) { | |
166 if (! f0.equals(that.f0)) { | |
167 return false; | |
168 } | |
169 } | |
170 // f1 | |
171 if (f1 == null) { | |
172 if (that.f1 != null) { | |
173 return false; | |
174 } | |
175 } | |
176 if (that.f1 != null) { | |
177 if (f1.length != that.f1.length) { | |
178 return false; | |
179 } | |
180 for (int i = 0; i < f1.length; ++i) { | |
181 if (f1[i] != that.f1[i]) { | |
182 return false; | |
183 } | |
184 } | |
185 } | |
186 // f2 | |
187 if (f2 == null) { | |
188 if (that.f2 != null) { | |
189 return false; | |
190 } | |
191 } | |
192 if (that.f2 != null) { | |
193 Iterator<String> this_f2_iter = f2.iterator(); | |
194 Iterator<String> that_f2_iter = that.f2.iterator(); | |
195 for (; this_f2_iter.hasNext(); ) { | |
196 if (! this_f2_iter.next().equals(that_f2_iter.next())) { | |
197 return false; | |
198 } | |
199 } | |
200 } | |
201 return true; | |
202 } | |
203 } | |
204 } |