@ Override public UnitValue convert ( UnitValue value ) { Unit src = value . unit ( ) ; switch ( src . category ( ) ) { case CONCENTR : case LIGHT : // Not available break ; case ACCELERATION : return convert ( value , Unit . METER_PER_SECOND_SQUARED , UnitFactors . ACCELERATION ) ; case ANGLE : return convert ( value , UnitFactorSets . ANGLE ) ; case AREA : return convert ( value , areaFactors ( ) ) ; case CONSUMPTION : return convert ( value , consumptionUnit ( ) ) ; case DIGITAL : return convert ( value , UnitFactorSets . DIGITAL_BYTES ) ; case DURATION : return convert ( value , UnitFactorSets . DURATION ) ; case ELECTRIC : return convert ( value , UnitFactorSets . ELECTRIC ) ; case ENERGY : return convert ( value , energyFactors ( ) ) ; case FREQUENCY : return convert ( value , UnitFactorSets . FREQUENCY ) ; case LENGTH : return convert ( value , lengthFactors ( ) ) ; case MASS : return convert ( value , massFactors ( ) ) ; case POWER : return convert ( value , UnitFactorSets . POWER ) ; case PRESSURE : return convert ( value , Unit . MILLIBAR ) ; case SPEED : return convert ( value , speedUnit ( ) ) ; case TEMPERATURE : return convert ( value , temperatureUnit ( ) ) ; case VOLUME : return convert ( value , volumeFactors ( ) ) ; } return value ; }
Convert the given unit value into the best unit for its category relative to the current measurement system .