hotfix/ 검색이 안되는 문제 해결
This commit is contained in:
@@ -67,7 +67,7 @@ public class ArticleRepositoryAdapter implements ArticleRepositoryPort {
|
||||
|
||||
@Override
|
||||
public Page<Article> findAllByKeywordOrderById(Pageable pageable, String keyword) {
|
||||
return jpaArticleRepository.findAllByArticleTagsOrderById(pageable, keyword);
|
||||
return jpaArticleRepository.findAllByKeywordOrderById(pageable, keyword);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -19,10 +19,13 @@ import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
import org.springframework.data.domain.Slice;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Component
|
||||
@Transactional(readOnly = true)
|
||||
@RequiredArgsConstructor
|
||||
public class ArticleQueries implements ArticleQueriesUseCase {
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Component
|
||||
@Transactional
|
||||
@Transactional(readOnly = true)
|
||||
@RequiredArgsConstructor
|
||||
public class TagsQueries implements TagsQueriesUseCase {
|
||||
private final TagRepositoryPort tagRepositoryPort;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package myblog.blog.article.domain;
|
||||
|
||||
import myblog.blog.shared.BasicEntity;
|
||||
import myblog.blog.shared.domain.BasicEntity;
|
||||
import myblog.blog.category.domain.Category;
|
||||
import myblog.blog.comment.domain.Comment;
|
||||
import myblog.blog.member.doamin.Member;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package myblog.blog.article.domain;
|
||||
|
||||
import lombok.Getter;
|
||||
import myblog.blog.shared.BasicEntity;
|
||||
import myblog.blog.shared.domain.BasicEntity;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package myblog.blog.article.domain;
|
||||
|
||||
import lombok.Getter;
|
||||
import myblog.blog.shared.BasicEntity;
|
||||
import myblog.blog.shared.domain.BasicEntity;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.ArrayList;
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
package myblog.blog.article.domain;
|
||||
|
||||
import lombok.Getter;
|
||||
import myblog.blog.shared.BasicEntity;
|
||||
import myblog.blog.shared.domain.BasicEntity;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/*
|
||||
- 임시 아티클 저장 Entity
|
||||
|
||||
@@ -14,7 +14,7 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
@Transactional(readOnly = true)
|
||||
@RequiredArgsConstructor
|
||||
public class CategoryQueries implements CategoryQueriesUseCase {
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ package myblog.blog.category.domain;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
|
||||
import myblog.blog.shared.BasicEntity;
|
||||
import myblog.blog.shared.domain.BasicEntity;
|
||||
import myblog.blog.article.domain.Article;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
@@ -13,7 +13,7 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
@Transactional(readOnly = true)
|
||||
@RequiredArgsConstructor
|
||||
public class CommentQueries implements CommentQueriesUseCase {
|
||||
private final CommentRepositoryPort commentRepositoryPort;
|
||||
|
||||
@@ -3,7 +3,7 @@ package myblog.blog.comment.domain;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import myblog.blog.article.domain.Article;
|
||||
import myblog.blog.shared.BasicEntity;
|
||||
import myblog.blog.shared.domain.BasicEntity;
|
||||
import myblog.blog.member.doamin.Member;
|
||||
import org.hibernate.annotations.OnDelete;
|
||||
import org.hibernate.annotations.OnDeleteAction;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package myblog.blog.infra.config;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import myblog.blog.shared.exception.LoginFailHandler;
|
||||
import myblog.blog.infra.exception.LoginFailHandler;
|
||||
import myblog.blog.member.doamin.Role;
|
||||
import myblog.blog.member.application.Oauth2MemberService;
|
||||
import org.springframework.boot.autoconfigure.security.servlet.PathRequest;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package myblog.blog.shared.exception;
|
||||
package myblog.blog.infra.exception;
|
||||
|
||||
import myblog.blog.comment.adapter.incomming.InvalidCommentRequestException;
|
||||
import org.springframework.http.HttpStatus;
|
||||
@@ -1,4 +1,4 @@
|
||||
package myblog.blog.shared.exception;
|
||||
package myblog.blog.infra.exception;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.security.authentication.AuthenticationServiceException;
|
||||
@@ -10,7 +10,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
@Transactional(readOnly = true)
|
||||
@RequiredArgsConstructor
|
||||
public class MemberQueries implements MemberQueriesUseCase {
|
||||
private final MemberRepositoryPort memberRepositoryPort;
|
||||
|
||||
@@ -27,7 +27,6 @@ public class Oauth2MemberService extends DefaultOAuth2UserService {
|
||||
- OAuth2 인증 로그인
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public OAuth2User loadUser(OAuth2UserRequest userRequest) throws OAuth2AuthenticationException {
|
||||
OAuth2User oAuth2User = super.loadUser(userRequest);
|
||||
Oauth2UserInfo userInfo =
|
||||
|
||||
@@ -40,9 +40,7 @@ public class UserInfoFactory {
|
||||
- 팩토리 메소드
|
||||
*/
|
||||
public Oauth2UserInfo makeOauth2UserInfoOf(OAuth2UserRequest oAuth2UserRequest, OAuth2User oAuth2User) {
|
||||
|
||||
Optional<ProviderType> providerTypeOptional = fromString(oAuth2UserRequest.getClientRegistration().getRegistrationId());
|
||||
|
||||
Optional<ProviderType> providerTypeOptional = createEnumFromString(oAuth2UserRequest.getClientRegistration().getRegistrationId());
|
||||
return userInfoFactoryMap
|
||||
.get(providerTypeOptional.orElseThrow(() -> new IllegalArgumentException("지원하지 않는 소셜 로그인 API 제공자입니다.")))
|
||||
.apply(oAuth2User);
|
||||
@@ -53,7 +51,7 @@ public class UserInfoFactory {
|
||||
- String을 열거타입으로 컨버팅 로직
|
||||
존재하지 않는 요청위험 고려해서 Optional처리
|
||||
*/
|
||||
private Optional<ProviderType> fromString(String provider){
|
||||
private Optional<ProviderType> createEnumFromString(String provider){
|
||||
return Optional.ofNullable(stringToEnum.get(provider));
|
||||
}
|
||||
|
||||
|
||||
@@ -3,9 +3,10 @@ package myblog.blog.member.doamin;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import myblog.blog.article.domain.Article;
|
||||
import myblog.blog.shared.BasicEntity;
|
||||
import myblog.blog.comment.domain.Comment;
|
||||
import myblog.blog.shared.domain.BasicEntity;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.ArrayList;
|
||||
|
||||
@@ -8,11 +8,13 @@ import myblog.blog.comment.application.port.incomming.response.CommentDtoForLayo
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.ui.Model;
|
||||
import java.util.List;
|
||||
|
||||
@Component
|
||||
@RequiredArgsConstructor
|
||||
@Transactional(readOnly = true)
|
||||
public class LayoutRenderingQueries implements LayoutRenderingUseCase {
|
||||
|
||||
private final CommentQueriesUseCase commentQueriesUseCase;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package myblog.blog.shared;
|
||||
package myblog.blog.shared.domain;
|
||||
|
||||
import lombok.Getter;
|
||||
import org.springframework.data.annotation.CreatedDate;
|
||||
@@ -0,0 +1,9 @@
|
||||
//package myblog.blog.member.application
|
||||
//
|
||||
//import org.junit.jupiter.api.Test
|
||||
//
|
||||
//class UserInfoFactoryTest {
|
||||
//
|
||||
// @Test
|
||||
// fun ``
|
||||
//}
|
||||
@@ -1,8 +1,7 @@
|
||||
package myblog.blog.rss
|
||||
package myblog.blog.seo.application
|
||||
|
||||
import myblog.blog.article.domain.Article
|
||||
import myblog.blog.article.application.ArticleService
|
||||
import myblog.blog.seo.application.RssService
|
||||
import myblog.blog.article.application.port.incomming.ArticleUseCase
|
||||
import org.assertj.core.api.Assertions.assertThat
|
||||
import org.junit.jupiter.api.Test
|
||||
import org.junit.jupiter.api.extension.ExtendWith
|
||||
@@ -18,7 +17,7 @@ import java.util.*
|
||||
class RssServiceTests {
|
||||
|
||||
@Mock
|
||||
lateinit var articleService: ArticleService
|
||||
lateinit var articleService: ArticleUseCase
|
||||
@InjectMocks
|
||||
lateinit var rssService: RssService
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
package myblog.blog.sitemap
|
||||
package myblog.blog.seo.application
|
||||
|
||||
import myblog.blog.article.domain.Article
|
||||
import myblog.blog.article.application.ArticleService
|
||||
import myblog.blog.article.application.port.incomming.ArticleUseCase
|
||||
import myblog.blog.seo.application.SiteMapService
|
||||
import myblog.blog.category.domain.Category
|
||||
import myblog.blog.category.appliacation.CategoryService
|
||||
import myblog.blog.category.appliacation.port.incomming.CategoryUseCase
|
||||
import myblog.blog.seo.application.port.incomming.SiteMapUseCase
|
||||
import org.assertj.core.api.Assertions.assertThat
|
||||
import org.junit.jupiter.api.Test
|
||||
//import org.junit.Test
|
||||
@@ -22,9 +25,9 @@ import java.util.*
|
||||
class SiteMapServiceTests {
|
||||
|
||||
@Mock
|
||||
lateinit var articleService: ArticleService
|
||||
lateinit var articleService: ArticleUseCase
|
||||
@Mock
|
||||
lateinit var categoryService: CategoryService
|
||||
lateinit var categoryService: CategoryUseCase
|
||||
@InjectMocks
|
||||
lateinit var siteMapService: SiteMapService
|
||||
|
||||
Reference in New Issue
Block a user