Exemple #1
0
        private void InstallPluginFiles(CcnetPluginInstallPackage package)
        {
            string copyPath;

            foreach (var file in package.PluginFiles)
            {
                copyPath = GetPluginCopyPath(file);
                File.Copy(file, copyPath, true);
            }
        }
Exemple #2
0
        /// <summary>
        /// 설치
        /// </summary>
        public void Install()
        {
            // init
            CheckAndCreatePluginFolder();
            CcnetPluginInstallPackage package = GetCcnetPluginInstallPackage();

            // Install
            InstallPluginFiles(package);
            InstallPluginReferenceFiles(package);

            // assemblyBinding
            CcnetServicePluginRefrenceUpdator ccnetServicePluginRefrenceUpdator = new CcnetServicePluginRefrenceUpdator(PluginDirectory, ServiceDirectory, ServicePluginReferenceDirectory);

            ccnetServicePluginRefrenceUpdator.Update();
        }
Exemple #3
0
        private void InstallPluginReferenceFiles(CcnetPluginInstallPackage package)
        {
            string pluginReferenceDirectory, pluginReferenceCopyPath;

            foreach (var srcPluginPath in package.PluginFiles)
            {
                pluginReferenceDirectory = GetPluginReferenceDirectory(srcPluginPath);
                CheckAndCreateDirectory(pluginReferenceDirectory, true);

                foreach (var srcPluginReferencePath in package.PluginReferenceFiles)
                {
                    pluginReferenceCopyPath = GetPluginReferenceCopyPath(srcPluginPath, srcPluginReferencePath);
                    var dir = new DirectoryInfo(Path.GetDirectoryName(pluginReferenceCopyPath));
                    if (!dir.Exists)
                    {
                        dir.Create();
                    }
                    File.Copy(srcPluginReferencePath, pluginReferenceCopyPath, true);
                }
            }
        }