in src/main/java/org/apache/maven/report/projectinfo/avatars/GravatarProvider.java [76:97]
private String getAvatarUrl(String email, String defaultAvatar) {
if (email == null || email.isEmpty()) {
return getSpacerGravatarUrl();
}
try {
email = email.trim().toLowerCase(Locale.ROOT);
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(email.getBytes());
byte[] byteData = md.digest();
StringBuilder sb = new StringBuilder();
final int lowerEightBitsOnly = 0xff;
for (byte aByteData : byteData) {
sb.append(Integer.toString((aByteData & lowerEightBitsOnly) + 0x100, 16)
.substring(1));
}
return baseUrl + sb + ".jpg?d=" + defaultAvatar + "&" + AVATAR_SIZE;
} catch (NoSuchAlgorithmException e) {
LOGGER.warn("Error while getting MD5 hash, use default image: {}", e.getMessage());
return getSpacerGravatarUrl();
}
}