public ISequenceDataContainer Clone() { SequenceParameterInfo parameterInfo = new SequenceParameterInfo() { CreateTime = DateTime.Now, Hash = string.Empty, Modified = false, ModifiedTime = DateTime.Now, Path = string.Empty, Version = this.Info.Version }; VariableInitValueCollection initValueCollection = new VariableInitValueCollection(); ModuleUtils.CloneDataCollection(this.VariableValues, initValueCollection); SequenceParameterCollection sequenceParameterCollection = new SequenceParameterCollection(); ModuleUtils.CloneDataCollection(this.SequenceParameters, sequenceParameterCollection); SequenceGroupParameter parameter = new SequenceGroupParameter() { Info = parameterInfo, VariableValues = initValueCollection, SetUpParameters = this.SetUpParameters.Clone() as ISequenceParameter, SequenceParameters = sequenceParameterCollection, TearDownParameters = this.TearDownParameters.Clone() as ISequenceParameter, }; return parameter; }
public void RefreshSignature() { if (!Info.Modified) { return; } this.Info.ModifiedTime = DateTime.Now; this.Info.Modified = false; this.Info.Hash = this.GetSequenceGroupSignature(); if (null != Parameters) { SequenceGroupParameter sequenceGroupParameter = Parameters as SequenceGroupParameter; sequenceGroupParameter.RefreshSignature(this); Parameters.Info.Hash = this.Info.Hash; } }