public async Task <bool> ExistsAsync(string id, CancellationToken token = default) { using (AsyncTaskHolder()) { if (id == null) { throw new ArgumentNullException(nameof(id)); } if (_knownMissingIds.Contains(id)) { return(false); } if (DocumentsById.TryGetValue(id, out _)) { return(true); } var command = new HeadDocumentCommand(id, null); await RequestExecutor.ExecuteAsync(command, Context, sessionInfo : _sessionInfo, token : token).ConfigureAwait(false); return(command.Result != null); } }
public async Task <string> HeadAsync(string id) { if (id == null) { throw new ArgumentNullException(nameof(id)); } var command = new HeadDocumentCommand(id, null); await RequestExecutor.ExecuteAsync(command, Context); return(command.Result); }
public async Task <bool> ExistsAsync(string id) { if (id == null) { throw new ArgumentNullException(nameof(id)); } if (DocumentsById.TryGetValue(id, out _)) { return(true); } var command = new HeadDocumentCommand(id, null); await RequestExecutor.ExecuteAsync(command, Context, sessionInfo : SessionInfo).ConfigureAwait(false); return(command.Result != null); }
/// <summary> /// Check if document exists without loading it /// </summary> /// <param name="id">Document id.</param> /// <returns></returns> public bool Exists(string id) { if (id == null) { throw new ArgumentNullException(nameof(id)); } if (DocumentsById.TryGetValue(id, out _)) { return(true); } var command = new HeadDocumentCommand(id, null); RequestExecutor.Execute(command, Context, sessionInfo: SessionInfo); return(command.Result != null); }