/// <summary> /// 获取单例对象 /// </summary> public static ITagFileService GetService() { if (uniqueService == null) { lock (locker) { if (uniqueService == null) { uniqueService = new TagFileService(); } } } return(uniqueService); }
/// <summary> /// 重命名该 Tag。 /// 若新名字的 Tag 已经存在,则什么都不做并返回 false。 /// </summary> public static async Task RenameAsync(this Tag tag, string newName) { await TagFileService.GetService().RenameTagAsync(tag, newName); }
/// <summary> /// 把文件放入回收站 /// </summary> public static async Task DeleteToRecycleBinAsync(this FileItem fileItem) { await TagFileService.GetService().DeleteFileToRecycleBinAsync(fileItem); }
/// <summary> /// 重命名文件。 /// 该方法不会检查文件名是否合法。 /// </summary> public static async Task RenameAsync(this FileItem fileItem, string newName) { await TagFileService.GetService().RenameFileItemAsync(fileItem, newName); }
/// <summary> /// 文件在仓库内的真实路径 /// </summary> public static string RealPath(this FileItem fileItem) { return(TagFileService.GetService().GetRealFilepath(fileItem)); }
/// <summary> /// 移除 FileItem 的某个标签。 /// 若 FileItem 不含该标签,则什么都不做。 /// </summary> public static async Task RemoveTagAsync(this FileItem fileItem, Tag tag) { await TagFileService.GetService().RemoveRelationAsync(tag, fileItem); }
/// <summary> /// 为 Tag 增加一个文件。 /// 若该文件已含该 Tag,则什么都不做。 /// </summary> public static async Task AddFileAsync(this Tag tag, FileItem fileItem) { await TagFileService.GetService().AddRelationAsync(tag, fileItem); }