internal void FromGlobalVariable(string value) { if (!string.IsNullOrEmpty(value)) { if (value.Contains(".")) { string[] array = value.Split(".".ToCharArray()); if (array.Length != 4) { throw new ApplicationException("Invalid versioning style \"" + value + "\"."); } this.Major = BuildVersionIncrementor.Instance.Incrementors[array[0]]; this.Minor = BuildVersionIncrementor.Instance.Incrementors[array[1]]; this.Build = BuildVersionIncrementor.Instance.Incrementors[array[2]]; this.Revision = BuildVersionIncrementor.Instance.Incrementors[array[3]]; } else { OLD_BuildVersioningStyleType oLD_BuildVersioningStyleType = (OLD_BuildVersioningStyleType)Enum.Parse(typeof(OLD_BuildVersioningStyleType), value); OLD_IncrementStyle major = OLD_IncrementStyle.None; OLD_IncrementStyle minor = OLD_IncrementStyle.None; OLD_IncrementStyle revision = OLD_IncrementStyle.None; OLD_IncrementStyle build; switch (oLD_BuildVersioningStyleType) { case OLD_BuildVersioningStyleType.DeltaBaseDate: build = OLD_IncrementStyle.DeltaBaseDate; revision = OLD_IncrementStyle.TimeStamp; break; case OLD_BuildVersioningStyleType.YearDayOfYear_Timestamp: build = OLD_IncrementStyle.YearDayOfYear; revision = OLD_IncrementStyle.TimeStamp; break; case OLD_BuildVersioningStyleType.DeltaBaseYear: build = OLD_IncrementStyle.DeltaBaseYearDayOfYear; revision = OLD_IncrementStyle.TimeStamp; break; case OLD_BuildVersioningStyleType.YearDayOfYear_AutoIncrement: build = OLD_IncrementStyle.YearDayOfYear; revision = OLD_IncrementStyle.Increment; break; case OLD_BuildVersioningStyleType.AutoIncrementBuildVersion: build = OLD_IncrementStyle.Increment; break; default: throw new ApplicationException("Unknown (old) versioning type: " + oLD_BuildVersioningStyleType.ToString()); } this.FromOldIncrementStyle(major, minor, build, revision); } } else { this.Major = (this.Minor = (this.Build = (this.Revision = null))); } }
/// <summary> /// Initializes this instances based on a global variable value. /// </summary> /// <param name="value">The value.</param> internal void FromGlobalVariable(string value) { if (!string.IsNullOrEmpty(value)) { if (value.Contains(".")) { // Assuming new enum string[] styles = value.Split(".".ToCharArray()); if (styles.Length == 4) { Major = BuildVersionIncrementor.Instance.Incrementors[styles[0]]; Minor = BuildVersionIncrementor.Instance.Incrementors[styles[1]]; Build = BuildVersionIncrementor.Instance.Incrementors[styles[2]]; Revision = BuildVersionIncrementor.Instance.Incrementors[styles[3]]; /*OLD_IncrementStyle major = (OLD_IncrementStyle)Enum.Parse(typeof(OLD_IncrementStyle), styles[0]); * OLD_IncrementStyle minor = (OLD_IncrementStyle)Enum.Parse(typeof(OLD_IncrementStyle), styles[1]); * OLD_IncrementStyle build = (OLD_IncrementStyle)Enum.Parse(typeof(OLD_IncrementStyle), styles[2]); * OLD_IncrementStyle revision = (OLD_IncrementStyle)Enum.Parse(typeof(OLD_IncrementStyle), styles[3]); * * FromOldIncrementStyle(major, minor, build, revision);*/ } else { throw (new ApplicationException("Invalid versioning style \"" + value + "\".")); } } else { // Old enum OLD_BuildVersioningStyleType oldStyle = (OLD_BuildVersioningStyleType)Enum.Parse(typeof(OLD_BuildVersioningStyleType), value); OLD_IncrementStyle major = OLD_IncrementStyle.None; OLD_IncrementStyle minor = OLD_IncrementStyle.None; OLD_IncrementStyle build = OLD_IncrementStyle.None; OLD_IncrementStyle revision = OLD_IncrementStyle.None; switch (oldStyle) { case OLD_BuildVersioningStyleType.AutoIncrementBuildVersion: build = OLD_IncrementStyle.Increment; break; case OLD_BuildVersioningStyleType.DeltaBaseDate: build = OLD_IncrementStyle.DeltaBaseDate; revision = OLD_IncrementStyle.TimeStamp; break; case OLD_BuildVersioningStyleType.DeltaBaseYear: build = OLD_IncrementStyle.DeltaBaseYearDayOfYear; revision = OLD_IncrementStyle.TimeStamp; break; case OLD_BuildVersioningStyleType.YearDayOfYear_AutoIncrement: build = OLD_IncrementStyle.YearDayOfYear; revision = OLD_IncrementStyle.Increment; break; case OLD_BuildVersioningStyleType.YearDayOfYear_Timestamp: build = OLD_IncrementStyle.YearDayOfYear; revision = OLD_IncrementStyle.TimeStamp; break; default: throw (new ApplicationException("Unknown (old) versioning type: " + oldStyle.ToString())); } FromOldIncrementStyle(major, minor, build, revision); } } else { Major = Minor = Build = Revision = null; } }