Files
Umbraco-CMS/src/Umbraco.PublishedCache.NuCache/Navigable/RootContent.cs
2022-03-30 13:34:56 +02:00

39 lines
1003 B
C#

using System.Collections.Generic;
using System.Linq;
using Umbraco.Cms.Core.Xml.XPath;
namespace Umbraco.Cms.Infrastructure.PublishedCache.Navigable
{
internal class RootContent : INavigableContent
{
private static readonly RootContentType ContentType = new RootContentType();
private readonly int[] _childIds;
public RootContent(IEnumerable<int> childIds)
{
_childIds = childIds.ToArray();
}
public int Id => -1;
public int ParentId => -1;
public INavigableContentType Type => ContentType;
public IList<int> ChildIds => _childIds;
public object? Value(int index)
{
// only id has a value
return index == 0 ? "-1" : null;
}
private class RootContentType : INavigableContentType
{
public string Name => "root";
public INavigableFieldType[] FieldTypes => NavigableContentType.BuiltinProperties;
}
}
}