Changeset 4665 for branches/CloningRefactoring/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionComparisonConstraint.cs
- Timestamp:
- 10/29/10 16:58:29 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/CloningRefactoring/HeuristicLab.Optimization/3.3/RunCollectionConstraints/RunCollectionComparisonConstraint.cs
r4157 r4665 33 33 [StorableConstructor] 34 34 protected RunCollectionComparisonConstraint(bool deserializing) : base(deserializing) { } 35 36 protected RunCollectionComparisonConstraint(RunCollectionComparisonConstraint original, Cloner cloner) 37 : base(original, cloner) { 38 IDeepCloneable constraintDataDeepCloneable = original.ConstraintData as IDeepCloneable; 39 ICloneable constraintDataCloneable = original.ConstraintData as ICloneable; 40 if (constraintDataDeepCloneable != null) 41 ConstraintData = (IStringConvertibleValue)cloner.Clone(constraintDataDeepCloneable); 42 else if (constraintDataCloneable != null) 43 ConstraintData = (IStringConvertibleValue)constraintDataCloneable.Clone(); 44 else 45 ConstraintData = original.ConstraintData; 46 47 ConstraintOperation = original.ConstraintOperation; 48 ConstraintColumn = original.constraintColumn; 49 } 50 public override IDeepCloneable Clone(Cloner cloner) { 51 return new RunCollectionComparisonConstraint(this, cloner); 52 } 35 53 36 54 public RunCollectionComparisonConstraint() : base() { } … … 128 146 return s; 129 147 } 130 131 public override IDeepCloneable Clone(HeuristicLab.Common.Cloner cloner) {132 RunCollectionComparisonConstraint clone = (RunCollectionComparisonConstraint)base.Clone(cloner);133 134 IItem constraintDataItem = this.ConstraintData as IItem;135 ICloneable constraintDataCloneable = this.ConstraintData as ICloneable;136 if (constraintDataItem != null)137 clone.ConstraintData = (IStringConvertibleValue)cloner.Clone(constraintDataItem);138 else if (constraintDataCloneable != null)139 clone.ConstraintData = (IStringConvertibleValue)constraintDataCloneable.Clone();140 else141 clone.ConstraintData = this.ConstraintData;142 143 clone.ConstraintOperation = this.ConstraintOperation;144 clone.constraintColumn = this.constraintColumn;145 146 return clone;147 }148 148 } 149 149 }
Note: See TracChangeset
for help on using the changeset viewer.