package org.cryptocoinpartners.util; import org.cryptocoinpartners.schema.Amount; import java.math.BigDecimal; import java.math.RoundingMode; /** * This is a grouping of DiscreteAmount.RemainderHandlers for convenience * * @author Tim Olson */ public class Remainder { public static final RemainderHandler DISCARD = new RemainderHandler() { public RoundingMode getRoundingMode() { return RoundingMode.FLOOR; } }; public static final RemainderHandler TO_HOUSE = new RemainderHandler() { public void handleRemainder(Amount result, BigDecimal remainder) { // todo } public RoundingMode getRoundingMode() { return RoundingMode.FLOOR; } }; public static final RemainderHandler ROUND_EVEN = new RemainderHandler() { public RoundingMode getRoundingMode() { return RoundingMode.HALF_EVEN; } }; public static final RemainderHandler ROUND_CEILING = new RemainderHandler() { public RoundingMode getRoundingMode() { return RoundingMode.CEILING; } }; public static final RemainderHandler ROUND_FLOOR = new RemainderHandler() { public RoundingMode getRoundingMode() { return RoundingMode.FLOOR; } }; }