Changeset 4755
- Timestamp:
- 11/09/10 15:18:53 (14 years ago)
- Location:
- branches/HeuristicLab.Hive/sources/HeuristicLab.Hive
- Files:
-
- 46 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Calendar/3.3/Properties/AssemblyInfo.cs
r4751 r4755 58 58 // [assembly: AssemblyVersion("1.0.*")] 59 59 [assembly: AssemblyVersion("3.3.0.0")] 60 [assembly: AssemblyFileVersion("3.3.0.475 0")]60 [assembly: AssemblyFileVersion("3.3.0.4751")] -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.DataAccess/3.3/PersistableObject.cs
r4424 r4755 30 30 [DataContract] 31 31 [Serializable] 32 public class PersistableObject: IPersistableObject, IDeepCloneable { 33 34 public PersistableObject() { } 35 36 public PersistableObject(bool deserializing) { } 37 32 public class PersistableObject : IDeepCloneable, IPersistableObject { 38 33 [Storable] 39 34 [DataMember] 40 35 public Guid Id { get; set; } 36 37 public PersistableObject() { } 38 [StorableConstructor] 39 public PersistableObject(bool deserializing) { } 40 protected PersistableObject(PersistableObject original, Cloner cloner) { 41 cloner.RegisterClonedObject(original, this); 42 this.Id = original.Id; 43 } 44 public virtual IDeepCloneable Clone(Cloner cloner) { 45 return new PersistableObject(this, cloner); 46 } 47 public object Clone() { 48 return Clone(new Cloner()); 49 } 41 50 42 51 public override bool Equals(object obj) { … … 55 64 return this.Id.GetHashCode(); 56 65 } 57 58 public virtual IDeepCloneable Clone(Cloner cloner) {59 PersistableObject clone = (PersistableObject)Activator.CreateInstance(this.GetType(), true);60 cloner.RegisterClonedObject(this, clone);61 clone.Id = this.Id;62 return clone;63 }64 65 public object Clone() {66 return Clone(new Cloner());67 }68 66 } 69 67 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/AppointmentDto.cs
r4424 r4755 24 24 using HeuristicLab.DataAccess; 25 25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 26 using HeuristicLab.Common; 26 27 27 28 namespace HeuristicLab.Hive.Contracts.BusinessObjects { 28 29 29 30 [StorableClass] 30 31 [DataContract] 31 public class AppointmentDto : PersistableObject {32 public class AppointmentDto : PersistableObject { 32 33 [Storable] 33 34 [DataMember] … … 49 50 public Guid ResourceId { get; set; } 50 51 51 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 52 AppointmentDto clone = (AppointmentDto)base.Clone(cloner); 53 clone.AllDayEvent = this.AllDayEvent; 54 clone.EndDate = this.EndDate; 55 clone.Recurring = this.Recurring; 56 clone.RecurringId = this.RecurringId; 57 clone.ResourceId = this.ResourceId; 58 clone.StartDate = this.StartDate; 59 return clone; 52 public AppointmentDto() { } 53 [StorableConstructor] 54 protected AppointmentDto(bool deserializing) : base(deserializing) { } 55 protected AppointmentDto(AppointmentDto original, Cloner cloner) 56 : base(original, cloner) { 57 this.AllDayEvent = original.AllDayEvent; 58 this.EndDate = original.EndDate; 59 this.Recurring = original.Recurring; 60 this.RecurringId = original.RecurringId; 61 this.ResourceId = original.ResourceId; 62 this.StartDate = original.StartDate; 63 } 64 public override IDeepCloneable Clone(Cloner cloner) { 65 return new AppointmentDto(this, cloner); 60 66 } 61 67 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/CachedHivePluginInfoDto.cs
r4424 r4755 26 26 using HeuristicLab.Hive.Contracts.BusinessObjects; 27 27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 28 using HeuristicLab.Common; 28 29 29 30 namespace HeuristicLab.PluginInfrastructure { … … 32 33 [Serializable] 33 34 public class CachedHivePluginInfoDto : HivePluginInfoDto { 34 35 35 36 /// <summary> 36 37 /// stores the plugin files in a list of byte arrays … … 43 44 PluginFiles = new List<HivePluginFile>(); 44 45 } 45 46 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 47 CachedHivePluginInfoDto clone = (CachedHivePluginInfoDto) base.Clone(cloner); 48 clone.PluginFiles = (from p in this.PluginFiles 49 select (HivePluginFile)cloner.Clone(p)).ToList(); 50 return clone; 46 [StorableConstructor] 47 protected CachedHivePluginInfoDto(bool deserializing) : base(deserializing) { } 48 protected CachedHivePluginInfoDto(CachedHivePluginInfoDto original, Cloner cloner) 49 : base(original, cloner) { 50 this.PluginFiles = (original.PluginFiles.Select(x => cloner.Clone(x))).ToList(); 51 } 52 public override IDeepCloneable Clone(Cloner cloner) { 53 return new CachedHivePluginInfoDto(this, cloner); 51 54 } 52 55 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/HiveExperimentDto.cs
r4424 r4755 48 48 public Guid? RootJobId { get; set; } 49 49 50 public HiveExperimentDto() { } 51 [StorableConstructor] 52 protected HiveExperimentDto(bool deserializing) : base(deserializing) { } 53 protected HiveExperimentDto(HiveExperimentDto original, Cloner cloner) 54 : base(original, cloner) { 55 this.Name = original.Name; 56 this.Description = original.Description; 57 this.ResourceIds = original.ResourceIds; 58 this.RootJobId = original.RootJobId; 59 this.UserId = original.UserId; 60 } 61 public override IDeepCloneable Clone(Cloner cloner) { 62 return new HiveExperimentDto(this, cloner); 63 } 64 50 65 public override string ToString() { 51 66 return base.ToString() + "Name: " + Name + ", Description: " + Description + ", ResourceIds: " + ResourceIds; 52 67 } 53 54 public HiveExperimentDto() {55 }56 57 public override IDeepCloneable Clone(Cloner cloner) {58 HiveExperimentDto clone = (HiveExperimentDto)base.Clone(cloner);59 clone.Name = this.Name;60 clone.Description = this.Description;61 clone.ResourceIds = this.ResourceIds;62 clone.RootJobId = this.RootJobId;63 clone.UserId = this.UserId;64 return clone;65 }66 68 } 67 69 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/HiveExperimentDtoList.cs
r4424 r4755 33 33 this.list = new List<HiveExperimentDto>(collection); 34 34 } 35 36 35 [StorableConstructor] 37 36 protected HiveExperimentDtoList(bool deserializing) : base(deserializing) { } 38 37 protected HiveExperimentDtoList(HiveExperimentDtoList original, Cloner cloner) { 38 cloner.RegisterClonedObject(original, this); 39 this.list = (original.Select(x => (HiveExperimentDto)cloner.Clone(x))).ToList(); 40 } 41 public virtual IDeepCloneable Clone(Cloner cloner) { 42 return new HiveExperimentDtoList(this, cloner); 43 } 39 44 public object Clone() { 40 45 return Clone(new Cloner()); 41 46 } 42 43 public virtual IDeepCloneable Clone(Cloner cloner) {44 HiveExperimentDtoList clone = (HiveExperimentDtoList)Activator.CreateInstance(this.GetType());45 cloner.RegisterClonedObject(this, clone);46 clone.list = (this.Select(x => (HiveExperimentDto)cloner.Clone(x))).ToList();47 return clone;48 }49 47 } 50 48 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/HivePluginFile.cs
r4424 r4755 35 35 [Storable] 36 36 [DataMember] 37 public String Name { get; set; } 37 public String Name { get; set; } 38 38 39 public HivePluginFile() { } 39 40 public HivePluginFile(byte[] binaryFile, String name) { 40 41 BinaryFile = binaryFile; 41 42 Name = name; 42 43 } 43 44 [StorableConstructor] 45 protected HivePluginFile(bool deserializing) { } 46 protected HivePluginFile(HivePluginFile original, Cloner cloner) { 47 cloner.RegisterClonedObject(original, this); 48 this.Name = original.Name; 49 if (original.BinaryFile != null) { 50 this.BinaryFile = new byte[original.BinaryFile.Length]; 51 Array.Copy(original.BinaryFile, this.BinaryFile, original.BinaryFile.Length); 52 } 53 } 44 54 public virtual IDeepCloneable Clone(Cloner cloner) { 45 HivePluginFile clone = (HivePluginFile)Activator.CreateInstance(this.GetType(), true); 46 cloner.RegisterClonedObject(this, clone); 47 clone.Name = this.Name; 48 if (this.BinaryFile != null) { 49 clone.BinaryFile = new byte[this.BinaryFile.Length]; 50 Array.Copy(this.BinaryFile, clone.BinaryFile, this.BinaryFile.Length); 51 } 52 return clone; 55 return new HivePluginFile(this, cloner); 53 56 } 54 55 57 public object Clone() { 56 58 return Clone(new Cloner()); -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/HivePluginInfoDto.cs
r4424 r4755 27 27 using HeuristicLab.Hive.JobBase; 28 28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 29 using HeuristicLab.Common; 29 30 30 31 namespace HeuristicLab.Hive.Contracts.BusinessObjects { … … 49 50 50 51 public HivePluginInfoDto() { } 51 52 [StorableConstructor] 52 53 public HivePluginInfoDto(bool deserializing) : base(deserializing) { } 54 protected HivePluginInfoDto(HivePluginInfoDto original, Cloner cloner) 55 : base(original, cloner) { 56 this.Name = original.Name; 57 this.Version = (Version)original.Version.Clone(); 58 this.Update = original.Update; 59 } 60 public override IDeepCloneable Clone(Cloner cloner) { 61 return new HivePluginInfoDto(this, cloner); 62 } 53 63 54 64 [StorableHook(HookType.BeforeSerialization)] … … 60 70 private void AfterDeserialization() { 61 71 this.Version = new Version(storableVersion); 62 }63 64 public override Common.IDeepCloneable Clone(Common.Cloner cloner) {65 HivePluginInfoDto clone = (HivePluginInfoDto) base.Clone(cloner);66 clone.Name = this.Name;67 clone.Version = (Version)this.Version.Clone();68 clone.Update = this.Update;69 return clone;70 72 } 71 73 -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/JobDto.cs
r4424 r4755 89 89 AssignedResourceIds = new List<Guid>(); 90 90 } 91 91 [StorableConstructor] 92 protected JobDto(bool deserializing) : base(deserializing) { } 93 protected JobDto(JobDto original, Cloner cloner) 94 : base(original, cloner) { 95 this.Id = original.Id; 96 this.AssignedResourceIds = new List<Guid>(original.AssignedResourceIds); 97 this.Slave = cloner.Clone(original.Slave); 98 this.CoresNeeded = original.CoresNeeded; 99 this.DateCalculated = original.DateCalculated; 100 this.DateCreated = original.DateCreated; 101 this.DateFinished = original.DateFinished; 102 this.Exception = original.Exception; 103 this.Id = original.Id; 104 this.MemoryNeeded = original.MemoryNeeded; 105 this.ParentJobId = original.ParentJobId; 106 this.ExecutionTime = original.ExecutionTime; 107 this.PluginsNeeded = (original.PluginsNeeded.Select(x => cloner.Clone(x))).ToList(); 108 this.Priority = original.Priority; 109 this.Project = cloner.Clone(original.Project); 110 this.State = original.State; 111 this.UserId = original.UserId; 112 } 92 113 public override IDeepCloneable Clone(Cloner cloner) { 93 JobDto clone = (JobDto)base.Clone(cloner); 94 clone.Id = this.Id; 95 clone.AssignedResourceIds = new List<Guid>(this.AssignedResourceIds); 96 clone.Slave = (SlaveDto)cloner.Clone(this.Slave); 97 clone.CoresNeeded = this.CoresNeeded; 98 clone.DateCalculated = this.DateCalculated; 99 clone.DateCreated = this.DateCreated; 100 clone.DateFinished = this.DateFinished; 101 clone.Exception = this.Exception; 102 clone.Id = this.Id; 103 clone.MemoryNeeded = this.MemoryNeeded; 104 clone.ParentJobId = this.ParentJobId; 105 clone.ExecutionTime = this.ExecutionTime; 106 clone.PluginsNeeded = (from p in this.PluginsNeeded 107 select (HivePluginInfoDto)cloner.Clone(p)).ToList(); 108 clone.Priority = this.Priority; 109 clone.Project = (ProjectDto)cloner.Clone(this.Project); 110 clone.State = this.State; 111 clone.UserId = this.UserId; 112 return clone; 114 return new JobDto(this, cloner); 113 115 } 114 116 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/JobResult.cs
r4557 r4755 24 24 using HeuristicLab.DataAccess; 25 25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 26 using HeuristicLab.Common; 26 27 27 28 namespace HeuristicLab.Hive.Contracts.BusinessObjects { … … 56 57 public Guid? ParentJobId { get; set; } 57 58 58 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 59 JobResult clone = (JobResult) base.Clone(cloner); 60 clone.SlaveId = this.SlaveId; 61 clone.DateCreated = this.DateCreated; 62 clone.DateCalculated = this.DateCalculated; 63 clone.DateFinished = this.DateFinished; 64 clone.Exception = this.Exception; 65 clone.ExecutionTime = this.ExecutionTime; 66 clone.State = this.State; 67 clone.ParentJobId = this.ParentJobId; 68 return clone; 59 public JobResult() { } 60 [StorableConstructor] 61 protected JobResult(bool deserializing) : base(deserializing) { } 62 protected JobResult(JobResult original, Cloner cloner) 63 : base(original, cloner) { 64 this.SlaveId = original.SlaveId; 65 this.DateCreated = original.DateCreated; 66 this.DateCalculated = original.DateCalculated; 67 this.DateFinished = original.DateFinished; 68 this.Exception = original.Exception; 69 this.ExecutionTime = original.ExecutionTime; 70 this.State = original.State; 71 this.ParentJobId = original.ParentJobId; 69 72 } 73 public override IDeepCloneable Clone(Cloner cloner) { 74 return new JobResult(this, cloner); 75 } 76 70 77 } 71 78 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/JobResultList.cs
r4424 r4755 33 33 this.list = new List<JobResult>(collection); 34 34 } 35 36 35 [StorableConstructor] 37 36 protected JobResultList(bool deserializing) : base(deserializing) { } 38 37 protected JobResultList(JobResultList original, Cloner cloner) { 38 cloner.RegisterClonedObject(original, this); 39 this.list = (original.Select(x => cloner.Clone(x))).ToList(); 40 } 41 public virtual IDeepCloneable Clone(Cloner cloner) { 42 return new JobResultList(this, cloner); 43 } 39 44 public object Clone() { 40 45 return Clone(new Cloner()); 41 46 } 42 47 43 public virtual IDeepCloneable Clone(Cloner cloner) { 44 JobResultList clone = (JobResultList)Activator.CreateInstance(this.GetType()); 45 cloner.RegisterClonedObject(this, clone); 46 clone.list = (this.Select(x => (JobResult)cloner.Clone(x))).ToList(); 47 return clone; 48 } 48 49 49 } 50 50 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/ProjectDto.cs
r4424 r4755 24 24 using HeuristicLab.DataAccess; 25 25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 26 using HeuristicLab.Common; 26 27 27 28 namespace HeuristicLab.Hive.Contracts.BusinessObjects { … … 34 35 public String Name { get; set; } 35 36 36 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 37 ProjectDto clone = (ProjectDto) base.Clone(cloner); 38 clone.Name = this.Name; 39 return clone; 37 public ProjectDto() { } 38 [StorableConstructor] 39 protected ProjectDto(bool deserializing) : base(deserializing) { } 40 protected ProjectDto(ProjectDto original, Cloner cloner) 41 : base(original, cloner) { 42 this.Name = original.Name; 43 } 44 public override IDeepCloneable Clone(Cloner cloner) { 45 return new ProjectDto(this, cloner); 40 46 } 41 47 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/ResourceDto.cs
r4424 r4755 35 35 public string Name { get; set; } 36 36 37 public ResourceDto() { } 38 [StorableConstructor] 39 protected ResourceDto(bool deserializing) : base(deserializing) { } 40 protected ResourceDto(ResourceDto original, Cloner cloner) 41 : base(original, cloner) { 42 this.Name = original.Name; 43 } 44 public override IDeepCloneable Clone(Cloner cloner) { 45 return new ResourceDto(this, cloner); 46 } 47 37 48 public override string ToString() { 38 49 return Id + " " + Name; 39 50 } 40 41 public virtual IDeepCloneable Clone(Cloner cloner) {42 ResourceDto clone = (ResourceDto)base.Clone(cloner);43 clone.Name = this.Name;44 return clone;45 }46 51 } 47 52 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/SerializedJob.cs
r4557 r4755 39 39 public byte[] SerializedJobData { get; set; } 40 40 41 public SerializedJob() { } 42 [StorableConstructor] 43 protected SerializedJob(bool deserializing) { } 44 protected SerializedJob(SerializedJob original, Cloner cloner) { 45 cloner.RegisterClonedObject(original, this); 46 this.JobInfo = cloner.Clone(original.JobInfo); 47 this.SerializedJobData = new byte[this.SerializedJobData.Length]; 48 Array.Copy(original.SerializedJobData, this.SerializedJobData, original.SerializedJobData.Length); 49 } 41 50 public virtual IDeepCloneable Clone(Cloner cloner) { 42 SerializedJob clone = (SerializedJob)Activator.CreateInstance(this.GetType(), true); 43 cloner.RegisterClonedObject(this, clone); 44 clone.JobInfo = (JobDto)cloner.Clone(this.JobInfo); 45 clone.SerializedJobData = new byte[this.SerializedJobData.Length]; 46 Array.Copy(this.SerializedJobData, clone.SerializedJobData, this.SerializedJobData.Length); 47 return clone; 51 return new SerializedJob(this, cloner); 48 52 } 49 50 53 public object Clone() { 51 54 return Clone(new Cloner()); -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/SerializedJobList.cs
r4424 r4755 35 35 this.list = new List<SerializedJob>(collection); 36 36 } 37 38 37 [StorableConstructor] 39 38 protected SerializedJobList(bool deserializing) : base(deserializing) { } 40 39 protected SerializedJobList(SerializedJobList original, Cloner cloner) { 40 cloner.RegisterClonedObject(original, this); 41 this.list = (original.Select(x => cloner.Clone(x))).ToList(); 42 } 43 public virtual IDeepCloneable Clone(Cloner cloner) { 44 return new SerializedJobList(this, cloner); 45 } 41 46 public object Clone() { 42 47 return Clone(new Cloner()); 43 48 } 44 45 public virtual IDeepCloneable Clone(Cloner cloner) {46 SerializedJobList clone = (SerializedJobList)Activator.CreateInstance(this.GetType());47 cloner.RegisterClonedObject(this, clone);48 clone.list = (this.Select(x => (SerializedJob)cloner.Clone(x))).ToList();49 return clone;50 }51 49 } 52 50 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/SlaveConfigDto.cs
r4424 r4755 30 30 [DataContract] 31 31 [Serializable] 32 public class SlaveConfigDto : PersistableObject , IDeepCloneable{32 public class SlaveConfigDto : PersistableObject { 33 33 [Storable] 34 34 [DataMember] … … 38 38 public int? HeartBeatIntervall { get; set; } 39 39 40 public SlaveConfigDto() { } 41 [StorableConstructor] 42 protected SlaveConfigDto(bool deserializing) : base(deserializing) { } 43 protected SlaveConfigDto(SlaveConfigDto original, Cloner cloner) 44 : base(original, cloner) { 45 this.UpDownTimeCalendar = original.UpDownTimeCalendar; 46 this.HeartBeatIntervall = original.HeartBeatIntervall; 47 } 40 48 public override IDeepCloneable Clone(Cloner cloner) { 41 SlaveConfigDto clone = (SlaveConfigDto)base.Clone(cloner); 42 clone.UpDownTimeCalendar = this.UpDownTimeCalendar; 43 clone.HeartBeatIntervall = this.HeartBeatIntervall; 44 return clone; 49 return new SlaveConfigDto(this, cloner); 45 50 } 46 51 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/SlaveDto.cs
r4424 r4755 61 61 public bool IsAllowedToCalculate { get; set; } 62 62 63 public SlaveDto() { } 64 [StorableConstructor] 65 protected SlaveDto(bool deserializing) : base(deserializing) { } 66 protected SlaveDto(SlaveDto original, Cloner cloner) 67 : base(original, cloner) { 68 this.CalendarSyncStatus = original.CalendarSyncStatus; 69 this.Config = cloner.Clone(original.Config); 70 this.CpuSpeedPerCore = original.CpuSpeedPerCore; 71 this.FreeMemory = original.FreeMemory; 72 this.Login = original.Login; 73 this.Memory = original.Memory; 74 this.NrOfCores = original.NrOfCores; 75 this.NrOfFreeCores = original.NrOfFreeCores; 76 this.State = original.State; 77 this.IsAllowedToCalculate = original.IsAllowedToCalculate; 78 } 79 public override IDeepCloneable Clone(Cloner cloner) { 80 return new SlaveDto(this, cloner); 81 } 82 63 83 public override string ToString() { 64 84 return base.ToString() + ", NrOfCores: " + NrOfCores + ", NrOfFreeCores " + NrOfFreeCores + ", Login: " + Login + ", State: " + State; 65 85 } 66 67 public override IDeepCloneable Clone(Cloner cloner) {68 SlaveDto clone = (SlaveDto)base.Clone(cloner);69 clone.CalendarSyncStatus = this.CalendarSyncStatus;70 clone.Config = (SlaveConfigDto)cloner.Clone(this.Config);71 clone.CpuSpeedPerCore = this.CpuSpeedPerCore;72 clone.FreeMemory = this.FreeMemory;73 clone.Login = this.Login;74 clone.Memory = this.Memory;75 clone.NrOfCores = this.NrOfCores;76 clone.NrOfFreeCores = this.NrOfFreeCores;77 clone.State = this.State;78 clone.IsAllowedToCalculate = this.IsAllowedToCalculate;79 return clone;80 }81 86 } 82 87 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/SlaveGroupDto.cs
r4424 r4755 24 24 using System.Runtime.Serialization; 25 25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 26 using HeuristicLab.Common; 26 27 27 28 namespace HeuristicLab.Hive.Contracts.BusinessObjects { … … 37 38 Resources = new List<ResourceDto>(); 38 39 } 39 40 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 41 SlaveGroupDto clone = (SlaveGroupDto) base.Clone(cloner); 42 clone.Resources = (from r in this.Resources 43 select (ResourceDto)cloner.Clone(r)).ToList(); 44 return clone; 40 [StorableConstructor] 41 protected SlaveGroupDto(bool deserializing) : base(deserializing) { } 42 protected SlaveGroupDto(SlaveGroupDto original, Cloner cloner) 43 : base(original, cloner) { 44 this.Resources = (original.Resources.Select(x => cloner.Clone(x))).ToList(); 45 } 46 public override IDeepCloneable Clone(Cloner cloner) { 47 return new SlaveGroupDto(this, cloner); 45 48 } 46 49 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/SlaveGroupDtoList.cs
r4424 r4755 36 36 this.list = new List<SlaveGroupDto>(collection); 37 37 } 38 39 38 [StorableConstructor] 40 39 protected SlaveGroupDtoList(bool deserializing) : base(deserializing) { } 41 40 protected SlaveGroupDtoList(SlaveGroupDtoList original, Cloner cloner) { 41 cloner.RegisterClonedObject(original, this); 42 this.list = (this.Select(x => cloner.Clone(x))).ToList(); 43 } 44 public virtual IDeepCloneable Clone(Cloner cloner) { 45 return new SlaveGroupDtoList(this, cloner); 46 } 42 47 public object Clone() { 43 48 return Clone(new Cloner()); 44 49 } 45 46 public virtual IDeepCloneable Clone(Cloner cloner) {47 SlaveGroupDtoList clone = (SlaveGroupDtoList)Activator.CreateInstance(this.GetType());48 cloner.RegisterClonedObject(this, clone);49 clone.list = (this.Select(x => (SlaveGroupDto)cloner.Clone(x))).ToList();50 return clone;51 }52 50 } 53 51 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/BusinessObjects/UpTimeStatisticsDto.cs
r4424 r4755 24 24 using HeuristicLab.DataAccess; 25 25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 26 using HeuristicLab.Common; 26 27 27 28 namespace HeuristicLab.Hive.Contracts.BusinessObjects { … … 40 41 public DateTime Logout { get; set; } 41 42 42 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 43 UpTimeStatisticsDto clone = (UpTimeStatisticsDto) base.Clone(cloner); 44 clone.Slave = (SlaveDto)cloner.Clone(this.Slave); 45 clone.Login = this.Login; 46 clone.Logout = this.Logout; 47 return clone; 43 public UpTimeStatisticsDto() { } 44 [StorableConstructor] 45 protected UpTimeStatisticsDto(bool deserializing) : base(deserializing) { } 46 protected UpTimeStatisticsDto(UpTimeStatisticsDto original, Cloner cloner) 47 : base(original, cloner) { 48 this.Slave = cloner.Clone(original.Slave); 49 this.Login = original.Login; 50 this.Logout = original.Logout; 51 } 52 public override IDeepCloneable Clone(Cloner cloner) { 53 return new UpTimeStatisticsDto(this, cloner); 48 54 } 49 55 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/HiveRoles.cs
r4424 r4755 23 23 namespace HeuristicLab.Hive.Contracts { 24 24 public static class HiveRoles { 25 public const string Administrator = "Hive .Administrator";26 public const string Slave = "Hive .Slave";27 public const string Client = "Hive.Client";25 public const string Administrator = "Hive Administrator"; 26 public const string Slave = "Hive Slave"; 27 public const string User = "Hive User"; 28 28 } 29 29 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/MessageContainer.cs
r4424 r4755 32 32 [Serializable] 33 33 public class MessageContainer : IDeepCloneable { 34 35 34 public enum MessageType { 36 35 FetchJob, AbortJob, JobAborted, RequestSnapshot, FinishedJob, NoMessage, SnapshotReady, Shutdown, JobFailed, UptimeLimitDisconnect, … … 46 45 public Guid JobId { get; set; } 47 46 47 public MessageContainer() { } 48 48 public MessageContainer(MessageType message) { 49 49 Message = message; 50 50 JobId = Guid.Empty; 51 51 } 52 53 52 public MessageContainer(MessageType message, Guid jobId) { 54 53 Message = message; 55 54 JobId = jobId; 56 55 } 57 56 [StorableConstructor] 57 protected MessageContainer(bool deserializing) { } 58 protected MessageContainer(MessageContainer original, Cloner cloner) { 59 cloner.RegisterClonedObject(original, this); 60 this.Message = original.Message; 61 this.JobId = original.JobId; 62 } 58 63 public virtual IDeepCloneable Clone(Cloner cloner) { 59 MessageContainer clone = (MessageContainer)Activator.CreateInstance(this.GetType(), true); 60 cloner.RegisterClonedObject(this, clone); 61 clone.Message = this.Message; 62 clone.JobId = this.JobId; 63 return clone; 64 return new MessageContainer(this, cloner); 64 65 } 65 66 66 public object Clone() { 67 67 return Clone(new Cloner()); -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/MessageContainerWithCallback.cs
r4424 r4755 28 28 [Serializable] 29 29 public class MessageContainerWithCallback<CallbackParameterType> : MessageContainer { 30 31 30 [Storable] 32 31 public Action<CallbackParameterType> Callback; 33 32 33 public MessageContainerWithCallback() { } 34 34 public MessageContainerWithCallback(MessageType message, Guid parentJobId, Action<CallbackParameterType> callback) 35 35 : base(message, parentJobId) { 36 36 this.Callback = callback; 37 37 } 38 38 [StorableConstructor] 39 protected MessageContainerWithCallback(bool deserializing) : base(deserializing) { } 40 protected MessageContainerWithCallback(MessageContainerWithCallback<CallbackParameterType> original, Cloner cloner) 41 : base(original, cloner) { 42 this.Callback = original.Callback; 43 } 39 44 public override IDeepCloneable Clone(Cloner cloner) { 40 MessageContainerWithJob clone = (MessageContainerWithJob)base.Clone(cloner); 41 42 return clone; 45 return new MessageContainerWithCallback<CallbackParameterType>(this, cloner); 43 46 } 44 47 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/MessageContainerWithJob.cs
r4424 r4755 29 29 [Serializable] 30 30 public class MessageContainerWithJob : MessageContainer { 31 32 31 [Storable] 33 32 public SerializedJob SerializedJob { get; set; } 34 33 34 public MessageContainerWithJob() { } 35 35 public MessageContainerWithJob(MessageType message, Guid parentJobId, SerializedJob serializedJob) 36 36 : base(message, parentJobId) { 37 37 this.SerializedJob = serializedJob; 38 38 } 39 39 [StorableConstructor] 40 protected MessageContainerWithJob(bool deserializing) : base(deserializing) { } 41 protected MessageContainerWithJob(MessageContainerWithJob original, Cloner cloner) 42 : base(original, cloner) { 43 this.SerializedJob = cloner.Clone(original.SerializedJob); 44 } 40 45 public override IDeepCloneable Clone(Cloner cloner) { 41 MessageContainerWithJob clone = (MessageContainerWithJob)base.Clone(cloner); 42 clone.SerializedJob = (SerializedJob)cloner.Clone(this.SerializedJob); 43 return clone; 46 return new MessageContainerWithJob(this, cloner); 44 47 } 45 48 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/ResponseObjects/Response.cs
r4424 r4755 40 40 StatusMessage = ResponseStatus.Ok; 41 41 } 42 43 42 [StorableConstructor] 44 43 protected Response(bool deserializing) { } 45 44 protected Response(Response original, Cloner cloner) { 45 cloner.RegisterClonedObject(original, this); 46 this.StatusMessage = original.StatusMessage; 47 } 46 48 public virtual IDeepCloneable Clone(Cloner cloner) { 47 Response clone = (Response)Activator.CreateInstance(this.GetType(), true); 48 cloner.RegisterClonedObject(this, clone); 49 clone.StatusMessage = this.StatusMessage; 50 return clone; 49 return new Response(this, cloner); 51 50 } 52 53 51 public object Clone() { 54 52 return Clone(new Cloner()); -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/ResponseObjects/ResponseCalendar.cs
r4424 r4755 26 26 using HeuristicLab.Hive.Contracts.BusinessObjects; 27 27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 28 using HeuristicLab.Common; 28 29 29 30 namespace HeuristicLab.Hive.Contracts.ResponseObjects { … … 39 40 public IEnumerable<AppointmentDto> Appointments { get; set; } 40 41 41 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 42 ResponseCalendar clone = (ResponseCalendar) base.Clone(cloner); 43 clone.Appointments = (from a in this.Appointments 44 select (AppointmentDto)cloner.Clone(a)).ToList(); 45 clone.ForceFetch = this.ForceFetch; 46 return clone; 42 public ResponseCalendar() { 43 this.Appointments = new List<AppointmentDto>(); 44 } 45 [StorableConstructor] 46 protected ResponseCalendar(bool deserializing) : base(deserializing) { } 47 protected ResponseCalendar(ResponseCalendar original, Cloner cloner) 48 : base(original, cloner) { 49 this.Appointments = (original.Appointments.Select(x => cloner.Clone(x))).ToList(); 50 this.ForceFetch = original.ForceFetch; 51 } 52 public override IDeepCloneable Clone(Cloner cloner) { 53 return new ResponseCalendar(this, cloner); 47 54 } 48 55 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/ResponseObjects/ResponseHeartBeat.cs
r4424 r4755 25 25 using System.Runtime.Serialization; 26 26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 27 using HeuristicLab.Common; 27 28 28 29 namespace HeuristicLab.Hive.Contracts.ResponseObjects { 29 30 31 30 /// <summary> 32 31 /// Response Heartbeat class … … 41 40 public List<MessageContainer> ActionRequest { get; set; } 42 41 43 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 44 ResponseHeartBeat clone = (ResponseHeartBeat) base.Clone(cloner); 45 clone.ActionRequest = (from ar in this.ActionRequest 46 select (MessageContainer) cloner.Clone(ar)).ToList(); 47 return clone; 42 public ResponseHeartBeat() { 43 this.ActionRequest = new List<MessageContainer>(); 44 } 45 [StorableConstructor] 46 protected ResponseHeartBeat(bool deserializing) : base(deserializing) { } 47 protected ResponseHeartBeat(ResponseHeartBeat original, Cloner cloner) 48 : base(original, cloner) { 49 this.ActionRequest = (original.ActionRequest.Select(x => cloner.Clone(x))).ToList(); 50 } 51 public override IDeepCloneable Clone(Cloner cloner) { 52 return new ResponseHeartBeat(this, cloner); 48 53 } 49 54 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/ResponseObjects/ResponseList.cs
r4424 r4755 31 31 [DataContract] 32 32 [Serializable] 33 public class ResponseList<T> : Response 34 where T : IDeepCloneable { 33 public class ResponseList<T> : Response where T : class, IDeepCloneable { 35 34 [Storable] 36 35 [DataMember] 37 36 public IList<T> List { get; set; } 38 37 39 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 40 ResponseList<T> clone = (ResponseList<T>)base.Clone(cloner); 41 clone.List = (from elem in List 42 select (T)cloner.Clone(elem)).ToList(); 43 return clone; 38 public ResponseList() { 39 this.List = new List<T>(); 40 } 41 [StorableConstructor] 42 protected ResponseList(bool deserializing) : base(deserializing) { } 43 protected ResponseList(ResponseList<T> original, Cloner cloner) 44 : base(original, cloner) { 45 this.List = (original.List.Select(x => cloner.Clone(x))).ToList(); 46 } 47 public override IDeepCloneable Clone(Cloner cloner) { 48 return new ResponseList<T>(this, cloner); 44 49 } 45 50 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/ResponseObjects/ResponseObject.cs
r4424 r4755 29 29 [DataContract] 30 30 [Serializable] 31 public class ResponseObject<T> : Response 32 where T : IDeepCloneable { 31 public class ResponseObject<T> : Response where T : class, IDeepCloneable { 33 32 [Storable] 34 33 [DataMember] 35 34 public T Obj { get; set; } 36 35 37 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 38 ResponseObject<T> clone = (ResponseObject<T>)base.Clone(cloner); 39 clone.Obj = (T)cloner.Clone(this.Obj); 40 return clone; 36 public ResponseObject() { } 37 [StorableConstructor] 38 protected ResponseObject(bool deserializing) : base(deserializing) { } 39 protected ResponseObject(ResponseObject<T> original, Cloner cloner) 40 : base(original, cloner) { 41 this.Obj = cloner.Clone(original.Obj); 42 } 43 public override IDeepCloneable Clone(Cloner cloner) { 44 return new ResponseObject<T>(this, cloner); 41 45 } 42 46 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/ResponseObjects/ResponseResultReceived.cs
r4424 r4755 23 23 using System.Runtime.Serialization; 24 24 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 25 using HeuristicLab.Common; 25 26 26 27 namespace HeuristicLab.Hive.Contracts.ResponseObjects { … … 36 37 public bool Finished { get; set; } 37 38 38 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 39 ResponseResultReceived clone = (ResponseResultReceived) base.Clone(cloner); 40 clone.Finished = this.Finished; 41 clone.JobId = this.JobId; 42 return clone; 39 public ResponseResultReceived() { } 40 [StorableConstructor] 41 protected ResponseResultReceived(bool deserializing) : base(deserializing) { } 42 protected ResponseResultReceived(ResponseResultReceived original, Cloner cloner) 43 : base(original, cloner) { 44 this.Finished = original.Finished; 45 this.JobId = original.JobId; 46 } 47 public override IDeepCloneable Clone(Cloner cloner) { 48 return new ResponseResultReceived(this, cloner); 43 49 } 44 50 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Contracts/3.3/WcfServicePool.cs
r4710 r4755 67 67 private int requestCount = 0; 68 68 69 public WcfServicePool(string hostAddress, string username, string password, string endpointName) { 70 this.hostAddress = hostAddress; 69 public WcfServicePool(string username, string password, string endpointName) { 71 70 this.username = username; 72 71 this.password = password; 73 72 this.endpointName = endpointName; 73 } 74 public WcfServicePool(string hostAddress, string username, string password, string endpointName) : this(username, password, endpointName) { 75 this.hostAddress = hostAddress; 74 76 } 75 77 … … 89 91 if (factory == null) { 90 92 factory = new ChannelFactory<T>(endpointName); 91 WcfSettings.SetEndpointAddress(factory.Endpoint, hostAddress); 93 if (!string.IsNullOrEmpty(hostAddress)) { 94 WcfSettings.SetEndpointAddress(factory.Endpoint, hostAddress); 95 } 92 96 93 97 factory.Credentials.UserName.UserName = username; -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment.Views/3.3/ConnectionSetupView.Designer.cs
r4342 r4755 46 46 this.components = new System.ComponentModel.Container(); 47 47 System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConnectionSetupView)); 48 this.urlTextBox = new System.Windows.Forms.TextBox();49 this.urlLabel = new System.Windows.Forms.Label();50 48 this.userLabel = new System.Windows.Forms.Label(); 51 49 this.userTextBox = new System.Windows.Forms.TextBox(); … … 55 53 this.savePasswordCheckbox = new System.Windows.Forms.CheckBox(); 56 54 this.cancelButton = new System.Windows.Forms.Button(); 57 this.groupBox1 = new System.Windows.Forms.GroupBox();58 55 this.toolTip = new System.Windows.Forms.ToolTip(this.components); 59 this.groupBox1.SuspendLayout();60 56 this.SuspendLayout(); 61 //62 // urlTextBox63 //64 this.urlTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)65 | System.Windows.Forms.AnchorStyles.Right)));66 this.urlTextBox.Location = new System.Drawing.Point(125, 15);67 this.urlTextBox.Name = "urlTextBox";68 this.urlTextBox.Size = new System.Drawing.Size(351, 20);69 this.urlTextBox.TabIndex = 0;70 this.toolTip.SetToolTip(this.urlTextBox, "URL of HeuristicLab Plugin Deployment Service");71 //72 // urlLabel73 //74 this.urlLabel.AutoSize = true;75 this.urlLabel.Location = new System.Drawing.Point(12, 18);76 this.urlLabel.Name = "urlLabel";77 this.urlLabel.Size = new System.Drawing.Size(107, 13);78 this.urlLabel.TabIndex = 1;79 this.urlLabel.Text = "&Hive Server Address:";80 57 // 81 58 // userLabel 82 59 // 83 60 this.userLabel.AutoSize = true; 84 this.userLabel.Location = new System.Drawing.Point( 6, 22);61 this.userLabel.Location = new System.Drawing.Point(3, 6); 85 62 this.userLabel.Name = "userLabel"; 86 63 this.userLabel.Size = new System.Drawing.Size(58, 13); … … 92 69 this.userTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 93 70 | System.Windows.Forms.AnchorStyles.Right))); 94 this.userTextBox.Location = new System.Drawing.Point(9 4, 19);71 this.userTextBox.Location = new System.Drawing.Point(91, 3); 95 72 this.userTextBox.Name = "userTextBox"; 96 this.userTextBox.Size = new System.Drawing.Size(1 55, 20);73 this.userTextBox.Size = new System.Drawing.Size(189, 20); 97 74 this.userTextBox.TabIndex = 0; 98 75 this.toolTip.SetToolTip(this.userTextBox, "Username used to connect to the HeuristicLab plugin deployment service"); … … 101 78 // 102 79 this.passwordLabel.AutoSize = true; 103 this.passwordLabel.Location = new System.Drawing.Point( 6, 48);80 this.passwordLabel.Location = new System.Drawing.Point(3, 32); 104 81 this.passwordLabel.Name = "passwordLabel"; 105 82 this.passwordLabel.Size = new System.Drawing.Size(56, 13); … … 111 88 this.passwordTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 112 89 | System.Windows.Forms.AnchorStyles.Right))); 113 this.passwordTextBox.Location = new System.Drawing.Point(9 4, 45);90 this.passwordTextBox.Location = new System.Drawing.Point(91, 29); 114 91 this.passwordTextBox.Name = "passwordTextBox"; 115 this.passwordTextBox.Size = new System.Drawing.Size(1 55, 20);92 this.passwordTextBox.Size = new System.Drawing.Size(189, 20); 116 93 this.passwordTextBox.TabIndex = 1; 117 94 this.toolTip.SetToolTip(this.passwordTextBox, "Passwort used to connect to the HeuristicLab plugin deployment service"); … … 121 98 // 122 99 this.applyButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); 123 this.applyButton.Location = new System.Drawing.Point( 320, 148);100 this.applyButton.Location = new System.Drawing.Point(124, 79); 124 101 this.applyButton.Name = "applyButton"; 125 102 this.applyButton.Size = new System.Drawing.Size(75, 23); … … 134 111 this.savePasswordCheckbox.AutoSize = true; 135 112 this.savePasswordCheckbox.CheckAlign = System.Drawing.ContentAlignment.MiddleRight; 136 this.savePasswordCheckbox.Location = new System.Drawing.Point( 6, 71);113 this.savePasswordCheckbox.Location = new System.Drawing.Point(3, 55); 137 114 this.savePasswordCheckbox.Name = "savePasswordCheckbox"; 138 115 this.savePasswordCheckbox.Size = new System.Drawing.Size(103, 17); … … 146 123 this.cancelButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); 147 124 this.cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; 148 this.cancelButton.Location = new System.Drawing.Point( 401, 148);125 this.cancelButton.Location = new System.Drawing.Point(205, 79); 149 126 this.cancelButton.Name = "cancelButton"; 150 127 this.cancelButton.Size = new System.Drawing.Size(75, 23); … … 155 132 this.cancelButton.Click += new System.EventHandler(this.cancelButton_Click); 156 133 // 157 // groupBox1158 //159 this.groupBox1.Controls.Add(this.userTextBox);160 this.groupBox1.Controls.Add(this.userLabel);161 this.groupBox1.Controls.Add(this.savePasswordCheckbox);162 this.groupBox1.Controls.Add(this.passwordTextBox);163 this.groupBox1.Controls.Add(this.passwordLabel);164 this.groupBox1.Location = new System.Drawing.Point(12, 41);165 this.groupBox1.Name = "groupBox1";166 this.groupBox1.Size = new System.Drawing.Size(255, 96);167 this.groupBox1.TabIndex = 1;168 this.groupBox1.TabStop = false;169 this.groupBox1.Text = "User Credentials";170 //171 134 // ConnectionSetupView 172 135 // … … 175 138 this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 176 139 this.CancelButton = this.cancelButton; 177 this.ClientSize = new System.Drawing.Size(488, 183); 178 this.Controls.Add(this.groupBox1); 140 this.ClientSize = new System.Drawing.Size(292, 114); 141 this.Controls.Add(this.userTextBox); 142 this.Controls.Add(this.userLabel); 179 143 this.Controls.Add(this.cancelButton); 144 this.Controls.Add(this.savePasswordCheckbox); 145 this.Controls.Add(this.passwordTextBox); 180 146 this.Controls.Add(this.applyButton); 181 this.Controls.Add(this.urlLabel); 182 this.Controls.Add(this.urlTextBox); 147 this.Controls.Add(this.passwordLabel); 183 148 this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); 184 149 this.MaximizeBox = false; … … 189 154 this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; 190 155 this.Text = "Edit Hive Connection Settings"; 191 this.groupBox1.ResumeLayout(false);192 this.groupBox1.PerformLayout();193 156 this.ResumeLayout(false); 194 157 this.PerformLayout(); … … 198 161 #endregion 199 162 200 private System.Windows.Forms.TextBox urlTextBox;201 private System.Windows.Forms.Label urlLabel;202 163 private System.Windows.Forms.Label userLabel; 203 164 private System.Windows.Forms.TextBox userTextBox; … … 207 168 private System.Windows.Forms.CheckBox savePasswordCheckbox; 208 169 private System.Windows.Forms.Button cancelButton; 209 private System.Windows.Forms.GroupBox groupBox1;210 170 private System.Windows.Forms.ToolTip toolTip; 211 171 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment.Views/3.3/ConnectionSetupView.cs
r4424 r4755 28 28 InitializeComponent(); 29 29 30 urlTextBox.Text = HeuristicLab.Hive.Experiment.Properties.Settings.Default.HiveServerIp;31 30 userTextBox.Text = HeuristicLab.Hive.Experiment.Properties.Settings.Default.HiveUsername; 32 31 passwordTextBox.Text = HeuristicLab.Hive.Experiment.Properties.Settings.Default.HivePassword; … … 35 34 36 35 private void applyButton_Click(object sender, EventArgs e) { 37 HeuristicLab.Hive.Experiment.Properties.Settings.Default.HiveServerIp = urlTextBox.Text;38 36 if (!savePasswordCheckbox.Checked) { 39 37 // make sure we don't save username or password -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/HiveClient.cs
r4424 r4755 28 28 using HeuristicLab.Hive.Contracts.Interfaces; 29 29 using HeuristicLab.Hive.Contracts.ResponseObjects; 30 using HeuristicLab.Common; 30 31 31 32 namespace HeuristicLab.Hive.Experiment { … … 85 86 this.log = new Log(); 86 87 } 87 88 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 89 HiveClient clone = (HiveClient)base.Clone(cloner); 90 clone.log = (ILog)cloner.Clone(this.log); 91 clone.hiveExperiments = (HiveExperimentList)cloner.Clone(this.hiveExperiments); 92 return clone; 88 protected HiveClient(HiveClient original, Cloner cloner) 89 : base(original, cloner) { 90 this.log = cloner.Clone(original.Log); 91 this.HiveExperiments = cloner.Clone(original.HiveExperiments); 92 } 93 public override IDeepCloneable Clone(Cloner cloner) { 94 return new HiveClient(this, cloner); 93 95 } 94 96 … … 146 148 if (handler != null) handler(this, EventArgs.Empty); 147 149 } 148 150 149 151 void hiveExperiments_ItemsRemoved(object sender, Collections.CollectionItemsChangedEventArgs<Collections.IndexedItem<HiveExperiment>> e) { 150 152 if (!currentlyUpdating) { -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/HiveExperiment.cs
r4750 r4755 44 44 private System.Timers.Timer timer; 45 45 46 private JobResultPoller jobResultPoller; 47 private Guid? rootJobId; 48 private DateTime lastUpdateTime; 49 50 #region Properties 46 51 private Guid hiveExperimentId; 47 52 public Guid HiveExperimentId { … … 67 72 get { return log; } 68 73 } 69 70 private DateTime lastUpdateTime; 71 74 72 75 private string resourceIds; 73 76 public string ResourceIds { … … 80 83 } 81 84 } 82 83 private Guid? rootJobId; 84 85 85 86 private bool isPollingResults; 86 87 public bool IsPollingResults { … … 109 110 get { return progress; } 110 111 } 111 112 private JobResultPoller jobResultPoller; 112 #endregion 113 113 114 114 public HiveExperiment() … … 118 118 InitTimer(); 119 119 } 120 121 120 public HiveExperiment(HiveExperimentDto hiveExperimentDto) 122 121 : this() { 123 122 UpdateFromDto(hiveExperimentDto); 123 } 124 protected HiveExperiment(HiveExperiment original, Cloner cloner) 125 : base(original, cloner) { 126 this.ResourceIds = original.resourceIds; 127 this.ExecutionState = original.executionState; 128 this.ExecutionTime = original.executionTime; 129 this.log = cloner.Clone(log); 130 this.lastUpdateTime = original.lastUpdateTime; 131 this.rootJobId = original.rootJobId; 132 } 133 public override IDeepCloneable Clone(Cloner cloner) { 134 return new HiveExperiment(this, cloner); 124 135 } 125 136 … … 140 151 RootJobId = this.rootJobId 141 152 }; 142 }143 144 public override IDeepCloneable Clone(Cloner cloner) {145 LogMessage("I am beeing cloned");146 HiveExperiment clone = (HiveExperiment)base.Clone(cloner);147 clone.resourceIds = this.resourceIds;148 clone.executionState = this.executionState;149 clone.executionTime = this.executionTime;150 clone.log = (ILog)cloner.Clone(log);151 clone.lastUpdateTime = this.lastUpdateTime;152 clone.rootJobId = this.rootJobId;153 return clone;154 153 } 155 154 … … 310 309 public void Stop() { 311 310 using (Disposable<IClientFacade> service = ServiceLocator.Instance.StreamedClientFacadePool.GetService()) { 312 foreach (HiveJob hj in HiveJob.GetAllHiveJobs()) {311 foreach (HiveJob hj in HiveJob.GetAllHiveJobs()) { 313 312 service.Obj.AbortJob(hj.JobDto.Id); 314 313 } … … 591 590 childHiveJob.JobDto = allSerializedJobs[jobResult.Id].JobInfo; 592 591 allSerializedJobs.Remove(jobResult.Id); // reduce memory footprint 593 if (jobCount % 10 == 0) GC.Collect(); // this is needed or otherwise HL takes over the system when the number of jobs is high592 if (jobCount % 10 == 0) GC.Collect(); // this is needed or otherwise HL takes over the system when the number of jobs is high 594 593 LoadChildResults(service, childHiveJob, allResults, allSerializedJobs, progress, totalJobCount, ref jobCount); 595 594 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/HiveExperimentList.cs
r4424 r4755 23 23 using HeuristicLab.Core; 24 24 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 25 using HeuristicLab.Common; 25 26 26 27 namespace HeuristicLab.Hive.Experiment { … … 32 33 public HiveExperimentList(IEnumerable<HiveExperiment> collection) : base(collection) { } 33 34 34 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 35 HiveExperiment clone = (HiveExperiment)base.Clone(cloner); 36 return clone; 35 [StorableConstructor] 36 protected HiveExperimentList(bool deserializing) : base(deserializing) { } 37 protected HiveExperimentList(HiveExperimentList original, Cloner cloner) 38 : base(original, cloner) { 39 } 40 public override IDeepCloneable Clone(Cloner cloner) { 41 return new HiveExperimentList(this, cloner); 37 42 } 38 43 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/HiveJob.cs
r4750 r4755 119 119 syncJobsWithOptimizers = true; 120 120 } 121 122 121 public HiveJob(JobDto jobDto) 123 122 : this() { 124 123 this.JobDto = jobDto; 125 124 } 126 127 125 public HiveJob(JobResult jobResult) 128 126 : this() { 129 127 UpdateFromJobResult(jobResult); 130 128 } 131 132 129 public HiveJob(OptimizerJob optimizerJob, bool autoCreateChildHiveJobs) 133 130 : this() { … … 136 133 this.syncJobsWithOptimizers = true; 137 134 } 138 139 135 public HiveJob(IOptimizer optimizer) 140 136 : this() { 141 137 this.Job = new OptimizerJob(optimizer); 142 138 } 143 144 139 public HiveJob(SerializedJob serializedJob, bool autoCreateChildHiveJobs) 145 140 : this() { … … 148 143 this.Job = SerializedJob.Deserialize<OptimizerJob>(serializedJob.SerializedJobData); 149 144 this.syncJobsWithOptimizers = true; 145 } 146 [StorableConstructor] 147 protected HiveJob(bool deserializing) : base(deserializing) { } 148 protected HiveJob(HiveJob original, Cloner cloner) 149 : base(original, cloner) { 150 this.JobDto = cloner.Clone(original.jobDto); 151 this.Job = cloner.Clone(original.job); 152 } 153 public override IDeepCloneable Clone(Cloner cloner) { 154 return new HiveJob(this, cloner); 150 155 } 151 156 … … 213 218 } 214 219 } 215 220 216 221 void batchRun_AlgorithmChanged(object sender, EventArgs e) { 217 222 if (syncJobsWithOptimizers) { … … 226 231 } 227 232 } 228 233 229 234 void Job_ToStringChanged(object sender, EventArgs e) { 230 235 this.OnToStringChanged(); … … 484 489 } 485 490 486 public override IDeepCloneable Clone(Cloner cloner) {487 LogMessage("I am beeing cloned");488 HiveJob clone = (HiveJob)base.Clone(cloner);489 clone.jobDto = (JobDto)cloner.Clone(this.jobDto);490 clone.job = (OptimizerJob)cloner.Clone(this.job);491 return clone;492 }493 494 491 /// <summary> 495 492 /// Returns a list of HiveJobs including this and all its child-jobs recursively -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/HiveJobList.cs
r4750 r4755 23 23 using HeuristicLab.Core; 24 24 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 25 using HeuristicLab.Common; 25 26 26 27 namespace HeuristicLab.Hive.Experiment { … … 32 33 public HiveJobList(IEnumerable<HiveJob> collection) : base(collection) { } 33 34 34 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 35 HiveJobList clone = (HiveJobList)base.Clone(cloner); 36 return clone; 35 [StorableConstructor] 36 protected HiveJobList(bool deserializing) : base(deserializing) { } 37 protected HiveJobList(HiveJobList original, Cloner cloner) 38 : base(original, cloner) { 39 } 40 public override IDeepCloneable Clone(Cloner cloner) { 41 return new HiveJobList(this, cloner); 37 42 } 38 43 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/Jobs/JobList.cs
r4424 r4755 24 24 using HeuristicLab.Hive.JobBase; 25 25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 26 using HeuristicLab.Common; 26 27 27 28 namespace HeuristicLab.Hive.Experiment.Jobs { … … 33 34 public JobList(IEnumerable<IJob> collection) : base(collection) { } 34 35 35 public override Common.IDeepCloneable Clone(Common.Cloner cloner) { 36 HiveJobList clone = (HiveJobList)base.Clone(cloner); 37 return clone; 36 [StorableConstructor] 37 protected JobList(bool deserializing) : base(deserializing) { } 38 protected JobList(JobList original, Cloner cloner) 39 : base(original, cloner) { 40 } 41 public override IDeepCloneable Clone(Cloner cloner) { 42 return new JobList(this, cloner); 38 43 } 39 44 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/Jobs/OptimizerJob.cs
r4750 r4755 31 31 [Item("Optimizer Job", "Represents Job which executes a IOptimizer object.")] 32 32 [StorableClass] 33 public class OptimizerJob : IJob {33 public class OptimizerJob : DeepCloneable, IJob { 34 34 [Storable] 35 35 protected IOptimizer optimizer; … … 82 82 this.log = new Log(); 83 83 } 84 85 84 public OptimizerJob(IOptimizer optimizer) 86 85 : this() { … … 95 94 } 96 95 } 97 96 [StorableConstructor] 97 protected OptimizerJob(bool deserializing) { } 98 protected OptimizerJob(OptimizerJob original, Cloner cloner) 99 : base(original, cloner) { 100 this.Optimizer = cloner.Clone(original.Optimizer); 101 this.log = cloner.Clone(original.Log); 102 this.ComputeInParallel = original.ComputeInParallel; 103 this.IndexInParentOptimizerList = original.IndexInParentOptimizerList; 104 this.CollectChildJobs = original.CollectChildJobs; 105 this.RegisterEvents(); 106 } 107 public override IDeepCloneable Clone(Cloner cloner) { 108 return new OptimizerJob(this, cloner); 109 } 110 public object Clone() { 111 return Clone(new Cloner()); 112 } 98 113 [StorableHook(HookType.AfterDeserialization)] 99 114 protected virtual void AfterDeserialization() { … … 267 282 protected virtual void OnDescriptionChanged() { 268 283 var handler = DescriptionChanged; 269 if (handler != null) handler(this, EventArgs.Empty);284 if (handler != null) handler(this, EventArgs.Empty); 270 285 } 271 286 public event EventHandler ItemImageChanged; … … 307 322 public Version ItemVersion { 308 323 get { return optimizer.ItemVersion; } 309 }310 311 #endregion312 313 #region IDeepCloneable Members314 315 public Common.IDeepCloneable Clone(Cloner cloner) {316 OptimizerJob clone = (OptimizerJob)Activator.CreateInstance(this.GetType());317 cloner.RegisterClonedObject(this, clone);318 clone.Optimizer = (IOptimizer)cloner.Clone(this.Optimizer);319 clone.log = (ILog)cloner.Clone(this.Log);320 clone.ComputeInParallel = this.ComputeInParallel;321 clone.IndexInParentOptimizerList = this.IndexInParentOptimizerList;322 clone.CollectChildJobs = this.CollectChildJobs;323 clone.RegisterEvents();324 return clone;325 }326 327 #endregion328 329 #region ICloneable Members330 331 public object Clone() {332 return Clone(new Cloner());333 324 } 334 325 -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/Properties/Settings.Designer.cs
r4305 r4755 26 26 [global::System.Configuration.UserScopedSettingAttribute()] 27 27 [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 28 [global::System.Configuration.DefaultSettingValueAttribute(" MyGroup")]28 [global::System.Configuration.DefaultSettingValueAttribute("HEAL")] 29 29 public string ResourceIds { 30 30 get { … … 38 38 [global::System.Configuration.UserScopedSettingAttribute()] 39 39 [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 40 [global::System.Configuration.DefaultSettingValueAttribute("localhost")] 41 public string HiveServerIp { 42 get { 43 return ((string)(this["HiveServerIp"])); 44 } 45 set { 46 this["HiveServerIp"] = value; 47 } 48 } 49 50 [global::System.Configuration.UserScopedSettingAttribute()] 51 [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 52 [global::System.Configuration.DefaultSettingValueAttribute("cneumueller")] 40 [global::System.Configuration.DefaultSettingValueAttribute("cneumuel")] 53 41 public string HiveUsername { 54 42 get { … … 62 50 [global::System.Configuration.UserScopedSettingAttribute()] 63 51 [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 64 [global::System.Configuration.DefaultSettingValueAttribute(" cneumueller")]52 [global::System.Configuration.DefaultSettingValueAttribute("")] 65 53 public string HivePassword { 66 54 get { … … 71 59 } 72 60 } 73 74 [global::System.Configuration.UserScopedSettingAttribute()]75 [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]76 [global::System.Configuration.DefaultSettingValueAttribute("9000")]77 public string HiveServerPort {78 get {79 return ((string)(this["HiveServerPort"]));80 }81 set {82 this["HiveServerPort"] = value;83 }84 }85 61 } 86 62 } -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/Properties/Settings.settings
r4305 r4755 4 4 <Settings> 5 5 <Setting Name="ResourceIds" Type="System.String" Scope="User"> 6 <Value Profile="(Default)">MyGroup</Value> 7 </Setting> 8 <Setting Name="HiveServerIp" Type="System.String" Scope="User"> 9 <Value Profile="(Default)">localhost</Value> 6 <Value Profile="(Default)">HEAL</Value> 10 7 </Setting> 11 8 <Setting Name="HiveUsername" Type="System.String" Scope="User"> 12 <Value Profile="(Default)">cneumuel ler</Value>9 <Value Profile="(Default)">cneumuel</Value> 13 10 </Setting> 14 11 <Setting Name="HivePassword" Type="System.String" Scope="User"> 15 <Value Profile="(Default)">cneumueller</Value> 16 </Setting> 17 <Setting Name="HiveServerPort" Type="System.String" Scope="User"> 18 <Value Profile="(Default)">9000</Value> 12 <Value Profile="(Default)" /> 19 13 </Setting> 20 14 </Settings> -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/ServiceLocator.cs
r4750 r4755 45 45 internal void Default_SettingChanging(object sender, System.Configuration.SettingChangingEventArgs e) { 46 46 if (clientFacadePool != null) { 47 clientFacadePool.HostAddress = Settings.Default.HiveServerIp;48 47 clientFacadePool.Username = Settings.Default.HiveUsername; 49 48 clientFacadePool.Password = Settings.Default.HivePassword; 50 49 } 51 50 if (streamedClientFacadePool != null) { 52 streamedClientFacadePool.HostAddress = Settings.Default.HiveServerIp;53 51 streamedClientFacadePool.Username = Settings.Default.HiveUsername; 54 52 streamedClientFacadePool.Password = Settings.Default.HivePassword; … … 59 57 get { 60 58 if (clientFacadePool == null) { 61 clientFacadePool = new WcfServicePool<IClientFacade>(Settings.Default.Hive ServerIp, Settings.Default.HiveUsername, Settings.Default.HivePassword, "ClientHttpEndpoint");59 clientFacadePool = new WcfServicePool<IClientFacade>(Settings.Default.HiveUsername, Settings.Default.HivePassword, "ClientHttpEndpoint"); 62 60 } 63 61 return clientFacadePool; … … 68 66 get { 69 67 if (streamedClientFacadePool == null) { 70 streamedClientFacadePool = new WcfServicePool<IClientFacade>(Settings.Default.Hive ServerIp, Settings.Default.HiveUsername, Settings.Default.HivePassword, "ClientTcpStreamedEndpoint");68 streamedClientFacadePool = new WcfServicePool<IClientFacade>(Settings.Default.HiveUsername, Settings.Default.HivePassword, "ClientTcpStreamedEndpoint"); 71 69 } 72 70 return streamedClientFacadePool; -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Experiment/3.3/app.config
r4710 r4755 9 9 <HeuristicLab.Hive.Experiment.Properties.Settings> 10 10 <setting name="ResourceIds" serializeAs="String"> 11 <value>MyGroup</value> 12 </setting> 13 <setting name="HiveServerIp" serializeAs="String"> 14 <value>localhost</value> 11 <value>HEAL</value> 15 12 </setting> 16 13 <setting name="HiveUsername" serializeAs="String"> 17 <value>cneumuel ler</value>14 <value>cneumuel</value> 18 15 </setting> 19 16 <setting name="HivePassword" serializeAs="String"> 20 <value>cneumueller</value> 21 </setting> 22 <setting name="HiveServerPort" serializeAs="String"> 23 <value>9000</value> 17 <value /> 24 18 </setting> 25 19 </HeuristicLab.Hive.Experiment.Properties.Settings> -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HeuristicLab.Hive.Server.Core/3.3/Facades/ClientFacade.cs
r4424 r4755 42 42 43 43 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 44 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]44 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 45 45 public ResponseObject<JobDto> AddJob(SerializedJob job) { 46 46 using (contextFactory.GetContext()) { … … 50 50 51 51 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 52 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]52 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 53 53 public ResponseObject<JobDto> AddJobWithGroupStrings(SerializedJob job, IEnumerable<string> resources) { 54 54 using (contextFactory.GetContext()) { … … 58 58 59 59 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 60 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]60 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 61 61 public Response RequestSnapshot(Guid jobId) { 62 62 using (contextFactory.GetContext()) { … … 67 67 68 68 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 69 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]69 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 70 70 public ResponseObject<SerializedJob> GetLastSerializedResult(Guid jobId) { 71 71 using (contextFactory.GetContext(false)) { … … 76 76 77 77 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 78 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]78 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 79 79 public ResponseObject<SerializedJob> GetSnapshotResult(Guid jobId) { 80 80 using (contextFactory.GetContext(false)) { … … 85 85 86 86 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 87 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]87 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 88 88 public ResponseObject<JobDto> GetJobById(Guid jobId) { 89 89 using (contextFactory.GetContext(false)) { … … 94 94 95 95 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 96 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]96 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 97 97 public Response AbortJob(Guid jobId) { 98 98 using (contextFactory.GetContext()) { … … 103 103 104 104 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 105 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]105 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 106 106 public ResponseObject<JobResultList> GetJobResults(IEnumerable<Guid> jobIds) { 107 107 using (contextFactory.GetContext(false)) { … … 112 112 113 113 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 114 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]114 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 115 115 public ResponseObject<JobResultList> GetChildJobResults(Guid? parentJobId, bool recursive, bool includeParent) { 116 116 using (contextFactory.GetContext(false)) { … … 124 124 125 125 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 126 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]126 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 127 127 public ResponseObject<HiveExperimentDtoList> GetHiveExperiments() { 128 128 using (contextFactory.GetContext(false)) { … … 132 132 133 133 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 134 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]134 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 135 135 public ResponseObject<HiveExperimentDto> UpdateHiveExperiment(HiveExperimentDto hiveExperimentDto) { 136 136 using (contextFactory.GetContext()) { … … 145 145 146 146 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 147 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]147 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 148 148 public Response DeleteHiveExperiment(Guid hiveExperimentId) { 149 149 using (contextFactory.GetContext()) { … … 157 157 158 158 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.Administrator)] 159 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles. Client)]159 [PrincipalPermission(SecurityAction.Demand, Role = HiveRoles.User)] 160 160 public ResponseObject<JobDto> AddChildJob(Guid parentJobId, SerializedJob serializedJob) { 161 161 using (contextFactory.GetContext()) { -
branches/HeuristicLab.Hive/sources/HeuristicLab.Hive/HiveWeb/App_Code/HiveServerModule.cs
r4751 r4755 24 24 public void Dispose() { 25 25 lock (locker) { 26 lifecycleManager.Stop();26 if(lifecycleManager != null) lifecycleManager.Stop(); 27 27 } 28 28 }
Note: See TracChangeset
for help on using the changeset viewer.