using System.Collections.Generic; using Umbraco.Cms.Core.Models; namespace Umbraco.Cms.Infrastructure.PublishedCache.Persistence { public interface INuCacheContentRepository { void DeleteContentItem(IContentBase item); IEnumerable GetAllContentSources(); IEnumerable GetAllMediaSources(); IEnumerable GetBranchContentSources(int id); IEnumerable GetBranchMediaSources(int id); ContentNodeKit GetContentSource(int id); ContentNodeKit GetMediaSource(int id); IEnumerable GetTypeContentSources(IEnumerable ids); IEnumerable GetTypeMediaSources(IEnumerable ids); /// /// Refreshes the nucache database row for the /// void RefreshContent(IContent content); /// /// Refreshes the nucache database row for the /// void RefreshMedia(IMedia content); /// /// Refreshes the nucache database row for the /// void RefreshMember(IMember content); /// /// Rebuilds the caches for content, media and/or members based on the content type ids specified /// /// If not null will process content for the matching content types, if empty will process all content /// If not null will process content for the matching media types, if empty will process all media /// If not null will process content for the matching members types, if empty will process all members void Rebuild( IReadOnlyCollection contentTypeIds = null, IReadOnlyCollection mediaTypeIds = null, IReadOnlyCollection memberTypeIds = null); bool VerifyContentDbCache(); bool VerifyMediaDbCache(); bool VerifyMemberDbCache(); } }