1.9.30 sync.
[gae.git] / java / src / main / com / google / appengine / api / datastore / PostLoadFuture.java
blobb894f96883fc5c653757915cd6a070eb658c0855
1 // Copyright 2012 Google Inc. All Rights Reserved.
2 package com.google.appengine.api.datastore;
4 import com.google.common.collect.Lists;
6 import java.util.Map;
7 import java.util.concurrent.Future;
9 /**
10 * {@link PostOpFuture} implementation that invokes PostLoad callbacks.
13 class PostLoadFuture extends PostOpFuture<Map<Key, Entity>> {
14 private final CurrentTransactionProvider txnProvider;
16 PostLoadFuture(Future<Map<Key, Entity>> delegate, DatastoreCallbacks callbacks,
17 CurrentTransactionProvider txnProvider) {
18 super(delegate, callbacks);
19 this.txnProvider = txnProvider;
22 @Override
23 void executeCallbacks(Map<Key, Entity> result) {
24 PostLoadContext postGetContext =
25 new PostLoadContext(txnProvider, Lists.newArrayList(result.values()));
26 datastoreCallbacks.executePostLoadCallbacks(postGetContext);