jellyfin/MediaBrowser.Controller/FileOrganization/IFileOrganizationService.cs

86 lines
2.9 KiB
C#
Raw Normal View History

using MediaBrowser.Model.FileOrganization;
2014-01-20 18:46:08 +00:00
using MediaBrowser.Model.Querying;
using System.Threading;
using System.Threading.Tasks;
namespace MediaBrowser.Controller.FileOrganization
{
public interface IFileOrganizationService
{
/// <summary>
/// Processes the new files.
/// </summary>
void BeginProcessNewFiles();
2014-01-21 06:10:58 +00:00
/// <summary>
/// Deletes the original file.
/// </summary>
/// <param name="resultId">The result identifier.</param>
/// <returns>Task.</returns>
Task DeleteOriginalFile(string resultId);
2014-01-22 17:05:06 +00:00
/// <summary>
/// Clears the log.
/// </summary>
/// <returns>Task.</returns>
Task ClearLog();
2014-01-21 06:10:58 +00:00
/// <summary>
/// Performs the organization.
/// </summary>
/// <param name="resultId">The result identifier.</param>
/// <returns>Task.</returns>
Task PerformOrganization(string resultId);
2014-01-22 17:05:06 +00:00
/// <summary>
/// Performs the episode organization.
/// </summary>
/// <param name="request">The request.</param>
/// <returns>Task.</returns>
Task PerformEpisodeOrganization(EpisodeFileOrganizationRequest request);
2014-01-21 06:10:58 +00:00
/// <summary>
/// Gets the results.
/// </summary>
/// <param name="query">The query.</param>
/// <returns>IEnumerable{FileOrganizationResult}.</returns>
2014-01-20 18:46:08 +00:00
QueryResult<FileOrganizationResult> GetResults(FileOrganizationResultQuery query);
2014-01-22 17:05:06 +00:00
/// <summary>
/// Gets the result.
/// </summary>
/// <param name="id">The identifier.</param>
/// <returns>FileOrganizationResult.</returns>
FileOrganizationResult GetResult(string id);
2014-02-19 16:24:06 +00:00
/// <summary>
/// Gets the result by source path.
/// </summary>
/// <param name="path">The path.</param>
/// <returns>FileOrganizationResult.</returns>
FileOrganizationResult GetResultBySourcePath(string path);
2014-01-22 17:05:06 +00:00
/// <summary>
/// Saves the result.
/// </summary>
/// <param name="result">The result.</param>
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task.</returns>
Task SaveResult(FileOrganizationResult result, CancellationToken cancellationToken);
/// <summary>
/// Returns a list of smart match entries
/// </summary>
/// <param name="query">The query.</param>
/// <returns>IEnumerable{SmartMatchInfo}.</returns>
QueryResult<SmartMatchInfo> GetSmartMatchInfos(FileOrganizationResultQuery query);
/// <summary>
/// Deletes a smart match entry.
/// </summary>
/// <param name="Id">Item Id.</param>
/// <param name="matchString">The match string to delete.</param>
void DeleteSmartMatchEntry(string Id, string matchString);
}
}