/// <summary> /// Many SVN properties have values that are lists of new-line separated strings. /// This method tests if a list property has a given value as an element. /// </summary> public static bool HasListPropertyValue(this SvnCommand svnCommand, AbsolutePath path, string propertyName, string value) { var propertyValues = svnCommand.GetPropertyValues(path, propertyName); var output = propertyValues.Contains(value); return(output); }
/// <summary> /// Many SVN properties have values that are sets of new-line separated strings. /// This method adds a value to that set. /// This method will not add the same value twice, as it checks if the value is already present in the set of values. /// </summary> public static void AddPropertyValue(this SvnCommand svnCommand, AbsolutePath path, string propertyName, string value) { var values = new List <string>(svnCommand.GetPropertyValues(path, propertyName)); // Only add the value once. if (!values.Contains(value)) { values.Add(value); svnCommand.SetPropertyValues(path, propertyName, values.ToArray()); } }
/// <summary> /// The SVN ignore property value is a set of new-line separated strings. /// Gets the set of values of the SVN ignore property. /// </summary> public static string[] GetSvnIgnoreValues(this SvnCommand svnCommand, AbsolutePath path) { var output = svnCommand.GetPropertyValues(path, SvnCommand.SvnIgnorePropertyName); return(output); }