Example #1
0
        /// <summary>
        /// Удаляет значения слова из словаря
        /// </summary>
        /// <param name="parameters">Первый элемент - слово, последующие - значения, которые необходимо удалить</param>
        /// <exception cref="ArgumentNullException">Значение параметров Null</exception>
        /// <returns>True, если значения слова были удалены</returns>
        public string Execute(IEnumerable <string> parameters)
        {
            if (parameters == null)
            {
                throw new ArgumentNullException(nameof(parameters));
            }

            var paramsArray = parameters as string[] ?? parameters.ToArray();

            if (!paramsArray.Any())
            {
                return(Default.WordIsNotSet);
            }

            if (paramsArray.Length == 1)
            {
                return(Default.MeansAreNotSet);
            }

            bool deleted = _vocabulary.Delete(paramsArray[0], paramsArray.Skip(1));

            return(deleted ? Default.MeansAreDeleted : Default.NoSuchWordOrMean);
        }