public static <T extends Comparable<? super T>> T max(T c1, T c2){ return isGreater(c1, c2) ? c1 : c2; }
public static <T extends Comparable<? super T>> T min(T c1, T c2){ return isLess(c1, c2) ? c1 : c2; }
@Override public boolean equals(T a, T b) { // TODO complete (null, exception...) return Comparables.isEqual(a, b, comparator); }
public static Comparable valueToRange(InternationalFormatter formatter, Comparable value) { return Comparables.toRange(value, formatter.getMinimum(), formatter.getMaximum()); } }
public static Comparable valueToRange(InternationalFormatter formatter, Comparable value){ return Comparables.toRange(value, formatter.getMinimum(), formatter.getMaximum()); }
public static <T> T min(T o1, T o2, Comparator<? super T> comparator){ return isLess(o1, o2, comparator) ? o1 : o2; }
private Number minimumToRange(Number min){ if (min != null && ! (min instanceof Comparable)){ throw new IllegalArgumentException("min must be an instance of Comparable"); } Comparable inRangeValue = (Comparable) min; if (getMinimumMinimumValue() != null){ if (inRangeValue == null){ inRangeValue = (Comparable) getMinimumMinimumValue(); } else { inRangeValue = Comparables.toRange(inRangeValue, (Comparable) getMinimumMinimumValue(), (Comparable) getMaximumMaximumValue()); } } return (Number) inRangeValue; }
public static <T> T max(T o1, T o2, Comparator<? super T> comparator){ return isGreater(o1, o2, comparator) ? o1 : o2; }
/** * Sets the maximum value. * It must be an instance of Number or null. * It mustn't be smaller than the minimum value. * It ensures that the maximum value is in the range of the maximum * maximum value and the minimum minimum value. * @param max the maximum number value */ @Override public void setMaximum(Comparable max) { if (max != null && ! (max instanceof Number)){ throw new IllegalArgumentException("max must be an instance of Number or null"); } if (max != null && getMinimum() != null && Comparables.isLess(max, getMinimum())){ throw new IllegalArgumentException("max mustn't be smaller than minimum!"); } // if (max.compareTo(MAX_MAX_VALUE) > 0){ // throw new IllegalArgumentException("max mustn't be bigger than MAX_MAX_VALUE!"); // } super.setMaximum((Comparable) maximumToRange((Number) max)); }
private Number minimumToRange(Number min){ if (min != null && ! (min instanceof Comparable)){ throw new IllegalArgumentException("min must be an instance of Comparable"); } Comparable inRangeValue = (Comparable) min; if (getMinimumMinimumValue() != null){ if (inRangeValue == null){ inRangeValue = (Comparable) getMinimumMinimumValue(); } else { inRangeValue = Comparables.toRange(inRangeValue, (Comparable) getMinimumMinimumValue(), (Comparable) getMaximumMaximumValue()); } } return (Number) inRangeValue; }
/** * Sets the minimum value. * It must be an instance of Number or null. * It mustn't be bigger than the maximum value. * It ensures that the minimum value is in the range of the maximum * maximum value and the minimum minimum value. * @param minimum the minimum number value */ @Override public void setMinimum(Comparable minimum) { if (minimum != null && ! (minimum instanceof Number)){ throw new IllegalArgumentException("minimum must be an instance of Number or null"); } if (minimum != null && getMaximum() != null && Comparables.isGreater(minimum, getMaximum())){ throw new IllegalArgumentException("minimum mustn't be bigger than max!"); } // if (minimum.compareTo(getMinimumMinimumValue()) < 0){ // throw new IllegalArgumentException("minimum mustn't be smaller than the minimum minimum value!"); // } super.setMinimum((Comparable) minimumToRange((Number) minimum)); }
/** * Sets the maximum value. * It must be an instance of Number or null. * It mustn't be smaller than the minimum value. * It ensures that the maximum value is in the range of the maximum * maximum value and the minimum minimum value. * @param max the maximum number value */ @Override public void setMaximum(Comparable max) { if (max != null && ! (max instanceof Number)){ throw new IllegalArgumentException("max must be an instance of Number or null"); } if (max != null && getMinimum() != null && Comparables.isLess(max, getMinimum())){ throw new IllegalArgumentException("max mustn't be smaller than minimum!"); } // if (max.compareTo(MAX_MAX_VALUE) > 0){ // throw new IllegalArgumentException("max mustn't be bigger than MAX_MAX_VALUE!"); // } super.setMaximum((Comparable) maximumToRange((Number) max)); }
private Number maximumToRange(Number max){ if (max != null && ! (max instanceof Comparable)){ throw new IllegalArgumentException("max must be an instance of Comparable"); } Comparable inRangeValue = (Comparable) max; if (getMaximumMaximumValue() != null){ if (inRangeValue == null){ inRangeValue = (Comparable) getMaximumMaximumValue(); } else { inRangeValue = Comparables.toRange(inRangeValue, (Comparable) getMinimumMinimumValue(), (Comparable) getMaximumMaximumValue()); } } return (Number) inRangeValue; }
/** * Sets the minimum value. * It must be an instance of Number or null. * It mustn't be bigger than the maximum value. * It ensures that the minimum value is in the range of the maximum * maximum value and the minimum minimum value. * @param minimum the minimum number value */ @Override public void setMinimum(Comparable minimum) { if (minimum != null && ! (minimum instanceof Number)){ throw new IllegalArgumentException("minimum must be an instance of Number or null"); } if (minimum != null && getMaximum() != null && Comparables.isGreater(minimum, getMaximum())){ throw new IllegalArgumentException("minimum mustn't be bigger than max!"); } // if (minimum.compareTo(getMinimumMinimumValue()) < 0){ // throw new IllegalArgumentException("minimum mustn't be smaller than the minimum minimum value!"); // } super.setMinimum((Comparable) minimumToRange((Number) minimum)); }
/** * The minimum value for the minimum value. */ protected void setMinimumMinimumValue(Number minimumMinimumValue) { if (minimumMinimumValue != null && ! (minimumMinimumValue instanceof Comparable)){ throw new IllegalArgumentException("minimumMinimumValue must be an instance of Comparable or null"); } if (minimumMinimumValue != null && getMaximumMaximumValue() != null && Comparables.isLess((Comparable) minimumMinimumValue, (Comparable) getMaximumMaximumValue())){ // TODO: bug? IsGreater? throw new IllegalArgumentException("minimumMinimumValue mustn't be smaller than maximumMaximumValue!"); // TODO: bug? greater? } this.minimumMinimumValue = minimumMinimumValue; setMaximumNumberValue(getMaximumNumberValue()); setMinimumNumberValue(getMinimumNumberValue()); }
private Number maximumToRange(Number max){ if (max != null && ! (max instanceof Comparable)){ throw new IllegalArgumentException("max must be an instance of Comparable"); } Comparable inRangeValue = (Comparable) max; if (getMaximumMaximumValue() != null){ if (inRangeValue == null){ inRangeValue = (Comparable) getMaximumMaximumValue(); } else { inRangeValue = Comparables.toRange(inRangeValue, (Comparable) getMinimumMinimumValue(), (Comparable) getMaximumMaximumValue()); } } return (Number) inRangeValue; }
/** * The minimum value for the minimum value. * * @param minimumMinimumValue the minimum value for the minimum value */ protected void setMinimumMinimumValue(Number minimumMinimumValue) { if (minimumMinimumValue != null && ! (minimumMinimumValue instanceof Comparable)){ throw new IllegalArgumentException("minimumMinimumValue must be an instance of Comparable or null"); } if (minimumMinimumValue != null && getMaximumMaximumValue() != null && Comparables.isLess((Comparable) minimumMinimumValue, (Comparable) getMaximumMaximumValue())){ // TODO: bug? IsGreater? throw new IllegalArgumentException("minimumMinimumValue mustn't be smaller than maximumMaximumValue!"); // TODO: bug? greater? } this.minimumMinimumValue = minimumMinimumValue; setMaximumNumberValue(getMaximumNumberValue()); setMinimumNumberValue(getMinimumNumberValue()); }
/** * The maximum value for the maximum value. * It must be an instance of Comparable or null, if there is no maximum * maximum value. And it mustn't be smaller than the minimum minimum value, * if both are not null. * If the maximum or the minimum value are greater than the maximum maximum * value, they will be set to the maximum maximum value instead. * @param maximumMaximumValue the maximum value for the maximum value */ protected void setMaximumMaximumValue(Number maximumMaximumValue) { if (maximumMaximumValue != null && ! (maximumMaximumValue instanceof Comparable)){ throw new IllegalArgumentException("maximumMaximumValue must be an instance of Comparable or null"); } if (maximumMaximumValue != null && getMinimumMinimumValue() != null && Comparables.isLess((Comparable) maximumMaximumValue, (Comparable) getMinimumMinimumValue())){ throw new IllegalArgumentException("maximumMaximumValue mustn't be smaller than minimumMinimumValue!"); } this.maximumMaximumValue = maximumMaximumValue; setMinimumNumberValue(getMinimumNumberValue()); setMaximumNumberValue(getMaximumNumberValue()); }