public ICollection <TResult> Project <TResult>(IProjection projection) { IsNotNull(projection, "projection"); var request = MapProjectCodec.EncodeRequest(Name, ToData(projection)); var response = Invoke(request); var resultParameters = MapProjectCodec.DecodeResponse(response); return(new ReadOnlyLazyList <TResult, IData>(resultParameters.Response, Client.SerializationService)); }
public ICollection <TResult> Project <TResult>(IProjection projection) { ValidationUtil.IsNotNull(projection, "projection"); var request = MapProjectCodec.EncodeRequest(GetName(), ToData(projection)); var response = Invoke(request); var resultParameters = MapProjectCodec.DecodeResponse(response); return(new ReadOnlyLazyList <TResult, IData>(resultParameters.response, GetContext().GetSerializationService())); }
private async Task <IReadOnlyCollection <TResult> > ProjectAsync <TResult>(IProjection projection, CancellationToken cancellationToken) { var projectionData = ToSafeData(projection); var requestMessage = MapProjectCodec.EncodeRequest(Name, projectionData); var responseMessage = await Cluster.Messaging.SendAsync(requestMessage, cancellationToken).CfAwait(); var response = MapProjectCodec.DecodeResponse(responseMessage).Response; return(new ReadOnlyLazyList <TResult>(response, SerializationService)); }