EurCentUtils.java

package com.tdmconsult.ete.utils;

import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Objects;
import java.util.Optional;
import lombok.experimental.UtilityClass;
import org.jspecify.annotations.Nullable;

@UtilityClass
public class EurCentUtils {

    public @Nullable BigDecimal toBigDecimal(final @Nullable Long cents) {
        return Optional.ofNullable(cents)
                .map(x -> BigDecimal.valueOf(Objects.requireNonNull(cents))
                        .divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP))
                .orElse(null);
    }
}