Archived
Refactor some code in image service.
This commit is contained in:
@@ -6,13 +6,12 @@ import org.codiki.core.entities.persistence.User;
|
||||
import org.codiki.core.repositories.ImageRepository;
|
||||
import org.codiki.core.repositories.UserRepository;
|
||||
import org.codiki.core.services.FileUploadService;
|
||||
import org.codiki.core.services.IllegalAccessException;
|
||||
import org.codiki.core.services.UserService;
|
||||
import org.springframework.core.io.Resource;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.security.Principal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
@@ -48,24 +47,23 @@ public class ImageService {
|
||||
this.imageRepository = imageRepository;
|
||||
}
|
||||
|
||||
/**
|
||||
* Save the uploaded file in persistence folder and set it as profil picture to uploader-user.
|
||||
* @param pFile Uploaded file
|
||||
* @param pPrincipal Uploader-user.
|
||||
* @return Name of the uploaded file.
|
||||
* @throws IllegalAccessException If the user isn't allowed to upload file
|
||||
*/
|
||||
public String uploadAvatar(final MultipartFile pFile,
|
||||
final HttpServletResponse pResponse,
|
||||
final Principal pPrincipal) throws IOException {
|
||||
final Principal pPrincipal) throws IllegalAccessException {
|
||||
final String avatarFileName = fileUploadService.uploadProfileImage(pFile);
|
||||
|
||||
final Optional<User> connectedUser = userService.getUserByPrincipal(pPrincipal);
|
||||
if(connectedUser.isPresent()) {
|
||||
final Optional<User> userFromDb = userRepository.findById(connectedUser.get().getId());
|
||||
if(userFromDb.isPresent()) {
|
||||
userFromDb.get().setImage(avatarFileName);
|
||||
userRepository.save(userFromDb.get());
|
||||
} else {
|
||||
pResponse.sendError(HttpServletResponse.SC_UNAUTHORIZED);
|
||||
}
|
||||
} else {
|
||||
pResponse.sendError(HttpServletResponse.SC_UNAUTHORIZED);
|
||||
}
|
||||
|
||||
|
||||
userService.getUserByPrincipal(pPrincipal)
|
||||
.ifPresentOrElse(user -> {
|
||||
user.setImage(avatarFileName);
|
||||
userRepository.save(user);
|
||||
}, IllegalAccessException::new);
|
||||
|
||||
return avatarFileName;
|
||||
}
|
||||
|
||||
@@ -73,16 +71,13 @@ public class ImageService {
|
||||
final String imageFileName = fileUploadService.uploadImage(pFile);
|
||||
|
||||
userService.getUserByPrincipal(pPrincipal)
|
||||
.map(User::getId)
|
||||
.map(userRepository::findById)
|
||||
.orElseThrow(NoSuchElementException::new)
|
||||
.ifPresent(user -> {
|
||||
.ifPresentOrElse(user -> {
|
||||
final Image image = new Image();
|
||||
image.setLink(imageFileName);
|
||||
image.setDate(new Date());
|
||||
image.setUser(user);
|
||||
imageRepository.save(image);
|
||||
});
|
||||
}, IllegalAccessException::new);
|
||||
|
||||
return imageFileName;
|
||||
}
|
||||
@@ -96,13 +91,12 @@ public class ImageService {
|
||||
}
|
||||
|
||||
public List<ImageDTO> getUserImages(final Principal pPrincipal) {
|
||||
return userService.getUserByPrincipal(pPrincipal)
|
||||
.map(User::getId)
|
||||
.map(imageRepository::getByUserId)
|
||||
.orElseThrow(NoSuchElementException::new)
|
||||
.stream()
|
||||
.map(ImageDTO::new)
|
||||
.collect(Collectors.toList());
|
||||
return imageRepository.getByUserId(userService.getUserByPrincipal(pPrincipal)
|
||||
.map(User::getId)
|
||||
.orElseThrow(NoSuchElementException::new))
|
||||
.stream()
|
||||
.map(ImageDTO::new)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
public Optional<ImageDTO> getImageDetails(final String pImageLink) {
|
||||
|
||||
Reference in New Issue
Block a user