/// <summary> /// Gets the file changed delegate. It will call the appropriate methods of <see cref="IFileManager"/> when the file structure has changed. /// </summary> /// <param name="args">The arguments.</param> /// <returns>RunWithElevatedPrivilegeDelegate</returns> private SystemManager.RunWithElevatedPrivilegeDelegate GetFileChangedDelegate(FileChangedDelegateArguments args) { return (p) => { // get the resource file manager depending on its type IFileManager resourceFilesManager = this.GetResourceFileManager(args.ResourceFolder); if (resourceFilesManager != null) { switch (args.ChangeType) { case FileChangeType.Created: { resourceFilesManager.FileAdded(args.FileName, args.FilePath, args.PackageName); break; } case FileChangeType.Deleted: { resourceFilesManager.FileDeleted(args.FilePath); break; } case FileChangeType.Renamed: { var fileNameStartIndex = args.OldFilePath.LastIndexOf("/", StringComparison.OrdinalIgnoreCase) + 1; var oldFileName = args.OldFilePath.Substring(fileNameStartIndex); resourceFilesManager.FileRenamed(args.FileName, oldFileName, args.FilePath, args.OldFilePath, args.PackageName); break; } } } }; }
/// <summary> /// Gets the file changed delegate. It will call the appropriate methods of <see cref="IFileManager"/> when the file structure has changed. /// </summary> /// <param name="args">The arguments.</param> /// <returns>RunWithElevatedPrivilegeDelegate</returns> private SystemManager.RunWithElevatedPrivilegeDelegate GetFileChangedDelegate(FileChangedDelegateArguments args) { return (p) => { // get the resource file manager depending on its type IFileManager resourceFilesManager = this.GetResourceFileManager(args.ResourceFolder); if (resourceFilesManager != null) { switch (args.ChangeType) { case FileChangeType.Created: { resourceFilesManager.FileAdded(args.FileName, args.FilePath, args.PackageName); break; } case FileChangeType.Deleted: { resourceFilesManager.FileDeleted(args.FilePath); break; } case FileChangeType.Renamed: { var oldVirtualFilePath = args.OldFilePath.Substring(this.GetApplicationPhysicalPath().Length - 1).Replace('\\', '/'); var oldFileName = VirtualPathUtility.GetFileName(oldVirtualFilePath); resourceFilesManager.FileRenamed(args.FileName, oldFileName, args.FilePath, args.OldFilePath, args.PackageName); break; } } } }; }
/// <summary> /// Gets the file changed delegate. It will call the appropriate methods of <see cref="IFileManager"/> when the file structure has changed. /// </summary> /// <param name="args">The arguments.</param> /// <returns>RunWithElevatedPrivilegeDelegate</returns> private SystemManager.RunWithElevatedPrivilegeDelegate GetFileChangedDelegate(FileChangedDelegateArguments args) { return((p) => { // get the resource file manager depending on its type IFileManager resourceFilesManager = this.GetResourceFileManager(args.ResourceFolder, args.FilePath); if (resourceFilesManager != null) { switch (args.ChangeType) { case FileChangeType.Created: { resourceFilesManager.FileAdded(args.FileName, args.FilePath, args.PackageName); break; } case FileChangeType.Deleted: { resourceFilesManager.FileDeleted(args.FilePath, args.PackageName); break; } case FileChangeType.Renamed: { var fileNameStartIndex = args.OldFilePath.LastIndexOf("/", StringComparison.OrdinalIgnoreCase) + 1; var oldFileName = args.OldFilePath.Substring(fileNameStartIndex); resourceFilesManager.FileRenamed(args.FileName, oldFileName, args.FilePath, args.OldFilePath, args.PackageName); break; } } } }); }
/// <summary> /// Gets the file changed delegate. It will call the appropriate methods of <see cref="IFileManager"/> when the file structure has changed. /// </summary> /// <param name="args">The arguments.</param> /// <returns></returns> private SystemManager.RunWithElevatedPrivilegeDelegate GetFileChangedDelegate(FileChangedDelegateArguments args) { return((p) => { //get the resource file manager depending on its type IFileManager resourceFilesManager = this.GetResourceFileManager(args.ResourceFolder); if (resourceFilesManager != null) { switch (args.ChangeType) { case FileChangeType.Created: { resourceFilesManager.FileAdded(args.FileName, args.FilePath, args.PackageName); break; } case FileChangeType.Deleted: { resourceFilesManager.FileDeleted(args.FilePath); break; } case FileChangeType.Renamed: { var oldVirtualFilePath = args.OldFilePath.Substring(this.GetApplicationPhysicalPath().Length - 1).Replace('\\', '/'); var oldFileName = VirtualPathUtility.GetFileName(oldVirtualFilePath); resourceFilesManager.FileRenamed(args.FileName, oldFileName, args.FilePath, args.OldFilePath, args.PackageName); break; } } } }); }