/// <inheritdoc />
        public async Task <int> LastIndexOfAsync(T item)
        {
            var itemData        = ToSafeData(item);
            var requestMessage  = ListLastIndexOfCodec.EncodeRequest(Name, itemData);
            var responseMessage = await Cluster.Messaging.SendToPartitionOwnerAsync(requestMessage, PartitionId).CAF();

            return(ListLastIndexOfCodec.DecodeResponse(responseMessage).Response);
        }
        public int LastIndexOf(T item)
        {
            ValidationUtil.ThrowExceptionIfNull(item);
            var value    = ToData(item);
            var request  = ListLastIndexOfCodec.EncodeRequest(GetName(), value);
            var response = Invoke(request);

            return(ListLastIndexOfCodec.DecodeResponse(response).response);
        }