public RiakResult Read(IRiakCommand command) { bool done = false; do { int size = ReadMessageSize(command.ExpectedCode); byte[] buffer = null; if (size > 0) { buffer = ReceiveAll(new byte[size]); } RiakResp response = command.DecodeResponse(buffer); command.OnSuccess(response); var streamingResponse = response as IRpbStreamingResp; if (streamingResponse == null) { done = true; } else { done = streamingResponse.done; } }while (done == false); return(RiakResult.Success()); }
public RiakResult Read(IRiakCommand command) { bool done = false; do { MessageCode expectedCode = command.ExpectedCode; Type expectedType = MessageCodeTypeMapBuilder.GetTypeFor(expectedCode); int size = DoRead(expectedCode, expectedType); RpbResp response = DeserializeInstance(expectedType, size); command.OnSuccess(response); var streamingResponse = response as IRpbStreamingResp; if (streamingResponse == null) { done = true; } else { done = streamingResponse.done; } }while (done == false); return(RiakResult.Success()); }
public RiakResult Execute(IRiakCommand command) { RiakResult executeResult = DoExecute(() => socket.Write(command)); if (executeResult.IsSuccess) { executeResult = DoExecute(() => socket.Read(command)); } return(executeResult); }
public RiakResult Read(IRiakCommand command) { MessageCode expectedCode = command.ExpectedCode; Type expectedType = MessageCodeTypeMapBuilder.GetTypeFor(expectedCode); int size = DoRead(expectedCode, expectedType); RpbResp response = DeserializeInstance(expectedType, size); command.OnSuccess(response); return(RiakResult.Success()); }
public RiakResult Write(IRiakCommand command) { RiakReq request = command.ConstructRequest(useTtb); if (request.IsMessageCodeOnly) { Write(request.MessageCode); return(RiakResult.Success()); } else { return(DoWrite(s => request.WriteTo(s), request.MessageCode)); } }
public RiakResult Write(IRiakCommand command) { RpbReq request = command.ConstructPbRequest(); if (request.IsMessageCodeOnly) { Write(request.MessageCode); return(RiakResult.Success()); } else { return(DoWrite(s => Serializer.Serialize(s, request), request.GetType())); } }
public E(IRiakClient client, IRiakCommand command) { _client = client; _command = command; }
public Task <RiakResult> ExecuteAsync(IRiakCommand command) { return(new E(Client, command).ExecuteAsync()); }
public RiakResult Execute(IRiakCommand command) { return(new E(Client, command).Execute()); }
/// <inheritdoc/> public Task <RiakResult> Execute(IRiakCommand command) { return(Task.Factory.StartNew(() => client.Execute(command))); }