MCPcopy Create free account
hub / github.com/OpenTSDB/asynchbase / serialize

Method serialize

src/CompareAndSetRequest.java:161–214  ·  view source on GitHub ↗
(byte server_version)

Source from the content-addressed store, hash-verified

159 }
160
161 @Override
162 ChannelBuffer serialize(byte server_version) {
163 if (server_version < RegionClient.SERVER_VERSION_095_OR_ABOVE) {
164 return serializeOld(server_version);
165 }
166
167 final ByteString key = Bytes.wrap(put.key());
168 final ByteString family = Bytes.wrap(put.family());
169 final ByteString qualifier = Bytes.wrap(put.qualifier());
170 final ByteString value = Bytes.wrap(put.value());
171
172 // The edit.
173 final MutationProto.ColumnValue.QualifierValue qual =
174 MutationProto.ColumnValue.QualifierValue.newBuilder()
175 .setQualifier(qualifier)
176 .setValue(value)
177 .setTimestamp(put.timestamp())
178 .build();
179 final MutationProto.ColumnValue column =
180 MutationProto.ColumnValue.newBuilder()
181 .setFamily(family)
182 .addQualifierValue(qual)
183 .build();
184 final MutationProto.Builder put = MutationProto.newBuilder()
185 .setRow(key)
186 .setMutateType(MutationProto.MutationType.PUT)
187 .addColumnValue(column);
188
189 // The condition that needs to match for the edit to be applied.
190 final ByteArrayComparable expected = ByteArrayComparable.newBuilder()
191 .setValue(Bytes.wrap(this.expected))
192 .build();
193 final BinaryComparator cmp = BinaryComparator.newBuilder()
194 .setComparable(expected)
195 .build();
196 final Comparator comparator = Comparator.newBuilder()
197 .setNameBytes(BINARYCOMPARATOR)
198 .setSerializedComparator(Bytes.wrap(cmp.toByteArray()))
199 .build();
200 final Condition cond = Condition.newBuilder()
201 .setRow(key)
202 .setFamily(family)
203 .setQualifier(qualifier)
204 .setCompareType(CompareType.EQUAL)
205 .setComparator(comparator)
206 .build();
207
208 final MutateRequest req = MutateRequest.newBuilder()
209 .setRegion(region.toProtobuf())
210 .setMutation(put.build())
211 .setCondition(cond)
212 .build();
213 return toChannelBuffer(MUTATE, req);
214 }
215
216 /** Serializes this request for HBase 0.94 and before. */
217 private ChannelBuffer serializeOld(final byte server_version) {

Callers

nothing calls this directly

Calls 12

serializeOldMethod · 0.95
wrapMethod · 0.95
setQualifierMethod · 0.80
setFamilyMethod · 0.80
setRegionMethod · 0.80
toChannelBufferMethod · 0.80
keyMethod · 0.65
familyMethod · 0.65
qualifierMethod · 0.65
valueMethod · 0.65
timestampMethod · 0.65
toProtobufMethod · 0.45

Tested by

no test coverage detected