@Override public void didResolve(ResponseField field, Operation.Variables variables) { path.remove(path.size() - 1); Object value = valueStack.pop(); String cacheKey = cacheKeyBuilder().build(field, variables); String dependentKey = currentRecordBuilder.key() + "." + cacheKey; dependentKeys.add(dependentKey); currentRecordBuilder.addField(cacheKey, value); if (recordStack.isEmpty()) { recordSet.merge(currentRecordBuilder.build()); } }
@Override public void didResolveObject(ResponseField field, Optional<R> objectSource) { path = pathStack.pop(); if (objectSource.isPresent()) { Record completedRecord = currentRecordBuilder.build(); valueStack.push(new CacheReference(completedRecord.key())); dependentKeys.add(completedRecord.key()); recordSet.merge(completedRecord); } currentRecordBuilder = recordStack.pop().toBuilder(); }
@Override public void didResolve(ResponseField field, Operation.Variables variables) { path.remove(path.size() - 1); Object value = valueStack.pop(); String cacheKey = field.cacheKey(variables); String dependentKey = currentRecordBuilder.key() + "." + cacheKey; dependentKeys.add(dependentKey); currentRecordBuilder.addField(cacheKey, value); if (recordStack.isEmpty()) { recordSet.merge(currentRecordBuilder.build()); } }
@Override public void didResolve(ResponseField field, Operation.Variables variables) { path.remove(path.size() - 1); Object value = valueStack.pop(); String cacheKey = field.cacheKey(variables); String dependentKey = currentRecordBuilder.key() + "." + cacheKey; dependentKeys.add(dependentKey); currentRecordBuilder.addField(cacheKey, value); if (recordStack.isEmpty()) { recordSet.merge(currentRecordBuilder.build()); } }
@Override public void didResolveObject(ResponseField field, Optional<R> objectSource) { path = pathStack.pop(); if (objectSource.isPresent()) { Record completedRecord = currentRecordBuilder.build(); valueStack.push(new CacheReference(completedRecord.key())); dependentKeys.add(completedRecord.key()); recordSet.merge(completedRecord); } currentRecordBuilder = recordStack.pop().toBuilder(); }
@Override public void didResolveObject(ResponseField field, Optional<R> objectSource) { path = pathStack.pop(); if (objectSource.isPresent()) { Record completedRecord = currentRecordBuilder.build(); valueStack.push(new CacheReference(completedRecord.key())); dependentKeys.add(completedRecord.key()); recordSet.merge(completedRecord); } currentRecordBuilder = recordStack.pop().toBuilder(); }