Exemplo n.º 1
0
        public ICollection <TResult> Project <TResult>(IProjection projection, IPredicate predicate)
        {
            IsNotNull(projection, "projection");
            IsNotNull(predicate, "predicate");
            var request          = MapProjectWithPredicateCodec.EncodeRequest(Name, ToData(projection), ToData(predicate));
            var response         = Invoke(request);
            var resultParameters = MapProjectWithPredicateCodec.DecodeResponse(response);

            return(new ReadOnlyLazyList <TResult, IData>(resultParameters.Response, Client.SerializationService));
        }
Exemplo n.º 2
0
        public ICollection <TResult> Project <TResult>(IProjection projection, IPredicate predicate)
        {
            ValidationUtil.IsNotNull(projection, "projection");
            ValidationUtil.IsNotNull(predicate, "predicate");
            var request          = MapProjectWithPredicateCodec.EncodeRequest(GetName(), ToData(projection), ToData(predicate));
            var response         = Invoke(request);
            var resultParameters = MapProjectWithPredicateCodec.DecodeResponse(response);

            return(new ReadOnlyLazyList <TResult, IData>(resultParameters.response, GetContext().GetSerializationService()));
        }
Exemplo n.º 3
0
        private async Task <IReadOnlyCollection <TResult> > ProjectAsync <TResult>(IProjection projection, IPredicate predicate, CancellationToken cancellationToken)
        {
            var(projectionData, predicateData) = ToSafeData(projection, predicate);

            var requestMessage  = MapProjectWithPredicateCodec.EncodeRequest(Name, projectionData, predicateData);
            var responseMessage = await Cluster.Messaging.SendAsync(requestMessage, cancellationToken).CfAwait();

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

            return(new ReadOnlyLazyList <TResult>(response, SerializationService));
        }