using System.Collections.Generic; using MediaBrowser.Controller.Entities; using System; using System.Threading; using System.Threading.Tasks; namespace MediaBrowser.Controller.Persistence { /// /// Provides an interface to implement a UserData repository /// public interface IUserDataRepository : IRepository { /// /// Opens the connection to the repository /// /// Task. Task Initialize(); /// /// Saves the user data. /// /// The user id. /// The key. /// The user data. /// The cancellation token. /// Task. Task SaveUserData(Guid userId, string key, UserItemData userData, CancellationToken cancellationToken); /// /// Gets the user data. /// /// The user id. /// The key. /// Task{UserItemData}. UserItemData GetUserData(Guid userId, string key); /// /// Return all user data associated with the given user /// /// /// IEnumerable GetAllUserData(Guid userId); /// /// Save all user data associated with the given user /// /// /// /// /// Task SaveAllUserData(Guid userId, IEnumerable userData, CancellationToken cancellationToken); } }