PropertyType.DIMENSION_TYPE );
IPropertyType.DIMENSION_TYPE );
	public Object validateValue( Module module, PropertyDefn defn, Object value )			throws PropertyValueException	{		if ( value == null )		{			logger.log( Level.FINE, "The input value object is null." ); //$NON-NLS-1$			return null;		}		if ( value instanceof String )			return validateInputString( module, defn, (String) value );		if ( value instanceof DimensionValue )		{			if ( !StringUtil.isBlank( ( (DimensionValue) value ).getUnits( ) ) )			{				logger						.log(								Level.FINE,								"Validate the dimension value with defined unit " + value ); //$NON-NLS-1$				return value;			}			logger.log( Level.FINE,					"return dimension value with default unit " + value ); //$NON-NLS-1$			return new DimensionValue(					( (DimensionValue) value ).getMeasure( ), getDefaultUnit(							module, defn ) );		}		if ( value instanceof Integer )			return fromDouble( module, defn, ( (Integer) value ).intValue( ) );		if ( value instanceof Double )			return fromDouble( module, defn, ( (Double) value ).doubleValue( ) );		if ( value instanceof BigDecimal )			return fromDouble( module, defn, ( (BigDecimal) value )					.doubleValue( ) );		logger.log( Level.SEVERE, "invalid dimension value type:" + value ); //$NON-NLS-1$		throw new PropertyValueException( value,				PropertyValueException.DESIGN_EXCEPTION_INVALID_VALUE,				PropertyType.DIMENSION_TYPE );	}