public T Get <T>(string changeVector) { var operation = new GetRevisionOperation(Session, changeVector); var command = operation.CreateRequest(); if (command == null) { return(operation.GetRevision <T>()); } SessionInfo?.IncrementRequestCount(); RequestExecutor.Execute(command, Context, sessionInfo: SessionInfo); operation.SetResult(command.Result); return(operation.GetRevision <T>()); }
public void HandleResponse(GetResponse response) { BlittableJsonReaderObject responseAsBlittableReaderObject = (BlittableJsonReaderObject)response.Result; responseAsBlittableReaderObject.TryGet("Results", out BlittableJsonReaderArray blittableJsonReaderArray); _getRevisionOperation.SetResult(new BlittableArrayResult { Results = blittableJsonReaderArray }); switch (_mode) { case Mode.Single: Result = _getRevisionOperation.GetRevision <T>(); break; case Mode.Multi: Result = _getRevisionOperation.GetRevisionsFor <T>(); break; case Mode.Map: Result = _getRevisionOperation.GetRevisions <T>(); break; case Mode.ListOfMetadata: Result = _getRevisionOperation.GetRevisionsMetadataFor(); break; default: throw new ArgumentOutOfRangeException(); } }
public async Task <T> GetAsync <T>(string changeVector, CancellationToken token = default) { using (Session.AsyncTaskHolder()) { var operation = new GetRevisionOperation(Session, changeVector); var command = operation.CreateRequest(); if (command == null) { return(operation.GetRevision <T>()); } SessionInfo?.IncrementRequestCount(); await RequestExecutor.ExecuteAsync(command, Context, sessionInfo : SessionInfo, token).ConfigureAwait(false); operation.SetResult(command.Result); return(operation.GetRevision <T>()); } }
public async Task <T> GetAsync <T>(string changeVector) { var operation = new GetRevisionOperation(Session, changeVector); var command = operation.CreateRequest(); await RequestExecutor.ExecuteAsync(command, Context, sessionInfo : SessionInfo).ConfigureAwait(false); operation.SetResult(command.Result); return(operation.GetRevision <T>()); }
public T Get <T>(string id, DateTime date) { var operation = new GetRevisionOperation(Session, id, date); var command = operation.CreateRequest(); if (command == null) { return(operation.GetRevision <T>()); } SessionInfo?.IncrementRequestCount(); RequestExecutor.Execute(command, Context, sessionInfo: SessionInfo); operation.SetResult(command.Result); return(operation.GetRevisionsFor <T>().FirstOrDefault()); }