/// <summary> /// Get the XML value asynchronously /// </summary> /// <param name="omitOwner">Do we want to omit the owner?</param> /// <param name="omitToken">Do we want to omit the lock token?</param> /// <param name="ct">The cancellation token</param> /// <returns>The XML value</returns> public async Task <XElement> GetXmlValueAsync(bool omitOwner, bool omitToken, CancellationToken ct) { if (_lockManager == null) { return(new XElement(Name)); } var affectedLocks = await _lockManager.GetAffectedLocksAsync(_entryPath, false, true, ct).ConfigureAwait(false); var lockElements = affectedLocks.Select(x => x.ToXElement(omitOwner: omitOwner, omitToken: omitToken)).Cast <object>().ToArray(); return(new XElement(Name, lockElements)); }