public ICollection <K> KeySet(IPredicate <K, V> predicate) { var data = ToData(predicate); var request = TransactionalMapKeySetWithPredicateCodec.EncodeRequest(GetName(), GetTransactionId(), GetThreadId(), data); var dataKeySet = Invoke(request, m => TransactionalMapKeySetWithPredicateCodec.DecodeResponse(m).set); return(ToSet <K>(dataKeySet)); }
public async Task <IReadOnlyList <TKey> > GetKeysAsync(IPredicate predicate) { var predicateData = ToSafeData(predicate); var requestMessage = TransactionalMapKeySetWithPredicateCodec.EncodeRequest(Name, TransactionId, ContextId, predicateData); var responseMessage = await Cluster.Messaging.SendToMemberAsync(requestMessage, TransactionClientConnection).CAF(); var response = TransactionalMapKeySetWithPredicateCodec.DecodeResponse(responseMessage).Response; return(new ReadOnlyLazyList <TKey>(response, SerializationService)); }