summaryrefslogtreecommitdiffhomepage
path: root/backend/src/main/java/com/blog/web/services
diff options
context:
space:
mode:
authorrealtradam <[email protected]>2024-07-28 20:00:49 -0400
committerrealtradam <[email protected]>2024-07-28 20:00:49 -0400
commitfc34d9853386b6dbf270a10862a47a052f1fb151 (patch)
tree20ebca59324d88eab8b867306dd251a27cd91699 /backend/src/main/java/com/blog/web/services
parentc24839e8f8b4b6868f8ee383b589ce01dcdc81e1 (diff)
downloadspring-blog-dev.tar.gz
spring-blog-dev.zip
code cleanupdev
Diffstat (limited to 'backend/src/main/java/com/blog/web/services')
-rw-r--r--backend/src/main/java/com/blog/web/services/ArticleService.java8
-rw-r--r--backend/src/main/java/com/blog/web/services/impl/ArticleServiceImpl.java44
-rw-r--r--backend/src/main/java/com/blog/web/services/impl/UserServiceImpl.java9
3 files changed, 38 insertions, 23 deletions
diff --git a/backend/src/main/java/com/blog/web/services/ArticleService.java b/backend/src/main/java/com/blog/web/services/ArticleService.java
index 4bf3028..5ec0175 100644
--- a/backend/src/main/java/com/blog/web/services/ArticleService.java
+++ b/backend/src/main/java/com/blog/web/services/ArticleService.java
@@ -4,11 +4,11 @@ import com.blog.web.dto.ArticleDto;
import com.blog.web.dto.ArticlePublicDto;
import com.blog.web.models.Article;
-import java.util.List;
import java.util.Optional;
+import java.util.Set;
public interface ArticleService {
- List<ArticlePublicDto> findAllArticles();
+ Set<ArticlePublicDto> findAllArticles();
Optional<Article> saveArticle(ArticleDto article);
@@ -18,9 +18,7 @@ public interface ArticleService {
boolean delete(long articleId);
- //List<ArticleDto> searchArticles(String search);
-
ArticlePublicDto findArticlePublicById(long articleId);
- List<ArticlePublicDto> searchPublicArticles(String search);
+ Set<ArticlePublicDto> searchPublicArticles(String search);
}
diff --git a/backend/src/main/java/com/blog/web/services/impl/ArticleServiceImpl.java b/backend/src/main/java/com/blog/web/services/impl/ArticleServiceImpl.java
index 04cc8be..871a2bf 100644
--- a/backend/src/main/java/com/blog/web/services/impl/ArticleServiceImpl.java
+++ b/backend/src/main/java/com/blog/web/services/impl/ArticleServiceImpl.java
@@ -14,6 +14,7 @@ import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Optional;
+import java.util.Set;
import java.util.stream.Collectors;
import static com.blog.web.mappers.ArticleMapper.*;
@@ -32,9 +33,9 @@ public class ArticleServiceImpl implements ArticleService {
@Override
- public List<ArticlePublicDto> findAllArticles() {
+ public Set<ArticlePublicDto> findAllArticles() {
List<Article> articles = articleRepository.findAll();
- return articles.stream().map(ArticleMapper::mapToArticlePublicDto).collect(Collectors.toList());
+ return articles.stream().map(ArticleMapper::mapToArticlePublicDto).collect(Collectors.toSet());
}
@Override
@@ -52,28 +53,35 @@ public class ArticleServiceImpl implements ArticleService {
@Override
public Optional<ArticleDto> findArticleById(long articleId) {
final Optional<Article> otpArticle = articleRepository.findById(articleId);
- if(otpArticle.isEmpty()) {
+ if (otpArticle.isEmpty()) {
return Optional.empty();
- }
- else {
+ } else {
return Optional.of(mapToArticleDto(otpArticle.get()));
}
}
@Override
public void updateArticle(ArticleDto newArticle) {
- if(newArticle == null) { return; }
+ if (newArticle == null) {
+ return;
+ }
final Optional<ArticleDto> optExistingArticle = this.findArticleById(newArticle.getId());
- if(optExistingArticle.isEmpty()) { return; } // cant find article, give up
+ if (optExistingArticle.isEmpty()) {
+ return;
+ } // cant find article, give up
final ArticleDto existingArticle = optExistingArticle.get();
Long ownerId = existingArticle.getUserId();
final Optional<UserEntity> optUser = userService.getLoggedInUser();
- if (optUser.isEmpty()) { return; } // not logged in, not allowed to edit
+ if (optUser.isEmpty()) {
+ return;
+ } // not logged in, not allowed to edit
final UserEntity user = optUser.get();
Long userId = user.getId();
- if (!ownerId.equals(userId)) { return; } // logged in a different user, not allowed to edit
+ if (!ownerId.equals(userId)) {
+ return;
+ } // logged in a different user, not allowed to edit
final Article article = mapToArticle(newArticle);
article.setCreatedBy(user);
@@ -83,16 +91,22 @@ public class ArticleServiceImpl implements ArticleService {
@Override
public boolean delete(long articleId) {
final Optional<ArticleDto> optArticle = this.findArticleById(articleId);
- if(optArticle.isEmpty()) { return false; } // cant find article, give up
+ if (optArticle.isEmpty()) {
+ return false;
+ } // cant find article, give up
final ArticleDto article = optArticle.get();
String ownerId = article.getUsername();
final Optional<UserEntity> optUser = userService.getLoggedInUser();
- if (optUser.isEmpty()) { return false; } // not logged in, not allowed to delete
+ if (optUser.isEmpty()) {
+ return false;
+ } // not logged in, not allowed to delete
final UserEntity user = optUser.get();
String userId = user.getUsername();
- if (!ownerId.equals(userId)) { return false; } // logged in a different user, not allowed to delete
+ if (!ownerId.equals(userId)) {
+ return false;
+ } // logged in a different user, not allowed to delete
else {
articleRepository.deleteById(articleId);
return true;
@@ -105,8 +119,8 @@ public class ArticleServiceImpl implements ArticleService {
}
@Override
- public List<ArticlePublicDto> searchPublicArticles(String search) {
- List<Article> articles = articleRepository.searchArticles(search);
- return articles.stream().map(article -> mapToArticlePublicDto(article)).collect(Collectors.toList());
+ public Set<ArticlePublicDto> searchPublicArticles(String search) {
+ Set<Article> articles = articleRepository.searchArticles(search);
+ return articles.stream().map(article -> mapToArticlePublicDto(article)).collect(Collectors.toSet());
}
}
diff --git a/backend/src/main/java/com/blog/web/services/impl/UserServiceImpl.java b/backend/src/main/java/com/blog/web/services/impl/UserServiceImpl.java
index b39d15e..9ca8b0b 100644
--- a/backend/src/main/java/com/blog/web/services/impl/UserServiceImpl.java
+++ b/backend/src/main/java/com/blog/web/services/impl/UserServiceImpl.java
@@ -10,7 +10,8 @@ import com.blog.web.services.UserService;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
-import java.util.*;
+import java.util.HashSet;
+import java.util.Optional;
@Service
public class UserServiceImpl implements UserService {
@@ -26,7 +27,9 @@ public class UserServiceImpl implements UserService {
@Override
public void saveUser(RegistrationDto registrationDto) {
- final HashSet<Role> roles = (HashSet<Role>) Set.of(roleRepository.findByName("User").orElse(new Role()));
+ final HashSet<Role> roles = new HashSet<Role>() {{
+ add(roleRepository.findByName("User").get());
+ }};
userRepository.save(new UserEntity(registrationDto.getUsername(), registrationDto.getEmail(), passwordEncoder.encode(registrationDto.getPassword()), roles));
}
@@ -43,7 +46,7 @@ public class UserServiceImpl implements UserService {
public Optional<UserEntity> getLoggedInUser() {
final Optional<UserEntity> user;
Optional<String> optUsername = Optional.ofNullable(SecurityUtil.getSessionUser());
- if(optUsername.isPresent()) {
+ if (optUsername.isPresent()) {
user = this.findByUsername(optUsername.get());
} else {
user = Optional.empty();