/** * @param minimum * @param maximum * @return a {@link RangeValidator} that validates if a value falls within a range */ public static <T extends Comparable<? super T> & Serializable> RangeValidator<T> range(T minimum, T maximum) { return new RangeValidator<>(minimum, maximum); }
/** * @param component * @param rangeValidator * @return */ public String rangeMessage(Component component, RangeValidator rangeValidator) { String minValue = rangeValidator.getMinimum().toString(); String maxValue = rangeValidator.getMaximum().toString(); return addToBuffer( component.getId(), "numrange|" + minValue + "-" + maxValue, escapeJavaScriptString(formatRangeMessage(component, "NumberValidator.range", minValue, maxValue))); }
maxMemory.add(RangeValidator.minimum(0)); form.add(maxMemory); TextField<Integer> maxTime = new TextField<Integer>("maxRenderingTime"); maxTime.add(RangeValidator.minimum(0)); form.add(maxTime); TextField<Integer> maxErrors = new TextField<Integer>("maxRenderingErrors"); maxErrors.add(RangeValidator.minimum(0)); form.add(maxErrors); maxBuffer.add(RangeValidator.minimum(0)); form.add(maxBuffer); maxRequestedDimensionValues.add(RangeValidator.minimum(0)); form.add(maxRequestedDimensionValues); watermarkUrlField)); TextField<Integer> transparency = new TextField<Integer>("watermark.transparency"); transparency.add(new RangeValidator<Integer>(0, 100)); form.add(transparency); form.add( TextField<Integer> pngCompressionField = new TextField<Integer>("png.compression", pngCompression, Integer.class); pngCompressionField.add(new RangeValidator<Integer>(0, 100)); form.add(pngCompressionField); TextField<Integer> jpegCompressionField = new TextField<Integer>("jpeg.compression", jpegCompression, Integer.class); jpegCompressionField.add(new RangeValidator<Integer>(0, 100));
@SuppressWarnings({"unchecked", "rawtypes"}) public NSGTimeoutPanel(final String id, final IModel<ServiceInfo> model) { super(id, model); PropertyModel<MetadataMap> metadata = new PropertyModel<>(model, "metadata"); MapModel timeoutModel = new MapModel(metadata, TimeoutCallback.TIMEOUT_CONFIG_KEY); if (timeoutModel.getObject() == null) { timeoutModel.setObject(TimeoutCallback.TIMEOUT_CONFIG_DEFAULT); } TextField<Integer> timeoutField = new TextField<>("timeoutSeconds", timeoutModel, Integer.class); timeoutField.setRequired(true); timeoutField.add(RangeValidator.minimum(0)); add(timeoutField); } }
RangeValidator<Double> percentageValidator = RangeValidator.range(0.0, 1.0); TextField<Double> memoryCapacity = new PercentageTextField("memoryCapacity"); memoryCapacity.add(percentageValidator); form.add(memoryThreshold); TextField<Integer> tileThreads = new TextField<Integer>("tileThreads"); tileThreads.add(RangeValidator.minimum(0)); form.add(tileThreads); TextField<Integer> tilePriority = new TextField<Integer>("tilePriority"); tilePriority.add(RangeValidator.minimum(0)); form.add(tilePriority); form.add(new CheckBox("recycling"));
/** * @param validator * @param component */ @SuppressWarnings("unchecked") private void addYavRuleForMinMaxRangeValidatorType(IValidator validator, Component component) { if (RangeValidator.class.isAssignableFrom(validator.getClass())) { RangeValidator rangeValidator = (RangeValidator) validator; if (Number.class.isAssignableFrom(rangeValidator.getMinimum().getClass())) { buffer.append(messageBuilder.rangeMessage(component, rangeValidator)); } } }
protected void build(IModel info, Form form) { // overview policy form.add( new DropDownChoice( "overviewPolicy", Arrays.asList(OverviewPolicy.values()), new OverviewPolicyRenderer())); form.add(new CheckBox("subsamplingEnabled")); // limited srs list TextArea srsList = new SRSListTextArea( "srs", LiveCollectionModel.list(new PropertyModel(info, "sRS"))); form.add(srsList); // resource limits TextField maxInputMemory = new TextField("maxInputMemory"); maxInputMemory.add(RangeValidator.minimum(0l)); form.add(maxInputMemory); TextField maxOutputMemory = new TextField("maxOutputMemory"); maxOutputMemory.add(RangeValidator.minimum(0l)); form.add(maxOutputMemory); // max dimension values TextField<Integer> maxRequestedDimensionValues = new TextField<Integer>("maxRequestedDimensionValues"); maxRequestedDimensionValues.add(RangeValidator.minimum(0)); form.add(maxRequestedDimensionValues); // lat-lon VS lon-lat form.add(new CheckBox("latLon")); }
/** * @param validator * @param component */ private void addYavRuleForMinMaxRangeValidatorType(IValidator<?> validator, Component component) { if (RangeValidator.class.isAssignableFrom(validator.getClass())) { RangeValidator<?> rangeValidator = (RangeValidator<?>)validator; if (Number.class.isAssignableFrom(rangeValidator.getMinimum().getClass())) { buffer.append(messageBuilder.rangeMessage(component, rangeValidator)); } } }
/** * @param minimum * @param maximum * @return a {@link RangeValidator} that validates if a value falls within a range */ public static <T extends Comparable<? super T> & Serializable> RangeValidator<T> range(T minimum, T maximum) { return new RangeValidator<>(minimum, maximum); }
@Override protected void onConfigure() { super.onConfigure(); if (validator != null) { remove(validator); validator = null; } final N min = minimum.getObject(); final N max = maximum.getObject(); if (min != null || max != null) { validator = RangeValidator.range(min, max); add(validator); } }
/** * @param component * @param rangeValidator * @return */ public String rangeMessage(Component component, RangeValidator<?> rangeValidator) { String minValue = rangeValidator.getMinimum().toString(); String maxValue = rangeValidator.getMaximum().toString(); return addToBuffer( component.getId(), "numrange|" + minValue + "-" + maxValue, escapeJavaScriptString(formatRangeMessage(component, "NumberValidator.range", minValue, maxValue))); }
/** * @param maximum * @return a {@link RangeValidator} that validates if a value is a most {@code maximum} */ public static <T extends Comparable<? super T> & Serializable> RangeValidator<T> maximum(T maximum) { return new RangeValidator<>(null, maximum); }
lines.add(RangeValidator.minimum(1)); form.add(lines);
/** * create a new {@link TextField} instance for hours to be added to this panel. * * @param id * the component id * @param model * model that should be used by the {@link TextField} * @param type * the type of the text field * @return a new text field instance */ protected TextField<Integer> newHoursTextField(final String id, IModel<Integer> model, Class<Integer> type) { TextField<Integer> hoursTextField = new TextField<>(id, model, type); hoursTextField.add(getMaximumHours() == 24 ? RangeValidator.range(0, 23) : RangeValidator .range(1, 12)); hoursTextField.setLabel(new Model<>(HOURS)); return hoursTextField; }
/** {@inheritDoc} */ public void validate(IValidatable<Z> validatable) { Z value = validatable.getValue(); final Z min = getMinimum(); final Z max = getMaximum(); if (value.compareTo(min) < 0 || value.compareTo(max) > 0) { ValidationError error = new ValidationError(); error.addMessageKey("RangeValidator"); error.setVariable("minimum", min); error.setVariable("maximum", max); validatable.error(error); } }
/** * @param minimum * @return a {@link RangeValidator} that validates if a value is a least {@code minimum} */ public static <T extends Comparable<? super T> & Serializable> RangeValidator<T> minimum(T minimum) { return new RangeValidator<>(minimum, null); }