in code/src/CoreTemplateStudio/CoreTemplateStudio.Core/Naming/ItemNameService.cs [15:59]
public ItemNameService(ItemNameValidationConfig config, Func<IEnumerable<string>> getExisitingNames)
{
if (config == null)
{
_validators.Add(new EmptyNameValidator());
_validators.Add(new ExistingNamesValidator(getExisitingNames));
_validators.Add(new DefaultNamesValidator());
_validators.Add(new RegExValidator(
new RegExConfig()
{
Name = "badFormat",
Pattern = "^((?!\\d)\\w+)$",
}));
}
else
{
if (config.ValidateEmptyNames)
{
_validators.Add(new EmptyNameValidator());
}
if (config.ValidateExistingNames)
{
_validators.Add(new ExistingNamesValidator(getExisitingNames));
}
if (config.ValidateDefaultNames)
{
_validators.Add(new DefaultNamesValidator());
}
if (config.Regexs != null)
{
foreach (var regexValidation in config.Regexs)
{
_validators.Add(new RegExValidator(regexValidation));
}
}
if (config.ReservedNames != null && config.ReservedNames.Length > 0)
{
_validators.Add(new ReservedNamesValidator(config.ReservedNames));
}
}
}