Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
10/29/10 19:36:48 (13 years ago)
Author:
abeham
Message:

#922

  • Refactored HeuristicLab.Problems.Knapsack
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/CloningRefactoring/HeuristicLab.Problems.Knapsack/3.3/KnapsackProblem.cs

    r4513 r4680  
    141141    [StorableConstructor]
    142142    private KnapsackProblem(bool deserializing) : base(deserializing) { }
     143    private KnapsackProblem(KnapsackProblem original, Cloner cloner)
     144      : base(original, cloner) {
     145      this.operators = original.operators.Select(x => (IOperator)cloner.Clone(x)).ToList();
     146      AttachEventHandlers();
     147    }
     148    public override IDeepCloneable Clone(Cloner cloner) {
     149      return new KnapsackProblem(this, cloner);
     150    }
    143151    public KnapsackProblem()
    144152      : base() {
     
    167175    }
    168176
    169     public override IDeepCloneable Clone(Cloner cloner) {
    170       KnapsackProblem clone = (KnapsackProblem)base.Clone(cloner);
    171       clone.operators = operators.Select(x => (IOperator)cloner.Clone(x)).ToList();
    172       clone.AttachEventHandlers();
    173       return clone;
    174     }
    175 
    176177    #region Events
    177178    public event EventHandler SolutionCreatorChanged;
     
    257258    #region Helpers
    258259    [StorableHook(HookType.AfterDeserialization)]
    259     private void AfterDeserializationHook() {
     260    private void AfterDeserialization() {
    260261      // BackwardsCompatibility3.3
    261262      #region Backwards compatible code (remove with 3.4)
Note: See TracChangeset for help on using the changeset viewer.