Changeset 4678 for branches/CloningRefactoring/HeuristicLab.Problems.DataAnalysis/3.3/DataAnalysisSolution.cs
- Timestamp:
- 10/29/10 19:26:56 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/CloningRefactoring/HeuristicLab.Problems.DataAnalysis/3.3/DataAnalysisSolution.cs
r4451 r4678 37 37 public string Filename { get; set; } 38 38 #endregion 39 39 40 [StorableConstructor] 41 protected DataAnalysisSolution(bool deserializing) : base(deserializing) { } 42 protected DataAnalysisSolution(DataAnalysisSolution original, Cloner cloner) 43 : base(original, cloner) { 44 problemData = (DataAnalysisProblemData)cloner.Clone(original.problemData); 45 model = (IDataAnalysisModel)cloner.Clone(original.model); 46 lowerEstimationLimit = original.lowerEstimationLimit; 47 upperEstimationLimit = original.upperEstimationLimit; 48 AfterDeserialization(); 49 } 40 50 protected DataAnalysisSolution() 41 51 : base() { } … … 46 56 this.lowerEstimationLimit = lowerEstimationLimit; 47 57 this.upperEstimationLimit = upperEstimationLimit; 48 Initialize();58 AfterDeserialization(); 49 59 } 50 60 51 [StorableConstructor]52 private DataAnalysisSolution(bool deserializing) : base(deserializing) { }53 61 [StorableHook(HookType.AfterDeserialization)] 54 private void Initialize() {62 private void AfterDeserialization() { 55 63 if (problemData != null) 56 64 RegisterProblemDataEvents(); … … 140 148 public event EventHandler ModelChanged; 141 149 protected virtual void OnModelChanged() { 142 EventHandler handler= ModelChanged;143 if ( handler!= null)144 handler(this, EventArgs.Empty);150 EventHandler listeners = ModelChanged; 151 if (listeners != null) 152 listeners(this, EventArgs.Empty); 145 153 } 146 154 … … 153 161 #endregion 154 162 155 public override IDeepCloneable Clone(Cloner cloner) {156 DataAnalysisSolution clone = (DataAnalysisSolution)base.Clone(cloner);157 clone.problemData = (DataAnalysisProblemData)cloner.Clone(problemData);158 clone.model = (IDataAnalysisModel)cloner.Clone(model);159 clone.lowerEstimationLimit = lowerEstimationLimit;160 clone.upperEstimationLimit = upperEstimationLimit;161 clone.Initialize();162 163 return clone;164 }165 163 } 166 164 }
Note: See TracChangeset
for help on using the changeset viewer.