/// <summary> /// Gets the ancestors. /// </summary> /// <param name="request">The request.</param> /// <returns>Task{BaseItemDto[]}.</returns> public List <BaseItemDto> GetAncestors(GetAncestors request) { var item = _libraryManager.GetItemById(request.Id); var baseItemDtos = new List <BaseItemDto>(); var user = request.UserId.HasValue ? _userManager.GetUserById(request.UserId.Value) : null; var dtoOptions = new DtoOptions(); BaseItem parent = item.Parent; while (parent != null) { if (user != null) { parent = TranslateParentItem(parent, user); } baseItemDtos.Add(_dtoService.GetBaseItemDto(parent, dtoOptions, user)); parent = parent.Parent; } return(baseItemDtos.ToList()); }
/// <summary> /// Gets the ancestors. /// </summary> /// <param name="request">The request.</param> /// <returns>Task{BaseItemDto[]}.</returns> public List <BaseItemDto> GetAncestors(GetAncestors request) { var item = _libraryManager.GetItemById(request.Id); var baseItemDtos = new List <BaseItemDto>(); var user = !request.UserId.Equals(Guid.Empty) ? _userManager.GetUserById(request.UserId) : null; var dtoOptions = GetDtoOptions(_authContext, request); BaseItem parent = item.GetParent(); while (parent != null) { if (user != null) { parent = TranslateParentItem(parent, user); } baseItemDtos.Add(_dtoService.GetBaseItemDto(parent, dtoOptions, user)); parent = parent.GetParent(); } return(baseItemDtos); }
/// <summary> /// Gets the ancestors. /// </summary> /// <param name="request">The request.</param> /// <returns>Task{BaseItemDto[]}.</returns> public List <BaseItemDto> GetAncestors(GetAncestors request) { var item = _dtoService.GetItemByDtoId(request.Id); var baseItemDtos = new List <BaseItemDto>(); var user = request.UserId.HasValue ? _userManager.GetUserById(request.UserId.Value) : null; // Get everything var fields = Enum.GetNames(typeof(ItemFields)) .Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)) .ToList(); BaseItem parent = item.Parent; while (parent != null) { if (user != null) { parent = TranslateParentItem(parent, user); } baseItemDtos.Add(_dtoService.GetBaseItemDto(parent, fields, user)); parent = parent.Parent; } return(baseItemDtos.ToList()); }
/// <summary> /// Gets the ancestors. /// </summary> /// <param name="request">The request.</param> /// <returns>Task{BaseItemDto[]}.</returns> public List <BaseItemDto> GetAncestors(GetAncestors request) { var item = _libraryManager.GetItemById(request.Id); var baseItemDtos = new List <BaseItemDto>(); var user = !string.IsNullOrWhiteSpace(request.UserId) ? _userManager.GetUserById(request.UserId) : null; var dtoOptions = GetDtoOptions(request); BaseItem parent = item.GetParent(); while (parent != null) { if (user != null) { parent = TranslateParentItem(parent, user); } baseItemDtos.Add(_dtoService.GetBaseItemDto(parent, dtoOptions, user)); parent = parent.GetParent(); } return(baseItemDtos.ToList()); }
/// <summary> /// Gets the specified request. /// </summary> /// <param name="request">The request.</param> /// <returns>System.Object.</returns> public object Get(GetAncestors request) { var result = GetAncestors(request); return(ToOptimizedSerializedResultUsingCache(result)); }
/// <summary> /// Gets the specified request. /// </summary> /// <param name="request">The request.</param> /// <returns>System.Object.</returns> public object Get(GetAncestors request) { var result = GetAncestors(request); return(ToOptimizedResult(result)); }