private static void handleKVList(final LocalRegion region, final List keyList,
boolean serializeValues, final ServerConnection servConn) throws IOException {
if (region instanceof PartitionedRegion) {
handleKVKeysPR((PartitionedRegion) region, keyList, serializeValues, servConn);
return;
}
VersionedObjectList values = new VersionedObjectList(MAXIMUM_CHUNK_SIZE, true,
region == null || region.getAttributes().getConcurrencyChecksEnabled(), serializeValues);
if (region != null) {
for (Object key : keyList) {
if (region.containsKey(key) || region.containsTombstone(key)) {
VersionTagHolder versionHolder = createVersionTagHolder();
ClientProxyMembershipID id = servConn == null ? null : servConn.getProxyID();
Object data = region.get(key, null, true, true, true, id, versionHolder, true);
VersionTag versionTag = versionHolder.getVersionTag();
updateValues(values, key, data, versionTag);
if (values.size() == MAXIMUM_CHUNK_SIZE) {
sendNewRegisterInterestResponseChunk(region, keyList, values, false, servConn);
values.clear();
}
}
}
}
sendNewRegisterInterestResponseChunk(region, keyList, values, true, servConn);
}