Changeset 12621 for trunk/sources
- Timestamp:
- 07/07/15 00:06:42 (10 years ago)
- Location:
- trunk/sources
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Clients.Hive/3.3/HiveTasks/EngineHiveTask.cs
r12012 r12621 47 47 48 48 public override TaskData GetAsTaskData(bool withoutChildOptimizers, out List<IPluginDescription> plugins) { 49 plugins = new List<IPluginDescription>();50 if (this.itemTask == null)49 if (ItemTask == null) { 50 plugins = new List<IPluginDescription>(); 51 51 return null; 52 } 52 53 53 54 TaskData jobData = new TaskData(); … … 60 61 jobData.Data = PersistenceUtil.Serialize(ItemTask, out usedTypes); 61 62 62 PluginUtil.CollectDeclaringPlugins(plugins, usedTypes);63 plugins = PluginUtil.GetPluginsForTask(usedTypes, ItemTask); 63 64 return jobData; 64 65 } -
trunk/sources/HeuristicLab.Clients.Hive/3.3/HiveTasks/HiveTask.cs
r12012 r12621 295 295 /// </param> 296 296 public virtual TaskData GetAsTaskData(bool withoutChildOptimizers, out List<IPluginDescription> plugins) { 297 plugins = new List<IPluginDescription>();298 if (this.itemTask == null)297 if (ItemTask == null) { 298 plugins = new List<IPluginDescription>(); 299 299 return null; 300 } 300 301 301 302 IEnumerable<Type> usedTypes; 302 byte[] taskByteArray = PersistenceUtil.Serialize( this.ItemTask, out usedTypes);303 byte[] taskByteArray = PersistenceUtil.Serialize(ItemTask, out usedTypes); 303 304 TaskData taskData = new TaskData() { TaskId = task.Id, Data = taskByteArray }; 304 PluginUtil.CollectDeclaringPlugins(plugins, usedTypes);305 plugins = PluginUtil.GetPluginsForTask(usedTypes, ItemTask); 305 306 return taskData; 306 307 } -
trunk/sources/HeuristicLab.Clients.Hive/3.3/HiveTasks/OptimizerHiveTask.cs
r12041 r12621 347 347 /// </param> 348 348 public override TaskData GetAsTaskData(bool withoutChildOptimizers, out List<IPluginDescription> plugins) { 349 plugins = new List<IPluginDescription>();350 if (this.itemTask == null) // || this.jobItem.Optimizer == null349 if (ItemTask == null) { 350 plugins = new List<IPluginDescription>(); 351 351 return null; 352 } 352 353 353 354 IEnumerable<Type> usedTypes; 354 355 byte[] jobByteArray; 355 if (withoutChildOptimizers && this.ItemTask.Item is Optimization.Experiment) {356 OptimizerTask clonedJob = (OptimizerTask) this.ItemTask.Clone(); // use a cloned task, so that the childHiveJob don't get confused356 if (withoutChildOptimizers && ItemTask.Item is Optimization.Experiment) { 357 OptimizerTask clonedJob = (OptimizerTask)ItemTask.Clone(); // use a cloned task, so that the childHiveJob don't get confused 357 358 clonedJob.OptimizerAsExperiment.Optimizers.Clear(); 358 359 jobByteArray = PersistenceUtil.Serialize(clonedJob, out usedTypes); 359 } else if (withoutChildOptimizers && this.ItemTask.Item is Optimization.BatchRun) {360 OptimizerTask clonedJob = (OptimizerTask) this.ItemTask.Clone();360 } else if (withoutChildOptimizers && ItemTask.Item is Optimization.BatchRun) { 361 OptimizerTask clonedJob = (OptimizerTask)ItemTask.Clone(); 361 362 clonedJob.OptimizerAsBatchRun.Optimizer = null; 362 363 jobByteArray = PersistenceUtil.Serialize(clonedJob, out usedTypes); 363 } else if ( this.ItemTask.Item is IAlgorithm) {364 ((IAlgorithm) this.ItemTask.Item).StoreAlgorithmInEachRun = false; // avoid storing the algorithm in runs to reduce size365 jobByteArray = PersistenceUtil.Serialize( this.ItemTask, out usedTypes);364 } else if (ItemTask.Item is IAlgorithm) { 365 ((IAlgorithm)ItemTask.Item).StoreAlgorithmInEachRun = false; // avoid storing the algorithm in runs to reduce size 366 jobByteArray = PersistenceUtil.Serialize(ItemTask, out usedTypes); 366 367 } else { 367 jobByteArray = PersistenceUtil.Serialize( this.ItemTask, out usedTypes);368 jobByteArray = PersistenceUtil.Serialize(ItemTask, out usedTypes); 368 369 } 369 370 370 371 TaskData jobData = new TaskData() { TaskId = task.Id, Data = jobByteArray }; 371 PluginUtil.CollectDeclaringPlugins(plugins, usedTypes);372 plugins = PluginUtil.GetPluginsForTask(usedTypes, ItemTask); 372 373 return jobData; 373 374 } -
trunk/sources/HeuristicLab.Clients.Hive/3.3/Util/PluginUtil.cs
r12012 r12621 26 26 using System.Security.Cryptography; 27 27 using System.ServiceModel; 28 using HeuristicLab.Common; 29 using HeuristicLab.Core; 28 30 using HeuristicLab.PluginInfrastructure; 29 31 … … 79 81 } 80 82 81 public static Plugin CreatePlugin(IPluginDescription plugin) {82 return new Plugin() { Name = plugin.Name, Version = plugin.Version };83 }84 85 83 public static List<PluginData> CreatePluginDatas(IPluginDescription plugin) { 86 84 List<PluginData> pluginDatas = new List<PluginData>(); … … 96 94 } 97 95 98 public static void CollectDeclaringPlugins(List<IPluginDescription> plugins, IEnumerable<Type> usedTypes) { 96 public static List<IPluginDescription> GetPluginsForTask(IEnumerable<Type> usedTypes, object task) { 97 if (task.GetObjectGraphObjects().Any(x => typeof(IProgrammableItem).IsInstanceOfType(x))) { 98 //when a programmable item is used all plugins that are currently loaded need to be sent to Hive 99 return ApplicationManager.Manager.Plugins.ToList(); 100 } else { 101 return CollectDeclaringPlugins(usedTypes); 102 } 103 } 104 105 private static List<IPluginDescription> CollectDeclaringPlugins(IEnumerable<Type> usedTypes) { 106 List<IPluginDescription> plugins = new List<IPluginDescription>(); 99 107 foreach (Type type in usedTypes) { 100 108 var plugin = ApplicationManager.Manager.GetDeclaringPlugin(type); … … 104 112 } 105 113 } 114 return plugins; 106 115 } 107 116 108 p ublicstatic void CollectPluginDependencies(List<IPluginDescription> plugins, IPluginDescription plugin) {117 private static void CollectPluginDependencies(List<IPluginDescription> plugins, IPluginDescription plugin) { 109 118 if (plugin == null) return; 110 119 foreach (var dependency in plugin.Dependencies) { -
trunk/sources/HeuristicLab.ExtLibs/HeuristicLab.MathJax/1.1/HeuristicLab.MathJax-1.1/Plugin.cs.frame
r12472 r12621 36 36 base.OnLoad(); 37 37 if (!Directory.EnumerateFiles(AppDomain.CurrentDomain.BaseDirectory, "MathJax.js", SearchOption.TopDirectoryOnly).Any()) { 38 ZipFile.ExtractToDirectory( "mathjax.zip", AppDomain.CurrentDomain.BaseDirectory);38 ZipFile.ExtractToDirectory(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "mathjax.zip"), AppDomain.CurrentDomain.BaseDirectory); 39 39 } 40 40 }
Note: See TracChangeset
for help on using the changeset viewer.