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;
        }
Exemple #2
0
 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;
     }
 }