code: 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");
          }
      }
docs: 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.