Allow extendo customizo.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@2064 6335cc39-0255-0410-8fd6-9bcaacd3b74c
This commit is contained in:
@@ -19,26 +19,12 @@ public class Username
|
|||||||
public static final String NAME_REGEX = "^[_A-Za-z0-9]*$";
|
public static final String NAME_REGEX = "^[_A-Za-z0-9]*$";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a username instance. Usernames must consist only of
|
* Creates a username instance.
|
||||||
* characters that match the following regular expression:
|
|
||||||
* <code>[_A-Za-z0-9]+</code> and be longer than two characters.
|
|
||||||
*/
|
*/
|
||||||
public Username (String username)
|
public Username (String username)
|
||||||
throws InvalidUsernameException
|
throws InvalidUsernameException
|
||||||
{
|
{
|
||||||
// check length
|
validateName(username);
|
||||||
if (username.length() < MINIMUM_USERNAME_LENGTH) {
|
|
||||||
throw new InvalidUsernameException("error.username_too_short");
|
|
||||||
}
|
|
||||||
if (username.length() > MAXIMUM_USERNAME_LENGTH) {
|
|
||||||
throw new InvalidUsernameException("error.username_too_long");
|
|
||||||
}
|
|
||||||
|
|
||||||
// check that it's only valid characters
|
|
||||||
if (!username.matches(NAME_REGEX)) {
|
|
||||||
throw new InvalidUsernameException("error.invalid_username");
|
|
||||||
}
|
|
||||||
|
|
||||||
_username = username;
|
_username = username;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -54,5 +40,27 @@ public class Username
|
|||||||
return _username;
|
return _username;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validates our username. The default implementation requires that usernames consist only of
|
||||||
|
* characters that match the {@link #NAME_REGEX} regular expression and be between {@link
|
||||||
|
* #MINIMUM_USERNAME_LENGTH} and {@link #MAXIMUM_USERNAME_LENGTH} characters.
|
||||||
|
*/
|
||||||
|
protected void validateName (String username)
|
||||||
|
throws InvalidUsernameException
|
||||||
|
{
|
||||||
|
// check length
|
||||||
|
if (username.length() < MINIMUM_USERNAME_LENGTH) {
|
||||||
|
throw new InvalidUsernameException("error.username_too_short");
|
||||||
|
}
|
||||||
|
if (username.length() > MAXIMUM_USERNAME_LENGTH) {
|
||||||
|
throw new InvalidUsernameException("error.username_too_long");
|
||||||
|
}
|
||||||
|
|
||||||
|
// check that it's only valid characters
|
||||||
|
if (!username.matches(NAME_REGEX)) {
|
||||||
|
throw new InvalidUsernameException("error.invalid_username");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected String _username;
|
protected String _username;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user