Example #1
0
        public override SampleDataChangeMergeResult MergeWith(SampleDataChange newerChange, out SampleDataChange mergedChange)
        {
            if (this.Entity != newerChange.Entity)
            {
                mergedChange = (SampleDataChange)null;
                return(SampleDataChangeMergeResult.CouldNotMerge);
            }
            SamplePropertyDeleted samplePropertyDeleted = newerChange as SamplePropertyDeleted;

            if (samplePropertyDeleted != null)
            {
                mergedChange = (SampleDataChange)samplePropertyDeleted;
                return(SampleDataChangeMergeResult.MergedIntoOneUnit);
            }
            SamplePropertyRenamed samplePropertyRenamed = newerChange as SamplePropertyRenamed;

            if (samplePropertyRenamed != null)
            {
                string newName = samplePropertyRenamed.NewName;
                if (this.OldName == newName)
                {
                    mergedChange = (SampleDataChange)null;
                    return(SampleDataChangeMergeResult.MergedIntoNothing);
                }
                mergedChange = (SampleDataChange) new SamplePropertyRenamed(samplePropertyRenamed.SampleProperty, this.OldName)
                {
                    NewName = newName
                };
                return(SampleDataChangeMergeResult.MergedIntoOneUnit);
            }
            mergedChange = (SampleDataChange)null;
            return(SampleDataChangeMergeResult.CouldNotMerge);
        }
Example #2
0
        public override SampleDataChangeMergeResult MergeWith(SampleDataChange newerChange, out SampleDataChange mergedChange)
        {
            SamplePropertyTypeOrFormatChanged typeOrFormatChanged = newerChange as SamplePropertyTypeOrFormatChanged;

            if (typeOrFormatChanged != null)
            {
                if (this.SampleProperty.DeclaringSampleType != typeOrFormatChanged.SampleProperty.DeclaringSampleType || this.SampleProperty.Name != typeOrFormatChanged.SampleProperty.Name)
                {
                    mergedChange = (SampleDataChange)null;
                    return(SampleDataChangeMergeResult.CouldNotMerge);
                }
                SampleType newType = typeOrFormatChanged.NewType;
                if (this.OldType == typeOrFormatChanged.NewType && this.OldFormat == typeOrFormatChanged.NewFormat && this.OldFormatParameters == typeOrFormatChanged.NewFormatParameters)
                {
                    mergedChange = (SampleDataChange)null;
                    return(SampleDataChangeMergeResult.MergedIntoNothing);
                }
                mergedChange = (SampleDataChange) new SamplePropertyTypeOrFormatChanged(typeOrFormatChanged.SampleProperty, this.OldType, this.OldFormat, this.OldFormatParameters)
                {
                    NewType             = typeOrFormatChanged.NewType,
                    NewFormat           = typeOrFormatChanged.NewFormat,
                    NewFormatParameters = typeOrFormatChanged.NewFormatParameters
                };
                return(SampleDataChangeMergeResult.MergedIntoOneUnit);
            }
            if (this.Entity != newerChange.Entity)
            {
                mergedChange = (SampleDataChange)null;
                return(SampleDataChangeMergeResult.CouldNotMerge);
            }
            SamplePropertyDeleted samplePropertyDeleted = newerChange as SamplePropertyDeleted;

            if (samplePropertyDeleted != null)
            {
                mergedChange = (SampleDataChange)samplePropertyDeleted;
                return(SampleDataChangeMergeResult.MergedIntoOneUnit);
            }
            mergedChange = (SampleDataChange)null;
            return(SampleDataChangeMergeResult.CouldNotMerge);
        }