public virtual V Remove(object key) { var keyData = ToData(key); var request = TransactionalMapRemoveCodec.EncodeRequest(GetName(), GetTransactionId(), GetThreadId(), keyData); var result = Invoke(request, m => TransactionalMapRemoveCodec.DecodeResponse(m).response); return(ToObject <V>(result)); }
public async Task <TValue> GetAndRemoveAsync(TKey key) { var keyData = ToSafeData(key); var requestMessage = TransactionalMapRemoveCodec.EncodeRequest(Name, TransactionId, ContextId, keyData); var responseMessage = await Cluster.Messaging.SendToMemberAsync(requestMessage, TransactionClientConnection).CAF(); var response = TransactionalMapRemoveCodec.DecodeResponse(responseMessage).Response; return(ToObject <TValue>(response)); }