public Option WithNoValidator(bool valueOptional=false, int maximumOccurrence=1) { ThrowErrorWhenReadOnly(); //IOptionValueValidator optionValueValidator = this.OptionValueValidator; //try //{ this.OptionValueValidator = new NullOptionValueValidator() { MaximumOccurrence = maximumOccurrence, ValueOptional = valueOptional }; // ValidationFactory.Validate(this); //} //catch //{ // this.OptionValueValidator = optionValueValidator; // throw; //} return this; }
public Option WithStaticValidator(bool valueOptional,params string[] values) { ThrowErrorWhenReadOnly(); //IOptionValueValidator optionValueValidator = this.OptionValueValidator; //try //{ this.OptionValueValidator = new StaticOptionValueValidator(values) { ValueOptional = valueOptional }; // ValidationFactory.Validate(this); //} //catch //{ // this.OptionValueValidator = optionValueValidator; // throw; //} return this; }
public Option WithRegexValidator(string pattern, bool valueOptional=false, int maximumOccurrence=1) { ThrowErrorWhenReadOnly(); //IOptionValueValidator optionValueValidator = this.OptionValueValidator; //try //{ this.OptionValueValidator = new RegularExpressionOptionValueValidator(pattern) { MaximumOccurrence = maximumOccurrence, ValueOptional = valueOptional }; // ValidationFactory.Validate(this); //} //catch //{ // this.OptionValueValidator = optionValueValidator; // throw; //} return this; }