using System.Globalization; using Umbraco.Core.Models; using Umbraco.Core.Models.PublishedContent; namespace Umbraco.Web.PublishedCache { public interface IPublishedContentCache : IPublishedCache { /// /// Gets content identified by a route. /// /// A value indicating whether to consider unpublished content. /// The route /// A value forcing the HideTopLevelNode setting. /// The content, or null. /// /// A valid route is either a simple path eg /foo/bar/nil or a root node id and a path, eg 123/foo/bar/nil. /// If is null then the settings value is used. /// The value of overrides defaults. /// IPublishedContent GetByRoute(bool preview, string route, bool? hideTopLevelNode = null, string culture = null); /// /// Gets content identified by a route. /// /// The route /// A value forcing the HideTopLevelNode setting. /// The content, or null. /// /// A valid route is either a simple path eg /foo/bar/nil or a root node id and a path, eg 123/foo/bar/nil. /// If is null then the settings value is used. /// Considers published or unpublished content depending on defaults. /// IPublishedContent GetByRoute(string route, bool? hideTopLevelNode = null, string culture = null); /// /// Gets the route for a content identified by its unique identifier. /// /// A value indicating whether to consider unpublished content. /// The content unique identifier. /// The route. /// The value of overrides defaults. string GetRouteById(bool preview, int contentId, string culture = null); /// /// Gets the route for a content identified by its unique identifier. /// /// The content unique identifier. /// The route. /// Considers published or unpublished content depending on defaults. string GetRouteById(int contentId, string culture = null); } }