Bug 315281 update copyrights for 3.6
bundles/org.eclipse.core.databinding/src/org/eclipse/core/internal/databinding/conversion/StringToNumberParser.java
/**
	 * Returns <code>true</code> if the provided <code>number</code> is in the
	 * range of a integer.
	 * 
	 * @param number
	 * @return <code>true</code> if a valid integer
	 * @throws IllegalArgumentException
	 *             if the number type is unsupported
	 */
	public static boolean inIntegerRange(Number number) {
		return checkInteger(number, 31);
	}
	/**
	 * Validates the range of the provided <code>number</code>.
	 * 
	 * @param number
	 * @param bitLength
	 *            number of bits allowed to be in range
	 * @return <code>true</code> if in range
	 */
	private static boolean checkInteger(Number number, int bitLength) {
		BigInteger bigInteger = null;
		if (number instanceof Integer || number instanceof Long) {
			bigInteger = BigInteger.valueOf(number.longValue());
		} else if (number instanceof Float || number instanceof Double) {
			double doubleValue = number.doubleValue();
			if (!Double.isNaN(doubleValue)
					&& doubleValue != Double.NEGATIVE_INFINITY
					&& doubleValue != Double.POSITIVE_INFINITY) {
				bigInteger = new BigDecimal(doubleValue).toBigInteger();