ReferenceNumberConverter.java 939 Bytes
package fi.insomnia.bortal.web.converter;

import java.math.BigInteger;

import javax.enterprise.context.RequestScoped;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.inject.Named;

import fi.insomnia.bortal.utilities.BillUtils;

@Named("referenceNumberConverter")
@RequestScoped
public class ReferenceNumberConverter implements Converter {

	@Override
	public Object getAsObject(FacesContext context, UIComponent component, String value) {
		if (value != null) {
			BigInteger i = new BigInteger(value);
			if (i.compareTo(BigInteger.ZERO) > 0) {
				return i.divide(BigInteger.TEN).intValue();
			}
		}
		return null;
	}

	@Override
	public String getAsString(FacesContext context, UIComponent component, Object value) {
		if (value instanceof Integer) {
			return BillUtils.createReferenceNumber((Integer) value).toString();
		}
		return "0";
	}

}