PropertyType.DIMENSION_TYPE );
IPropertyType.DIMENSION_TYPE );
	private static DimensionValue doParse( String value, boolean localeDependent )			throws PropertyValueException	{		value = StringUtil.trimString( value );		if ( value == null )			return null;		String units = validateUnit( value );		int indexOfFirstLetter = indexOfUnitLetter( value );		if ( indexOfFirstLetter != -1 )		{			value = StringUtil.trimString( value.substring( 0,					indexOfFirstLetter ) );			if ( value == null )				return null;		}		double measure = 0;		try		{			if ( localeDependent )			{				// Parse in locale-dependent way.				// Use the decimal separator from the locale.				validateDecimalValue( value );				Number number = NumberFormat.getNumberInstance(						ThreadResources.getLocale( ).toLocale( ) )						.parse( value );				measure = number.doubleValue( );			}			else			{				measure = Double.parseDouble( value );			}		}		catch ( Exception e )		{			throw new PropertyValueException( value,					PropertyValueException.DESIGN_EXCEPTION_INVALID_VALUE,					PropertyType.DIMENSION_TYPE );		}		return new DimensionValue( measure, units );	}