| 199 | } |
| 200 | |
| 201 | Future<Optional<Value>> readValue(KeyRef key, IKeyValueStore::ReadType, Optional<UID> debugID) override { |
| 202 | if (recovering.isError()) |
| 203 | throw recovering.getError(); |
| 204 | if (!recovering.isReady()) |
| 205 | return waitAndReadValue(this, key); |
| 206 | |
| 207 | auto it = data.find(key); |
| 208 | if (it == data.end()) |
| 209 | return Optional<Value>(); |
| 210 | return Optional<Value>(it.getValue()); |
| 211 | } |
| 212 | |
| 213 | Future<Optional<Value>> readValuePrefix(KeyRef key, |
| 214 | int maxLength, |