}
public Object innerCall() throws Exception {
final TransactionContext context = getEndpoint().getTransactionContext(txnId);
final TransactionalMap map = context.getMap(name);
switch (requestType) {
case CONTAINS_KEY:
return map.containsKey(key);
case GET:
return map.get(key);
case GET_FOR_UPDATE:
return map.getForUpdate(key);
case SIZE:
return map.size();
case PUT:
return map.put(key, value);
case PUT_WITH_TTL:
return map.put(key, value, ttl, TimeUnit.MILLISECONDS);
case PUT_IF_ABSENT:
return map.putIfAbsent(key, value);
case REPLACE:
return map.replace(key, value);
case REPLACE_IF_SAME:
return map.replace(key, value, newValue);
case SET:
map.set(key, value);
break;
case REMOVE:
return map.remove(key);
case DELETE:
map.delete(key);
break;
case REMOVE_IF_SAME:
return map.remove(key, value);
case KEYSET:
return getMapKeySet(map.keySet());
case KEYSET_BY_PREDICATE:
return getMapKeySet(map.keySet(getPredicate()));
case VALUES:
return getMapValueCollection(map.values());
case VALUES_BY_PREDICATE:
return getMapValueCollection(map.values(getPredicate()));
}
return null;
}