com.ibm.passwordrules.standard
Class MinDistinctCharacters

java.lang.Object
  |
  +--com.ibm.passwordrules.LexicalRule
        |
        +--com.ibm.passwordrules.standard.MinDistinctCharacters
All Implemented Interfaces:
java.lang.Cloneable, Rule, java.io.Serializable

public class MinDistinctCharacters
extends LexicalRule

This class implements built-in rule for restricting the minimum number of unique characters.

See Also:
Serialized Form

Field Summary
static java.lang.String INSUFFICIENT_UNIQUE_CHARS
          Constant representing a message key in a property file
 
Fields inherited from class com.ibm.passwordrules.LexicalRule
DEFAULT_MAX_SEQUENTIAL_CHARACTERS, LOWER_CASE_ONLY, UPPER_CASE_ONLY
 
Constructor Summary
MinDistinctCharacters(int min)
          Constructor accepting int parameter representing the minimum number of distinct characters.
 
Method Summary
 void constrain(PasswordGenerator generator)
          Constrain the password generator to allowed values.
 int getMin()
          Return the minimum number of distinct characters.
 boolean join(Rule rule)
          Try to join the specified rule with this one.
 boolean validate(java.lang.String password, ValidationInfo validationInfo)
          Validate the given password using the given validation info.
 
Methods inherited from class com.ibm.passwordrules.LexicalRule
getParameter, setParameter, validateSafe
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INSUFFICIENT_UNIQUE_CHARS

public static final java.lang.String INSUFFICIENT_UNIQUE_CHARS
Constant representing a message key in a property file

See Also:
Constant Field Values
Constructor Detail

MinDistinctCharacters

public MinDistinctCharacters(int min)
Constructor accepting int parameter representing the minimum number of distinct characters.

Parameters:
min - int value representing the minimum number of distinct characters.
Method Detail

getMin

public int getMin()
Return the minimum number of distinct characters.

Returns:
int value representing the minimum number of distinct characters.

constrain

public void constrain(PasswordGenerator generator)
Constrain the password generator to allowed values.

Specified by:
constrain in interface Rule
Overrides:
constrain in class LexicalRule
Parameters:
generator - including a character template to constrain. This method has an empty implementation. The cosntraining in the case of this rule will be done via the LenthConstraint method if length constraining rule is used.

validate

public boolean validate(java.lang.String password,
                        ValidationInfo validationInfo)
                 throws InvalidPasswordException
Validate the given password using the given validation info.

Parameters:
validationInfo - contains contextual information about the password being validated.
password - Password to validate.
Returns:
always return true
Throws:
InvalidPasswordException - thrown when password is invalid.

join

public boolean join(Rule rule)
             throws IncompatibleRulesException
Try to join the specified rule with this one. The more restrictive rule takes precedence.

Parameters:
rule - The rule to be joined with this one.
Returns:
True if the rule was successfully joined.
Throws:
IncompatibleRulesException - Thrown when given rule cannot be joined because it is not compatible.


IBM Tivoli Identity Manager 4.6
© Copyright International Business Machines Corporation 2005. All rights reserved. US Government Users Restricted Rights Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.