Changeset 4682 for branches/CloningRefactoring/HeuristicLab.Problems.ExternalEvaluation/3.3/SolutionMessageBuilder.cs
- Timestamp:
- 10/29/10 19:47:39 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/CloningRefactoring/HeuristicLab.Problems.ExternalEvaluation/3.3/SolutionMessageBuilder.cs
r4643 r4682 50 50 [StorableConstructor] 51 51 protected SolutionMessageBuilder(bool deserializing) : base(deserializing) { } 52 [StorableHook(HookType.AfterDeserialization)] 53 private void AfterDeserialization() { 54 AttachEventHandlers(); 55 } 56 57 protected SolutionMessageBuilder(SolutionMessageBuilder original, Cloner cloner) 58 : base(original, cloner) { 59 convertersList = cloner.Clone(original.convertersList); 60 AttachEventHandlers(); 61 } 62 public override IDeepCloneable Clone(Cloner cloner) { 63 return new SolutionMessageBuilder(this, cloner); 64 } 52 65 public SolutionMessageBuilder() 53 66 : base() { … … 63 76 64 77 AttachEventHandlers(); 65 }66 67 public override IDeepCloneable Clone(Cloner cloner) {68 SolutionMessageBuilder clone = (SolutionMessageBuilder)base.Clone(cloner);69 clone.convertersList = (CheckedItemList<IItemToSolutionMessageConverter>)cloner.Clone(convertersList);70 clone.AttachEventHandlers();71 return clone;72 78 } 73 79 … … 87 93 } 88 94 89 [StorableHook(HookType.AfterDeserialization)]90 95 private void AttachEventHandlers() { 91 96 // BackwardsCompatibility3.3 92 97 #region Backwards compatible code, remove with 3.4 93 98 #pragma warning disable 0612 94 99 if (converters != null) { 95 100 if (convertersList == null) convertersList = new CheckedItemList<IItemToSolutionMessageConverter>(); … … 99 104 converters = null; 100 105 } 101 106 #pragma warning restore 0612 102 107 #endregion 103 108 convertersList.ItemsAdded += new CollectionItemsChangedEventHandler<IndexedItem<IItemToSolutionMessageConverter>>(convertersList_Changed);
Note: See TracChangeset
for help on using the changeset viewer.