package com.intrbiz.bergamot.ui.security.password.check;
import java.util.Set;
import java.util.TreeSet;
/**
*
*/
public class UniqueCharactersChecker implements PasswordChecker
{
private final int minUniqueCharacters;
public UniqueCharactersChecker(int minUniqueCharacters)
{
super();
this.minUniqueCharacters = minUniqueCharacters;
}
public void check(String password) throws BadPassword
{
Set<Character> unqChars = new TreeSet<Character>();
for (char c : password.toCharArray())
{
unqChars.add(new Character(c));
}
if (unqChars.size() < this.minUniqueCharacters)
throw new BadPassword("Not enough unique characters");
}
public String toString()
{
return "Unique Characters Checker (" + this.minUniqueCharacters + ")";
}
}