@Override protected Prompt acceptValidatedInput(ConversationContext context, String input) { try { return acceptValidatedInput(context, NumberUtils.createNumber(input)); } catch (NumberFormatException e) { return acceptValidatedInput(context, NumberUtils.INTEGER_ZERO); } }
@Override protected boolean isInputValid(ConversationContext context, String input) { return NumberUtils.isNumber(input) && isNumberValid(context, NumberUtils.createNumber(input)); }
@Override protected String getFailedValidationText(ConversationContext context, String invalidInput) { if (NumberUtils.isNumber(invalidInput)) { return getFailedValidationText(context, NumberUtils.createNumber(invalidInput)); } else { return getInputNotNumericText(context, invalidInput); } }
/** * <p>Create a number from a String.</p> * * @param str the value * @return the number represented by <code>str</code>, if <code>str</code> * is not a number, null is returned. */ public static Number createNumber(String str) { // Needs to be able to create try { return NumberUtils.createNumber(str); } catch (NumberFormatException nfe) { System.err.println(nfe.getMessage()); return null; } }
/** * <p>Create a number from a String.</p> * * @param str the value * @return the number represented by <code>str</code>, if <code>str</code> * is not a number, null is returned. */ public static Number createNumber(String str) { // Needs to be able to create try { // do searching for decimal point etc, but atm just make an Integer return NumberUtils.createNumber(str); } catch (NumberFormatException nfe) { System.err.println(nfe.getMessage()); return null; } }
private Number parseToNumber(String value) { Number number = null; try { number = NumberUtils.createNumber(value); } catch (Exception ex) { BigDecimal bigDecimal = NumericalEncoder.decode(value); number = bigDecimal.doubleValue(); } return number; }
@Override public Object apply(String input) { if (input.contains(LIST_DELIMITER)) { return splitBySeparatorAndTrimItems(input); } if (NumberUtils.isNumber(input)) { return NumberUtils.createNumber(input); } return input; }
private int compare(List<String> splitted1, List<String> splitted2) { int min = Math.min(splitted1.size(), splitted2.size()); for (int i = 0; i < min; i++) { String part1 = splitted1.get(i); String part2 = splitted2.get(i); boolean isNumber1 = NumberUtils.isNumber(part1); boolean isNumber2 = NumberUtils.isNumber(part2); int compare = 0; if( isNumber1 && isNumber2){ compare = NumberUtils.createNumber(part1).intValue() - NumberUtils.createNumber(part2).intValue(); } else if(isNumber1){ return Integer.MIN_VALUE; } else if(isNumber2){ return Integer.MAX_VALUE; } else { compare = part1.compareTo(part2); } if (compare != 0) { return compare; } } return splitted1.size() - splitted2.size(); }
@Override protected Prompt acceptValidatedInput(ConversationContext context, String input) { try { return acceptValidatedInput(context, NumberUtils.createNumber(input)); } catch (NumberFormatException e) { return acceptValidatedInput(context, NumberUtils.INTEGER_ZERO); } }
} else { try { Number num = NumberUtils.createNumber(o.toString()); if (c.equals(BigDecimal.class)) { return (num instanceof BigDecimal ? num : BigDecimal.valueOf(num.doubleValue()));
@Override protected boolean isInputValid(ConversationContext context, String input) { return NumberUtils.isNumber(input) && isNumberValid(context, NumberUtils.createNumber(input)); }
} else if (convert) { try { Number num = NumberUtils.createNumber(o.toString()); return num.getClass(); } catch (Exception nfe) {
public static Collection<?> between(Object field, float left, boolean leftInclusive, float right, boolean rightInclusive) { String fieldValue = ValueTuple.getNormalizedStringValue(field); Number value; if (fieldValue != null && NumericalEncoder.isPossiblyEncoded(fieldValue)) { try { value = NumericalEncoder.decode(fieldValue); } catch (NumberFormatException nfe) { try { value = NumberUtils.createNumber(fieldValue); } catch (Exception nfe2) { throw new NumberFormatException("Cannot decode " + fieldValue + " using NumericalEncoder or float"); } } } else { try { value = NumberUtils.createNumber(fieldValue); } catch (Exception nfe2) { throw new NumberFormatException("Cannot decode " + fieldValue + " using float"); } } if (value != null) { float floatValue = value.floatValue(); if (((floatValue > left) || (leftInclusive && floatValue == left)) && ((floatValue < right) || (rightInclusive && floatValue == right))) { return Collections.singleton(getHitTermString(field)); } } return Collections.emptySet(); }
public String normalizeFieldValue(String field, Object value) { if (NumberUtils.isNumber(value.toString())) { Number n = NumberUtils.createNumber(value.toString()); if (n instanceof Integer) return NumericUtils.intToPrefixCoded((Integer) n); else if (n instanceof Long) return NumericUtils.longToPrefixCoded((Long) n); else if (n instanceof Float) return NumericUtils.floatToPrefixCoded((Float) n); else if (n instanceof Double) return NumericUtils.doubleToPrefixCoded((Double) n); else throw new IllegalArgumentException("Unhandled numeric type: " + n.getClass()); } else { throw new IllegalArgumentException("Value is not a number: " + value); } }
@Override protected String getFailedValidationText(ConversationContext context, String invalidInput) { if (NumberUtils.isNumber(invalidInput)) { return getFailedValidationText(context, NumberUtils.createNumber(invalidInput)); } else { return getInputNotNumericText(context, invalidInput); } }
fieldsMap.put(field, data); else { Number number = NumberUtils.createNumber(data.toString()); if (number instanceof Float) number = Double.parseDouble(data.toString());
protected JexlNode expandNodeForNormalizers(JexlNode node, Object data) { IdentifierOpLiteral op = JexlASTHelper.getIdentifierOpLiteral(node); if (op == null) { return node; } final String fieldName = op.deconstructIdentifier(); Object literal = op.getLiteralValue(); // Get all of the normalizers for the field name Collection<Type<?>> normalizers = config.getQueryFieldsDatatypes().get(fieldName); // Catch the case of the user entering FIELD == null if (normalizers.isEmpty() && literal instanceof String) { try { literal = NumberUtils.createNumber((String) literal); } catch (Exception nfe) { // leave literal as is } } // Return a copy of the node with a potentially converted literal return JexlNodeFactory.buildUntypedNewLiteralNode(node, fieldName, literal); }
Number number = NumberUtils.createNumber( value.toString() ); PropertyUtils.setProperty( this, field.getName(), number );
private int checkNumeric(Object paramValue, VNumeric vNumeric) { boolean _matched = false; boolean _flag = false; try { Number _number = NumberUtils.createNumber(BlurObject.bind(paramValue).toStringValue()); if (_number == null) { _matched = true; _flag = true; } else { if (vNumeric.min() > 0 && _number.doubleValue() < vNumeric.min()) { _matched = true; } else if (vNumeric.max() > 0 && _number.doubleValue() > vNumeric.max()) { _matched = true; } } } catch (Exception e) { _matched = true; _flag = true; } return _matched ? (_flag ? 2 : 1) : 0; } }
protected void addDefaultBarChart(final DCTable table, final DisplayChartCallback displayChartCallback, final int row, final String measureName) { final ActionListener action = e -> { final DefaultCategoryDataset dataset = new DefaultCategoryDataset(); final int columnCount = table.getColumnCount(); for (int j = 1; j < columnCount; j++) { final String textValue = table.getTextValueAt(row, j); final Number value = NumberUtils.createNumber(textValue); dataset.setValue(value, table.getColumnName(j), ""); } final JFreeChart chart = ChartFactory .createBarChart("", "", measureName, dataset, PlotOrientation.VERTICAL, true, true, false); ChartUtils.applyStyles(chart); final ChartPanel chartPanel = ChartUtils.createPanel(chart, true); displayChartCallback.displayChart(chartPanel); }; final DCPanel panel = createActionableValuePanel(measureName, Alignment.LEFT, action, IMAGE_PATH_BAR_CHART); table.setValueAt(panel, row, 0); }