package org.droidplanner.android.utils.unit.providers.length;
import org.beyene.sius.operation.Operation;
import org.beyene.sius.unit.UnitIdentifier;
import org.beyene.sius.unit.impl.FactoryLength;
import org.beyene.sius.unit.length.Constants;
import org.beyene.sius.unit.length.Foot;
import org.beyene.sius.unit.length.LengthUnit;
import org.beyene.sius.unit.length.Meter;
/**
* Created by Fredia Huya-Kouadio on 1/20/15.
*/
public class ImperialLengthUnitProvider extends LengthUnitProvider {
@Override
public LengthUnit fromBaseToTarget(Meter base) {
double absBase = Math.abs(base.getValue());
if (absBase >= Constants.METER_PER_MILE)
return Operation.convert(base, UnitIdentifier.MILE);
else
return Operation.convert(base, UnitIdentifier.FOOT);
}
@Override
public LengthUnit boxTargetValue(double valueInTargetUnits) {
return FactoryLength.foot(valueInTargetUnits);
}
}