diff --git a/PasswordLockoutRequirement.java b/PasswordLockoutRequirement.java new file mode 100644 index 0000000..ecf82ed --- /dev/null +++ b/PasswordLockoutRequirement.java @@ -0,0 +1,31 @@ +public class PasswordLockoutRequirement extends Requirement{ + private String _username; + private int _attempts; + private CheckStatus _status; + + + public PasswordLockoutRequirement(String username){ + this._username = username; + this._attempts = 0; + this._status = CheckStatus.INCOMPLETE; + } + + public void recordFailedAttempt(){ + if (_attempts < 5){_attempts++;} + else { + _status = CheckStatus.FAIL; + System.out.println("Too many attempts."); + } + } + + public void resetFailedAttempts(){ + _attempts = 0; + _status = CheckStatus.INCOMPLETE; + } + + @Override + public CheckStatus check() { + + return _status; + } +} diff --git a/PasswordMinimumLength.java b/PasswordMinimumLength.java index e3262ca..278928f 100644 --- a/PasswordMinimumLength.java +++ b/PasswordMinimumLength.java @@ -1,6 +1,3 @@ - -import rqcode.concepts.Requirement; - public class PasswordMinimumLength extends Requirement { private static final int MIN_LENGTH = 8; private static final int MAX_LENGTH = 64; diff --git a/PasswordPolicy.java b/PasswordPolicy.java index 251ba3b..d257ee1 100644 --- a/PasswordPolicy.java +++ b/PasswordPolicy.java @@ -1,6 +1,3 @@ -package rqcode.tutorial.tutorial_new; -import rqcode.concepts.CombinedRequirements; -import rqcode.concepts.Requirement; import java.util.Arrays; import java.util.List;