public T Get(int index)
        {
            var request  = ListGetCodec.EncodeRequest(GetName(), index);
            var response = Invoke(request);

            return(ToObject <T>(ListGetCodec.DecodeResponse(response).response));
        }
        /// <inheritdoc />
        public async Task <T> GetAsync(int index)
        {
            var requestMessage  = ListGetCodec.EncodeRequest(Name, index);
            var responseMessage = await Cluster.Messaging.SendToPartitionOwnerAsync(requestMessage, PartitionId).CAF();

            var response = ListGetCodec.DecodeResponse(responseMessage).Response;

            return(ToObject <T>(response));
        }