@SuppressWarnings({ "deprecation" }) private void successBatchGetKV(BatchGetKVRequest request, Response<BatchKVResponse<K, EntityResponse<RT>>> responseToBatch, Entry<RestRequestBatchKey, BatchEntry<Response<Object>>> entry, final ProtocolVersion version) { Set<String> ids = (Set<String>) request.getObjectIds().stream() .map(o -> BatchResponse.keyToString(o, version)) .collect(Collectors.toSet()); DataMap dm = filterIdsInBatchResult(responseToBatch.getEntity().data(), ids); BatchKVResponse br = new BatchKVResponse(dm, request.getResourceSpec().getKeyType(), request.getResourceSpec().getValueType(), request.getResourceSpec().getKeyParts(), request.getResourceSpec().getComplexKeyType(), version); Response rsp = new ResponseImpl(responseToBatch, br); entry.getValue().getPromise().done(rsp); }
@Override public BatchKVResponse<K, V> wrapResponse(DataMap dataMap, Map<String, String> headers, ProtocolVersion version) { return dataMap == null ? null : new BatchKVResponse<K, V>(dataMap, _keyType, _elementType, _keyParts, _complexKeyType, version); } }
@SuppressWarnings({"unchecked", "rawtypes", "deprecation"}) private <T> T constructResponseFromDataMap(BatchRequest<T> request, ProtocolVersion protocolVersion, DataMap data) { if (request instanceof BatchGetRequest) { return (T) new BatchResponse(data, request.getResponseDecoder().getEntityClass()); } else { return (T) new BatchKVResponse(data, request.getResourceSpec().getKeyType(), request.getResourceSpec().getValueType(), request.getResourceSpec().getKeyParts(), request.getResourceSpec().getComplexKeyType(), protocolVersion); } }
responseData.put(BatchKVResponse.ERRORS, inputErrors); return new BatchKVResponse<K, UpdateStatus>(responseData, _keyType, new TypeSpec<UpdateStatus>(UpdateStatus.class), _keyParts, _complexKeyType, version);