Example #1
0
        /// <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;
                            }
                    }
                }
            };
        }
Example #2
0
        /// <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;
                            }
                    }
                }
            };
        }
Example #3
0
        /// <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;
                        }
                    }
                }
            });
        }
Example #4
0
        /// <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;
                        }
                    }
                }
            });
        }