List of usage examples for java.lang Number floatValue
public abstract float floatValue();
From source file:org.mrgeo.rasterops.GeoTiffExporter.java
public static void export(final RenderedImage image, final Bounds bounds, final OutputStream os, final boolean replaceNan, final String xmp, final Number nodata) throws IOException { OpImageRegistrar.registerMrGeoOps(); final TIFFEncodeParam param = new TIFFEncodeParam(); // The version of GDAL that Legion is using requires a tile size > 1 param.setTileSize(image.getTileWidth(), image.getTileHeight()); param.setWriteTiled(true);/*from w ww. j av a 2 s. co m*/ // if the image only has 1 pixel, the value of this pixel changes after compressing (especially // if this pixel is no data value. e.g -9999 changes to -8192 when read the image back). // So don't do compress if the image has only 1 pixel. if (image.getWidth() > 1 && image.getHeight() > 1) { // Deflate lossless compression (also known as "Zip-in-TIFF") param.setCompression(TIFFEncodeParam.COMPRESSION_DEFLATE); param.setDeflateLevel(Deflater.BEST_COMPRESSION); } final GeoTIFFDirectory dir = new GeoTIFFDirectory(); // GTModelTypeGeoKey : using geographic coordinate system. dir.addGeoKey(new XTIFFField(1024, XTIFFField.TIFF_SHORT, 1, new char[] { 2 })); // GTRasterTypeGeoKey : pixel is point dir.addGeoKey(new XTIFFField(1025, XTIFFField.TIFF_SHORT, 1, new char[] { 1 })); // GeographicTypeGeoKey : 4326 WGS84 dir.addGeoKey(new XTIFFField(2048, XTIFFField.TIFF_SHORT, 1, new char[] { 4326 })); dir.addGeoKey(new XTIFFField(2049, XTIFFField.TIFF_ASCII, 7, new String[] { "WGS 84" })); // GeogAngularUnitsGeoKey : Angular Degree dir.addGeoKey(new XTIFFField(2054, XTIFFField.TIFF_SHORT, 1, new char[] { 9102 })); if (xmp != null) { final byte[] b = xmp.getBytes("UTF8"); dir.addField(new XTIFFField(700, XTIFFField.TIFF_BYTE, b.length, b)); } dir.getFields(); final double[] tiePoints = new double[6]; tiePoints[0] = 0.0; tiePoints[1] = 0.0; tiePoints[2] = 0.0; tiePoints[3] = bounds.getMinX(); tiePoints[4] = bounds.getMaxY(); tiePoints[5] = 0.0; dir.setTiepoints(tiePoints); final double[] pixelScale = new double[3]; pixelScale[0] = bounds.getWidth() / image.getWidth(); pixelScale[1] = bounds.getHeight() / image.getHeight(); pixelScale[2] = 0; dir.setPixelScale(pixelScale); final Vector<TIFFField> fields = toTiffField(dir.getFields()); RenderedImage output = image; final String[] nullValues = new String[1]; switch (image.getSampleModel().getDataType()) { case DataBuffer.TYPE_DOUBLE: nullValues[0] = Double.toString(nodata.doubleValue()); if (replaceNan) { output = ReplaceNanDescriptor.create(image, nodata.doubleValue()); } // Tiff exporter doesn't handle doubles. Yuck! output = ConvertToFloatDescriptor.create(output); // Double.NaN (our default nodata on ingest) should not be written out as nodata on export // (i.e. GeoTiffs imported without NODATA metadata field should be exported as such) if (!Double.isNaN(nodata.doubleValue())) { fields.add(new TIFFField(NULL_TAG, XTIFFField.TIFF_ASCII, 1, nullValues)); } break; case DataBuffer.TYPE_FLOAT: nullValues[0] = Double.toString(nodata.floatValue()); if (replaceNan) { output = ReplaceNanDescriptor.create(image, nodata.floatValue()); } // Float.NaN (our default nodata on ingest) should not be written out as nodata on export // (i.e. GeoTiffs imported without NODATA metadata field should be exported as such) if (!Float.isNaN(nodata.floatValue())) { fields.add(new TIFFField(NULL_TAG, XTIFFField.TIFF_ASCII, 1, nullValues)); } break; case DataBuffer.TYPE_INT: case DataBuffer.TYPE_USHORT: case DataBuffer.TYPE_SHORT: case DataBuffer.TYPE_BYTE: nullValues[0] = Integer.toString(nodata.intValue()); fields.add(new TIFFField(NULL_TAG, XTIFFField.TIFF_ASCII, 1, nullValues)); break; } param.setExtraFields(fields.toArray(new TIFFField[0])); EncodeDescriptor.create(output, os, "TIFF", param, null); }
From source file:net.pms.util.Rational.java
/** * Compares this {@link Rational} by value with any class implementing * {@link Number}.//from ww w . ja v a 2 s . co m * <p> * This method is provided in preference to individual methods for each of * the six boolean comparison operators ({@literal <}, ==, {@literal >}, * {@literal >=}, !=, {@literal <=}). The suggested idiom for performing * these comparisons is: {@code (x.compareTo(y)} <<i>op</i>> * {@code 0)}, where <<i>op</i>> is one of the six comparison * operators. * <p> * <b>Note:</b> {@code NaN} can't be compared by value and is considered * greater than anything but itself as defined for {@link Double}. * * @param number the {@link Number} to which this {@link Rational}'s value * is to be compared. * @return A negative integer, zero, or a positive integer as this * {@link Rational} is numerically less than, equal to, or greater * than {@code number}. */ public int compareTo(@Nonnull Number number) { // Establish special cases boolean numberIsNaN; boolean numberIsInfinite; int numberSignum; if (number instanceof Rational) { numberIsNaN = Rational.isNaN((Rational) number); numberIsInfinite = Rational.isInfinite((Rational) number); numberSignum = ((Rational) number).numerator.signum(); } else if (number instanceof Float) { numberIsNaN = Float.isNaN(number.floatValue()); numberIsInfinite = Float.isInfinite(number.floatValue()); numberSignum = (int) Math.signum(number.floatValue()); } else if (number instanceof Double) { numberIsNaN = Double.isNaN(number.doubleValue()); numberIsInfinite = Double.isInfinite(number.doubleValue()); numberSignum = (int) Math.signum(number.doubleValue()); } else { numberIsNaN = false; numberIsInfinite = false; long l = number.longValue(); numberSignum = l == 0 ? 0 : l > 0 ? 1 : -1; } // NaN comparison is done according to the rules for Double. if (isNaN()) { return numberIsNaN ? 0 : 1; } if (numberIsNaN) { return -1; } if (isInfinite()) { if (numberIsInfinite) { return signum() - numberSignum; } return this.signum(); } if (numberIsInfinite) { return -numberSignum; } // List known integer types for faster and more accurate comparison if (number instanceof BigInteger) { if (isInteger()) { return bigIntegerValue().compareTo((BigInteger) number); } return bigDecimalValue(2, RoundingMode.HALF_EVEN).compareTo(new BigDecimal((BigInteger) number)); } if (number instanceof AtomicInteger || number instanceof AtomicLong || number instanceof Byte || number instanceof Integer || number instanceof Long || number instanceof Short) { if (isInteger()) { return bigIntegerValue().compareTo(BigInteger.valueOf(number.longValue())); } return bigDecimalValue(2, RoundingMode.HALF_EVEN).compareTo(new BigDecimal(number.longValue())); } if (number instanceof BigDecimal) { Rational other = valueOf((BigDecimal) number); return compareTo(other); } return bigDecimalValue().compareTo(new BigDecimal(number.doubleValue())); }
From source file:org.alfresco.solr.SolrInformationServer.java
private NamedList<Object> fixStats(NamedList<Object> namedList) { int sz = namedList.size(); for (int i = 0; i < sz; i++) { Object value = namedList.getVal(i); if (value instanceof Number) { Number number = (Number) value; if (Float.isInfinite(number.floatValue()) || Float.isNaN(number.floatValue()) || Double.isInfinite(number.doubleValue()) || Double.isNaN(number.doubleValue())) { namedList.setVal(i, null); }/*from ww w . ja va2 s . c o m*/ } } return namedList; }
From source file:com.examples.with.different.packagename.testcarver.NumberConverter.java
/** * Convert any Number object to the specified type for this * <i>Converter</i>.// ww w .j a v a 2 s . c om * <p> * This method handles conversion to the following types: * <ul> * <li><code>java.lang.Byte</code></li> * <li><code>java.lang.Short</code></li> * <li><code>java.lang.Integer</code></li> * <li><code>java.lang.Long</code></li> * <li><code>java.lang.Float</code></li> * <li><code>java.lang.Double</code></li> * <li><code>java.math.BigDecimal</code></li> * <li><code>java.math.BigInteger</code></li> * </ul> * @param sourceType The type being converted from * @param targetType The Number type to convert to * @param value The Number to convert. * * @return The converted value. */ private Number toNumber(Class sourceType, Class targetType, Number value) { // Correct Number type already if (targetType.equals(value.getClass())) { return value; } // Byte if (targetType.equals(Byte.class)) { long longValue = value.longValue(); if (longValue > Byte.MAX_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too large for " + toString(targetType)); } if (longValue < Byte.MIN_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too small " + toString(targetType)); } return new Byte(value.byteValue()); } // Short if (targetType.equals(Short.class)) { long longValue = value.longValue(); if (longValue > Short.MAX_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too large for " + toString(targetType)); } if (longValue < Short.MIN_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too small " + toString(targetType)); } return new Short(value.shortValue()); } // Integer if (targetType.equals(Integer.class)) { long longValue = value.longValue(); if (longValue > Integer.MAX_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too large for " + toString(targetType)); } if (longValue < Integer.MIN_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too small " + toString(targetType)); } return new Integer(value.intValue()); } // Long if (targetType.equals(Long.class)) { return new Long(value.longValue()); } // Float if (targetType.equals(Float.class)) { if (value.doubleValue() > Float.MAX_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too large for " + toString(targetType)); } return new Float(value.floatValue()); } // Double if (targetType.equals(Double.class)) { return new Double(value.doubleValue()); } // BigDecimal if (targetType.equals(BigDecimal.class)) { if (value instanceof Float || value instanceof Double) { return new BigDecimal(value.toString()); } else if (value instanceof BigInteger) { return new BigDecimal((BigInteger) value); } else { return BigDecimal.valueOf(value.longValue()); } } // BigInteger if (targetType.equals(BigInteger.class)) { if (value instanceof BigDecimal) { return ((BigDecimal) value).toBigInteger(); } else { return BigInteger.valueOf(value.longValue()); } } String msg = toString(getClass()) + " cannot handle conversion to '" + toString(targetType) + "'"; throw new ConversionException(msg); }
From source file:javadz.beanutils.converters.NumberConverter.java
/** * Convert any Number object to the specified type for this * <i>Converter</i>./*from w w w . java 2 s . com*/ * <p> * This method handles conversion to the following types: * <ul> * <li><code>java.lang.Byte</code></li> * <li><code>java.lang.Short</code></li> * <li><code>java.lang.Integer</code></li> * <li><code>java.lang.Long</code></li> * <li><code>java.lang.Float</code></li> * <li><code>java.lang.Double</code></li> * <li><code>java.math.BigDecimal</code></li> * <li><code>java.math.BigInteger</code></li> * </ul> * @param sourceType The type being converted from * @param targetType The Number type to convert to * @param value The Number to convert. * * @return The converted value. */ private Number toNumber(Class sourceType, Class targetType, Number value) { // Correct Number type already if (targetType.equals(value.getClass())) { return value; } // Byte if (targetType.equals(Byte.class)) { long longValue = value.longValue(); if (longValue > Byte.MAX_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too large for " + toString(targetType)); } if (longValue < Byte.MIN_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too small " + toString(targetType)); } return new Byte(value.byteValue()); } // Short if (targetType.equals(Short.class)) { long longValue = value.longValue(); if (longValue > Short.MAX_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too large for " + toString(targetType)); } if (longValue < Short.MIN_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too small " + toString(targetType)); } return new Short(value.shortValue()); } // Integer if (targetType.equals(Integer.class)) { long longValue = value.longValue(); if (longValue > Integer.MAX_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too large for " + toString(targetType)); } if (longValue < Integer.MIN_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too small " + toString(targetType)); } return new Integer(value.intValue()); } // Long if (targetType.equals(Long.class)) { return new Long(value.longValue()); } // Float if (targetType.equals(Float.class)) { if (value.doubleValue() > Float.MAX_VALUE) { throw new ConversionException( toString(sourceType) + " value '" + value + "' is too large for " + toString(targetType)); } return new Float(value.floatValue()); } // Double if (targetType.equals(Double.class)) { return new Double(value.doubleValue()); } // BigDecimal if (targetType.equals(BigDecimal.class)) { if (value instanceof Float || value instanceof Double) { return new BigDecimal(value.toString()); } else if (value instanceof BigInteger) { return new BigDecimal((BigInteger) value); } else { return BigDecimal.valueOf(value.longValue()); } } // BigInteger if (targetType.equals(BigInteger.class)) { if (value instanceof BigDecimal) { return ((BigDecimal) value).toBigInteger(); } else { return BigInteger.valueOf(value.longValue()); } } String msg = toString(getClass()) + " cannot handle conversion to '" + toString(targetType) + "'"; if (log().isWarnEnabled()) { log().warn(" " + msg); } throw new ConversionException(msg); }
From source file:org.talend.mdm.webapp.browserecords.server.actions.BrowseRecordsAction.java
private Object[] getItemBeans(String dataClusterPK, ViewBean viewBean, EntityModel entityModel, String criteria, int skip, int max, String sortDir, String sortCol, String language) throws Exception { int totalSize = 0; String dateFormat = "yyyy-MM-dd"; //$NON-NLS-1$ String dateTimeFormat = "yyyy-MM-dd'T'HH:mm:ss"; //$NON-NLS-1$ List<ItemBean> itemBeans = new ArrayList<ItemBean>(); String concept = ViewHelper.getConceptFromDefaultViewName(viewBean.getViewPK()); Map<String, String[]> formatMap = this.checkDisplayFormat(entityModel, language); WSWhereItem wi = null;//from ww w . j av a 2 s . com if (criteria != null) { wi = CommonUtil.buildWhereItems(criteria); } String[] results = CommonUtil.getPort().viewSearch(new WSViewSearch(new WSDataClusterPK(dataClusterPK), new WSViewPK(viewBean.getViewPK()), wi, -1, skip, max, sortCol, sortDir)).getStrings(); // set foreignKey's EntityModel Map<String, EntityModel> map = new HashMap<String, EntityModel>(); if (results.length > 0 && viewBean.getViewableXpaths() != null) { for (String xpath : viewBean.getViewableXpaths()) { TypeModel typeModel = entityModel.getMetaDataTypes().get(xpath); if (typeModel != null && typeModel.getForeignkey() != null) { map.put(xpath, getEntityModel(typeModel.getForeignkey().split("/")[0], language)); //$NON-NLS-1$ } } } // TODO change ids to array? List<String> idsArray = new ArrayList<String>(); for (int i = 0; i < results.length; i++) { if (i == 0) { try { // Qizx doesn't wrap the count in a XML element, so try to parse it totalSize = Integer.parseInt(results[i]); } catch (NumberFormatException e) { totalSize = Integer.parseInt(com.amalto.webapp.core.util.Util.parse(results[i]) .getDocumentElement().getTextContent()); } continue; } Document doc = parseResultDocument(results[i], "result"); //$NON-NLS-1$ idsArray.clear(); for (String key : entityModel.getKeys()) { String id = com.amalto.core.util.Util.getFirstTextNode(doc.getDocumentElement(), "." + key.substring(key.lastIndexOf('/'))); //$NON-NLS-1$ if (id != null) { idsArray.add(id); } } Set<String> keySet = formatMap.keySet(); Map<String, Object> originalMap = new HashMap<String, Object>(); Map<String, String> formateValueMap = new HashMap<String, String>(); for (String key : keySet) { String[] value = formatMap.get(key); TypeModel tm = entityModel.getMetaDataTypes().get(key); String xpath = tm.getXpath(); String dataText = null; if (!key.equals(xpath)) { NodeList list = com.amalto.core.util.Util.getNodeList(doc.getDocumentElement(), xpath.replaceFirst(concept + "/", "./")); //$NON-NLS-1$//$NON-NLS-2$ if (list != null) { for (int k = 0; k < list.getLength(); k++) { Node node = list.item(k); String realType = ((Element) node.getParentNode()).getAttribute("xsi:type"); //$NON-NLS-1$ if (key.replaceAll(":" + realType, "").equals(xpath)) { //$NON-NLS-1$//$NON-NLS-2$ dataText = node.getTextContent(); break; } } } } else { dataText = com.amalto.core.util.Util.getFirstTextNode(doc.getDocumentElement(), key.replaceFirst(concept + "/", "./")); //$NON-NLS-1$ //$NON-NLS-2$ } if (dataText != null) { if (dataText.trim().length() != 0) { if (dateTypeNames.contains(tm.getType().getBaseTypeName())) { SimpleDateFormat sdf = null; if (value[1].equalsIgnoreCase("DATE")) { //$NON-NLS-1$ sdf = new SimpleDateFormat(dateFormat, java.util.Locale.ENGLISH); } else if (value[1].equalsIgnoreCase("DATETIME")) { //$NON-NLS-1$ sdf = new SimpleDateFormat(dateTimeFormat, java.util.Locale.ENGLISH); } try { Date date = sdf.parse(dataText.trim()); originalMap.put(key, date); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); String formatValue = com.amalto.webapp.core.util.Util.formatDate(value[0], calendar); formateValueMap.put(key, formatValue); com.amalto.core.util.Util .getNodeList(doc.getDocumentElement(), key.replaceFirst(concept + "/", "./")) //$NON-NLS-1$//$NON-NLS-2$ .item(0).setTextContent(formatValue); } catch (Exception e) { originalMap.remove(key); formateValueMap.remove(key); } } else if (numberTypeNames.contains(tm.getType().getBaseTypeName())) { try { NumberFormat nf = NumberFormat.getInstance(); Number num = nf.parse(dataText.trim()); String formatValue = ""; //$NON-NLS-1$ if (tm.getType().getBaseTypeName() .equals(DataTypeConstants.DOUBLE.getBaseTypeName())) { formatValue = String.format(value[0], num.doubleValue()).trim(); } else if (tm.getType().getBaseTypeName() .equals(DataTypeConstants.FLOAT.getBaseTypeName())) { formatValue = String.format(value[0], num.floatValue()).trim(); } else if (tm.getType().getBaseTypeName() .equals(DataTypeConstants.DECIMAL.getBaseTypeName())) { formatValue = String.format(value[0], new BigDecimal(dataText.trim())).trim(); } else { formatValue = String.format(value[0], num).trim(); } originalMap.put(key, num); formateValueMap.put(key, formatValue); com.amalto.core.util.Util .getNodeList(doc.getDocumentElement(), key.replaceFirst(concept + "/", "./")) //$NON-NLS-1$//$NON-NLS-2$ .item(0).setTextContent(formatValue); } catch (Exception e) { Log.info("format has error 111"); //$NON-NLS-1$ originalMap.remove(key); formateValueMap.remove(key); } } } } } ItemBean itemBean = new ItemBean(concept, CommonUtil.joinStrings(idsArray, "."), //$NON-NLS-1$ XMLUtils.nodeToString(doc.getDocumentElement(), true, true)); itemBean.setOriginalMap(originalMap); itemBean.setFormateMap(formateValueMap); if (checkSmartViewExistsByLang(concept, language)) { itemBean.setSmartViewMode(ItemBean.SMARTMODE); } else if (checkSmartViewExistsByOpt(concept, language)) { itemBean.setSmartViewMode(ItemBean.PERSOMODE); } dynamicAssembleByResultOrder(itemBean, viewBean, entityModel, map, language); itemBeans.add(itemBean); } return new Object[] { itemBeans, totalSize }; }
From source file:org.objectstyle.cayenne.dataview.DataTypeSpec.java
public Object fromDataType(Class untypedValueClass, DataTypeEnum dataType, Object typedValue) { if (typedValue == null) return null; Class dataTypeClass = getJavaClass(dataType); // Validate.isTrue(typedValue.getClass().equals(dataTypeClass)); if (untypedValueClass == null) return typedValue; if (ClassUtils.isAssignable(dataTypeClass, untypedValueClass)) return typedValue; String strTypedValue = null;/*from www.ja v a2 s . c o m*/ boolean isStringTypedValue; Number numTypedValue = null; boolean isNumberTypedValue; Boolean boolTypedValue = null; boolean isBooleanTypedValue; Date dateTypedValue = null; boolean isDateTypedValue; if (isStringTypedValue = typedValue instanceof String) strTypedValue = (String) typedValue; if (isNumberTypedValue = typedValue instanceof Number) numTypedValue = (Number) typedValue; if (isBooleanTypedValue = typedValue instanceof Boolean) boolTypedValue = (Boolean) typedValue; if (isDateTypedValue = typedValue instanceof Date) dateTypedValue = (Date) typedValue; Object v = null; if (String.class.equals(untypedValueClass)) { v = ObjectUtils.toString(typedValue); } else if (BigDecimal.class.equals(untypedValueClass)) { if (isStringTypedValue) v = NumberUtils.createBigDecimal(strTypedValue); else if (isNumberTypedValue) v = new BigDecimal(numTypedValue.doubleValue()); else if (isBooleanTypedValue) v = new BigDecimal(BooleanUtils.toInteger(boolTypedValue.booleanValue())); else if (isDateTypedValue) v = new BigDecimal(dateTypedValue.getTime()); } else if (Boolean.class.equals(untypedValueClass)) { if (isStringTypedValue) v = BooleanUtils.toBooleanObject(strTypedValue); else if (isNumberTypedValue) v = BooleanUtils.toBooleanObject(numTypedValue.intValue()); else if (isDateTypedValue) v = BooleanUtils.toBooleanObject((int) dateTypedValue.getTime()); } else if (Byte.class.equals(untypedValueClass)) { if (isStringTypedValue) v = Byte.valueOf(strTypedValue); else if (isNumberTypedValue) v = new Byte(numTypedValue.byteValue()); else if (isBooleanTypedValue) v = new Byte((byte) BooleanUtils.toInteger(boolTypedValue.booleanValue())); else if (isDateTypedValue) v = new Byte((byte) dateTypedValue.getTime()); } else if (byte[].class.equals(untypedValueClass)) { if (isStringTypedValue) v = strTypedValue.getBytes(); } else if (Double.class.equals(untypedValueClass)) { if (isStringTypedValue) v = NumberUtils.createDouble(strTypedValue); else if (isNumberTypedValue) v = new Double(numTypedValue.doubleValue()); else if (isBooleanTypedValue) v = new Double(BooleanUtils.toInteger(boolTypedValue.booleanValue())); else if (isDateTypedValue) v = new Double(dateTypedValue.getTime()); } else if (Float.class.equals(untypedValueClass)) { if (isStringTypedValue) v = NumberUtils.createFloat(strTypedValue); else if (isNumberTypedValue) v = new Float(numTypedValue.floatValue()); else if (isBooleanTypedValue) v = new Float(BooleanUtils.toInteger(boolTypedValue.booleanValue())); else if (isDateTypedValue) v = new Float(dateTypedValue.getTime()); } else if (Integer.class.equals(untypedValueClass)) { if (isStringTypedValue) v = NumberUtils.createInteger(strTypedValue); else if (isNumberTypedValue) v = new Integer(numTypedValue.intValue()); else if (isBooleanTypedValue) v = BooleanUtils.toIntegerObject(boolTypedValue.booleanValue()); else if (isDateTypedValue) v = new Integer((int) dateTypedValue.getTime()); } else if (Long.class.equals(untypedValueClass)) { if (isStringTypedValue) v = NumberUtils.createLong(strTypedValue); else if (isNumberTypedValue) v = new Long(numTypedValue.longValue()); else if (isBooleanTypedValue) v = new Long(BooleanUtils.toInteger(boolTypedValue.booleanValue())); else if (isDateTypedValue) v = new Long(dateTypedValue.getTime()); } else if (java.sql.Date.class.equals(untypedValueClass)) { if (isNumberTypedValue) v = new java.sql.Date(numTypedValue.longValue()); else if (isDateTypedValue) v = new java.sql.Date(dateTypedValue.getTime()); } else if (java.sql.Time.class.equals(untypedValueClass)) { if (isNumberTypedValue) v = new java.sql.Time(numTypedValue.longValue()); else if (isDateTypedValue) v = new java.sql.Time(dateTypedValue.getTime()); } else if (java.sql.Timestamp.class.equals(untypedValueClass)) { if (isNumberTypedValue) v = new java.sql.Timestamp(numTypedValue.longValue()); else if (isDateTypedValue) v = new java.sql.Timestamp(dateTypedValue.getTime()); } else if (Date.class.equals(untypedValueClass)) { if (isNumberTypedValue) v = new Date(numTypedValue.longValue()); } return v; }
From source file:org.talend.mdm.webapp.browserecords.server.actions.BrowseRecordsAction.java
@Override public ItemBean getItem(ItemBean itemBean, String viewPK, EntityModel entityModel, boolean staging, String language) throws ServiceException { try {//from w w w.java 2s .c om String dateFormat = "yyyy-MM-dd"; //$NON-NLS-1$ String dateTimeFormat = "yyyy-MM-dd'T'HH:mm:ss"; //$NON-NLS-1$ String dataCluster = getCurrentDataCluster(staging); String dataModel = getCurrentDataModel(); String concept = itemBean.getConcept(); // get item WSDataClusterPK wsDataClusterPK = new WSDataClusterPK(dataCluster); String[] ids = CommonUtil.extractIdWithDots(entityModel.getKeys(), itemBean.getIds()); // parse schema firstly, then use element declaration (DataModelHelper.getEleDecl) DataModelHelper.parseSchema(dataModel, concept, entityModel, LocalUser.getLocalUser().getRoles()); WSItem wsItem = CommonUtil.getPort() .getItem(new WSGetItem(new WSItemPK(wsDataClusterPK, itemBean.getConcept(), ids))); itemBean.setItemXml(wsItem.getContent()); extractUsingTransformerThroughView(concept, viewPK, ids, dataModel, dataCluster, DataModelHelper.getEleDecl(), itemBean); itemBean.set("time", wsItem.getInsertionTime()); //$NON-NLS-1$ if (wsItem.getTaskId() != null && !"".equals(wsItem.getTaskId()) //$NON-NLS-1$ && !"null".equals(wsItem.getTaskId())) { //$NON-NLS-1$ itemBean.setTaskId(wsItem.getTaskId()); } SimpleDateFormat sdf = null; Map<String, String[]> formatMap = this.checkDisplayFormat(entityModel, language); Set<String> keySet = formatMap.keySet(); for (String key : keySet) { String[] value = formatMap.get(key); org.dom4j.Document doc = org.talend.mdm.webapp.base.server.util.XmlUtil .parseText(itemBean.getItemXml()); TypeModel tm = entityModel.getMetaDataTypes().get(key); String xpath = tm.getXpath(); org.dom4j.Node node = null; if (!key.equals(xpath)) { Namespace namespace = new Namespace("xsi", "http://www.w3.org/2001/XMLSchema-instance"); //$NON-NLS-1$//$NON-NLS-2$ List<?> nodeList = doc.selectNodes(xpath); if (nodeList != null && nodeList.size() > 0) { for (int i = 0; i < nodeList.size(); i++) { org.dom4j.Element current = (org.dom4j.Element) nodeList.get(i); String realType = current.getParent() .attributeValue(new QName("type", namespace, "xsi:type")); //$NON-NLS-1$ //$NON-NLS-2$ if (key.replaceAll(":" + realType, "").equals(xpath)) { //$NON-NLS-1$//$NON-NLS-2$ node = current; break; } } } } else { node = doc.selectSingleNode(key); } if (node != null && itemBean.getOriginalMap() != null) { String dataText = node.getText(); if (dataText != null) { if (dataText.trim().length() != 0) { if (dateTypeNames.contains(tm.getType().getBaseTypeName())) { if (value[1].equalsIgnoreCase("DATE")) { //$NON-NLS-1$ sdf = new SimpleDateFormat(dateFormat, java.util.Locale.ENGLISH); } else if (value[1].equalsIgnoreCase("DATETIME")) { //$NON-NLS-1$ sdf = new SimpleDateFormat(dateTimeFormat, java.util.Locale.ENGLISH); } try { Date date = sdf.parse(dataText.trim()); itemBean.getOriginalMap().put(key, date); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); String formatValue = com.amalto.webapp.core.util.Util.formatDate(value[0], calendar); itemBean.getFormateMap().put(key, formatValue); } catch (Exception e) { itemBean.getOriginalMap().remove(key); itemBean.getFormateMap().remove(key); } } else if (numberTypeNames.contains(tm.getType().getBaseTypeName())) { try { NumberFormat nf = NumberFormat.getInstance(); Number num = nf.parse(dataText.trim()); String formatValue = ""; //$NON-NLS-1$ if (tm.getType().getBaseTypeName() .equals(DataTypeConstants.DOUBLE.getBaseTypeName())) { formatValue = String.format(value[0], num.doubleValue()).trim(); } else if (tm.getType().getBaseTypeName() .equals(DataTypeConstants.FLOAT.getBaseTypeName())) { formatValue = String.format(value[0], num.floatValue()).trim(); } else if (tm.getType().getBaseTypeName() .equals(DataTypeConstants.DECIMAL.getBaseTypeName())) { formatValue = String.format(value[0], new BigDecimal(dataText.trim())) .trim(); } else { formatValue = String.format(value[0], num).trim(); } itemBean.getOriginalMap().put(key, num); itemBean.getFormateMap().put(key, formatValue); } catch (Exception e) { itemBean.getOriginalMap().remove(key); itemBean.getFormateMap().remove(key); } } } } } } // dynamic Assemble dynamicAssemble(itemBean, entityModel, language); return itemBean; } catch (WebBaseException e) { throw new ServiceException(BASEMESSAGE.getMessage(new Locale(language), e.getMessage(), e.getArgs())); } catch (Exception exception) { String errorMessage; if (CoreException.class.isInstance(exception.getCause())) { CoreException webCoreException = (CoreException) exception.getCause(); errorMessage = getErrorMessageFromWebCoreException(webCoreException, itemBean.getConcept(), itemBean.getIds(), new Locale(language)); } else { errorMessage = exception.getLocalizedMessage(); } LOG.error(errorMessage, exception); throw new ServiceException(errorMessage); } }
From source file:uk.ac.diamond.scisoft.analysis.dataset.AbstractDataset.java
/** * Sets the error for the dataset to a single value for all points in the dataset * @param errorValue The error value for all elements of the dataset *//* w w w . jav a2 s .c o m*/ public void setError(Number errorValue) { this.errorData = null; if (errorValue instanceof Integer) { this.errorValue = errorValue.intValue() * errorValue.intValue(); return; } if (errorValue instanceof Float) { this.errorValue = errorValue.floatValue() * errorValue.floatValue(); return; } if (errorValue instanceof Long) { this.errorValue = errorValue.longValue() * errorValue.longValue(); return; } if (errorValue instanceof Short) { this.errorValue = errorValue.intValue() * errorValue.intValue(); return; } if (errorValue instanceof Byte) { this.errorValue = errorValue.intValue() * errorValue.intValue(); return; } // If all else fails this.errorValue = errorValue.doubleValue() * errorValue.doubleValue(); return; }
From source file:org.openmicroscopy.shoola.agents.util.ui.ScriptingDialog.java
/** Initializes the components. */ private void initComponents() { sorter = new ViewerSorter(); cancelButton = new JButton("Cancel"); cancelButton.setToolTipText("Close the dialog."); cancelButton.setActionCommand("" + CANCEL); cancelButton.addActionListener(this); applyButton = new JButton("Run Script"); applyButton.setToolTipText("Run the selected script."); applyButton.setActionCommand("" + APPLY); applyButton.addActionListener(this); IconManager icons = IconManager.getInstance(); menuButton = new JButton(icons.getIcon(IconManager.FILTER_MENU)); menuButton.setText("Script"); menuButton.setHorizontalTextPosition(JButton.LEFT); menuButton.addMouseListener(new MouseAdapter() { public void mouseReleased(MouseEvent e) { Object src = e.getSource(); if (src instanceof Component) { Point p = e.getPoint(); createOptionMenu().show((Component) src, p.x, p.y); }//from ww w . j a v a 2 s . c om } }); components = new LinkedHashMap<String, ScriptComponent>(); componentsAll = new LinkedHashMap<String, ScriptComponent>(); Map<String, ParamData> types = script.getInputs(); if (types == null) return; List<ScriptComponent> results = new ArrayList<ScriptComponent>(); Entry<String, ParamData> entry; ParamData param; JComponent comp; ScriptComponent c; String name; Class<?> type; Object defValue; Iterator<Entry<String, ParamData>> i = types.entrySet().iterator(); List<Object> values; Number n; String details = ""; String text = ""; String grouping; String parent; Map<String, List<ScriptComponent>> childrenMap = new HashMap<String, List<ScriptComponent>>(); List<ScriptComponent> l; int length; boolean columnsSet; while (i.hasNext()) { text = ""; columnsSet = false; comp = null; entry = i.next(); param = entry.getValue(); name = entry.getKey(); type = param.getPrototype(); values = param.getValues(); defValue = param.getDefaultValue(); if (CollectionUtils.isNotEmpty(values)) { comp = createValuesBox(values, defValue); } if (Long.class.equals(type) || Integer.class.equals(type) || Float.class.equals(type) || Double.class.equals(type)) { if (comp == null) { if (script.isIdentifier(name)) { comp = new NumericalTextField(); ((NumericalTextField) comp).setNumberType(type); ((NumericalTextField) comp).setNegativeAccepted(false); if (CollectionUtils.isNotEmpty(refObjects)) { //support of image type DataObject object = refObjects.get(0); if (script.isSupportedType(object, name)) { defValue = object.getId(); } } } else { comp = new NumericalTextField(); ((NumericalTextField) comp).setNumberType(type); n = param.getMinValue(); if (n != null) { if (Long.class.equals(type)) { text += "Min: " + n.longValue() + " "; ((NumericalTextField) comp).setMinimum(n.longValue()); } else if (Integer.class.equals(type)) { text += "Min: " + n.intValue() + " "; ((NumericalTextField) comp).setMinimum(n.intValue()); } else if (Double.class.equals(type)) { text += "Min: " + n.doubleValue() + " "; ((NumericalTextField) comp).setMinimum(n.doubleValue()); } else if (Float.class.equals(type)) { text += "Min: " + n.floatValue() + " "; ((NumericalTextField) comp).setMinimum(n.floatValue()); } } else { ((NumericalTextField) comp).setNegativeAccepted(true); } n = param.getMaxValue(); if (n != null) { if (Long.class.equals(type)) { text += "Max: " + n.longValue() + " "; ((NumericalTextField) comp).setMaximum(n.longValue()); } else if (Integer.class.equals(type)) { text += "Max: " + n.intValue() + " "; ((NumericalTextField) comp).setMaximum(n.intValue()); } else if (Double.class.equals(type)) { text += "Max: " + n.doubleValue() + " "; ((NumericalTextField) comp).setMaximum(n.doubleValue()); } else if (Float.class.equals(type)) { text += "Max: " + n.floatValue() + " "; ((NumericalTextField) comp).setMaximum(n.floatValue()); } } } if (defValue != null) ((NumericalTextField) comp).setText("" + defValue); } } else if (String.class.equals(type)) { if (comp == null) { comp = new JTextField(); if (defValue != null) { length = defValue.toString().length(); String s = defValue.toString().trim(); ((JTextField) comp).setColumns(length); ((JTextField) comp).setText(s); columnsSet = s.length() > 0; } } } else if (Boolean.class.equals(type)) { if (comp == null) { comp = new JCheckBox(); if (defValue != null) ((JCheckBox) comp).setSelected((Boolean) defValue); } } else if (Map.class.equals(type)) { if (comp == null) comp = new ComplexParamPane(param.getKeyType(), param.getValueType()); else comp = new ComplexParamPane(param.getKeyType(), (JComboBox) comp); } else if (List.class.equals(type)) { if (script.isIdentifier(name)) { identifier = new IdentifierParamPane(Long.class); identifier.setValues(refObjects); identifier.addDocumentListener(this); comp = identifier; } else { if (comp == null) comp = new ComplexParamPane(param.getKeyType()); else comp = new ComplexParamPane((JComboBox) comp); } } if (comp != null) { if (comp instanceof JTextField) { if (!columnsSet) ((JTextField) comp).setColumns(ScriptComponent.COLUMNS); ((JTextField) comp).getDocument().addDocumentListener(this); } if (comp instanceof ComplexParamPane) comp.addPropertyChangeListener(this); comp.setToolTipText(param.getDescription()); c = new ScriptComponent(comp, name); if (text.trim().length() > 0) c.setUnit(text); if (!(comp instanceof JComboBox || comp instanceof JCheckBox)) c.setRequired(!param.isOptional()); if (details != null && details.trim().length() > 0) c.setInfo(details); if (comp instanceof JComboBox && script.isDataType(name)) { dataTypes = (JComboBox) comp; dataTypes.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleDataTypeChanges(); } }); } grouping = param.getGrouping(); parent = param.getParent(); c.setParentIndex(parent); if (parent.length() > 0) { l = childrenMap.get(parent); if (l == null) { l = new ArrayList<ScriptComponent>(); childrenMap.put(parent, l); } l.add(c); } if (grouping.length() > 0) { c.setGrouping(grouping); c.setNameLabel(grouping); } else { c.setNameLabel(name); } if (c.hasChildren() || parent.length() == 0) { results.add(c); } componentsAll.put(c.getParameterName(), c); } } ScriptComponent key; Iterator<ScriptComponent> k = results.iterator(); while (k.hasNext()) { key = k.next(); grouping = key.getGrouping(); l = childrenMap.get(grouping); childrenMap.remove(grouping); if (l != null) key.setChildren(sorter.sort(l)); } if (childrenMap != null && childrenMap.size() > 0) { Iterator<String> j = childrenMap.keySet().iterator(); ScriptComponent sc; while (j.hasNext()) { parent = j.next(); sc = new ScriptComponent(); sc.setGrouping(parent); sc.setNameLabel(parent); sc.setChildren(sorter.sort(childrenMap.get(parent))); results.add(sc); } } List<ScriptComponent> sortedKeys = sorter.sort(results); k = sortedKeys.iterator(); while (k.hasNext()) { key = k.next(); components.put(key.getParameterName(), key); } setSelectedDataType(); if (identifier != null) identifier.addPropertyChangeListener(this); canRunScript(); }