private void InstallPluginFiles(CcnetPluginInstallPackage package) { string copyPath; foreach (var file in package.PluginFiles) { copyPath = GetPluginCopyPath(file); File.Copy(file, copyPath, true); } }
/// <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(); }
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); } } }