Added `deleteAvatarImage` method and implementations
This commit is contained in:
parent
0e5240920f
commit
e9061b5fee
|
@ -39,6 +39,9 @@ public class FileAvatarStorageProvider implements AvatarStorageProvider {
|
||||||
public void saveAvatarImage(RealmModel realm, UserModel user, InputStream input) {
|
public void saveAvatarImage(RealmModel realm, UserModel user, InputStream input) {
|
||||||
checkRealmFolderExistence(realm.getName());
|
checkRealmFolderExistence(realm.getName());
|
||||||
File avatarFile = getAvatarFile(realm, user);
|
File avatarFile = getAvatarFile(realm, user);
|
||||||
|
logger.debugf("Saving new avatar file for user %s, file path is: %s", user.getUsername(),
|
||||||
|
avatarFile.getAbsolutePath());
|
||||||
|
|
||||||
if (!avatarFile.exists()) {
|
if (!avatarFile.exists()) {
|
||||||
try {
|
try {
|
||||||
avatarFile.createNewFile();
|
avatarFile.createNewFile();
|
||||||
|
@ -65,6 +68,12 @@ public class FileAvatarStorageProvider implements AvatarStorageProvider {
|
||||||
public InputStream loadAvatarImage(RealmModel realm, UserModel user) {
|
public InputStream loadAvatarImage(RealmModel realm, UserModel user) {
|
||||||
checkRealmFolderExistence(realm.getName());
|
checkRealmFolderExistence(realm.getName());
|
||||||
File avatarFile = getAvatarFile(realm, user);
|
File avatarFile = getAvatarFile(realm, user);
|
||||||
|
if (avatarFile.exists()) {
|
||||||
|
logger.debugf("Loading avatar file for user %s, file path is: %s", user.getUsername(),
|
||||||
|
avatarFile.getAbsolutePath());
|
||||||
|
} else {
|
||||||
|
logger.debugf("Avatar file not found for user %s", user.getUsername());
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
return new FileInputStream(avatarFile);
|
return new FileInputStream(avatarFile);
|
||||||
} catch (FileNotFoundException e) {
|
} catch (FileNotFoundException e) {
|
||||||
|
@ -78,6 +87,20 @@ public class FileAvatarStorageProvider implements AvatarStorageProvider {
|
||||||
useEmailAsFilename ? user.getEmail() : user.getUsername());
|
useEmailAsFilename ? user.getEmail() : user.getUsername());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteAvatarImage(RealmModel realm, UserModel user) {
|
||||||
|
checkRealmFolderExistence(realm.getName());
|
||||||
|
File avatarFile = getAvatarFile(realm, user);
|
||||||
|
if (avatarFile.exists()) {
|
||||||
|
logger.debugf("Deleting avatar file for user %s, file path is: %s", user.getUsername(),
|
||||||
|
avatarFile.getAbsolutePath());
|
||||||
|
|
||||||
|
avatarFile.delete();
|
||||||
|
} else {
|
||||||
|
logger.debugf("Avatar file to delete not found for user %s", user.getUsername());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void close() {
|
public void close() {
|
||||||
// NOOP
|
// NOOP
|
||||||
|
|
|
@ -52,6 +52,12 @@ public class UserAttributeAvatarStorageProvider implements AvatarStorageProvider
|
||||||
byte[] decoded = base64EncodedImage != null ? Base64.getDecoder().decode(base64EncodedImage) : new byte[0];
|
byte[] decoded = base64EncodedImage != null ? Base64.getDecoder().decode(base64EncodedImage) : new byte[0];
|
||||||
return new ByteArrayInputStream(decoded);
|
return new ByteArrayInputStream(decoded);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteAvatarImage(RealmModel realm, UserModel user) {
|
||||||
|
logger.debugf("Removing avatar image user's attribute: %s", userAttribute);
|
||||||
|
user.removeAttribute(userAttribute);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void close() {
|
public void close() {
|
||||||
|
|
|
@ -12,4 +12,6 @@ public interface AvatarStorageProvider extends Provider {
|
||||||
|
|
||||||
InputStream loadAvatarImage(RealmModel realm, UserModel user);
|
InputStream loadAvatarImage(RealmModel realm, UserModel user);
|
||||||
|
|
||||||
|
void deleteAvatarImage(RealmModel realm, UserModel user);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue