@Override public MSimpleParameter build() { MPattern p = !Strings.isEmpty(pattern) ? MD.getMPattern(pattern) : null; List<Validator> validators = new ArrayList<>(); if(null != minLength || null != maxLength){ validators.add(new LengthValidator(minLength == null ? 0 : minLength, maxLength == null ? Integer.MAX_VALUE : maxLength)); } if(null != minValue){ validators.add(new MinValidator(minValue)); } if(null != maxValue){ validators.add(new MaxValidator(maxValue)); } if(null != p){ validators.add(new PatternValidator(p.getName(),p.getPattern())); } return new MSimpleParameter(name, title, summary, description, secret, (MSimpleType)type, required, defaultValue, minLength,maxLength,minValue,maxValue,p,validators.toArray(new Validator[validators.size()])); } }