package br.com.caelum.stella.format; import java.util.regex.Pattern; /** * @author Rafael Carvalho * */ public class RenavamFormatter implements Formatter { public static final Pattern FORMATTED = Pattern.compile("(\\d{2,4}).(\\d{6})-(\\d{1})"); public static final Pattern UNFORMATTED = Pattern.compile("(\\d{2,4})(\\d{6})(\\d{1})"); private final BaseFormatter base; public RenavamFormatter() { this.base = new BaseFormatter(FORMATTED, "$1.$2-$3", UNFORMATTED, "$1$2$3"); } @Override public String format(String renavam) throws IllegalArgumentException { return base.format(renavam); } @Override public String unformat(String renavam) throws IllegalArgumentException { return base.unformat(renavam); } @Override public boolean isFormatted(String value) { return base.isFormatted(value); } @Override public boolean canBeFormatted(String value) { return base.canBeFormatted(value); } }