Skip to content

Commit

Permalink
[REFACTOR] PermissionValidator 를 빈으로 등록하지 않고 정적메서드로 선언 #218
Browse files Browse the repository at this point in the history
  • Loading branch information
Jin409 committed Sep 26, 2024
1 parent c4b5c06 commit 05f0ef5
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 13 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,10 @@ public class LeagueTeamService {
private final LeagueTeamRepository leagueTeamRepository;
private final LeagueTeamPlayerRepository leagueTeamPlayerRepository;
private final EntityUtils entityUtils;
private final PermissionValidator permissionValidator;

public void register(final Long leagueId, final Member manager, final LeagueTeamRequest.Register request) {
League league = entityUtils.getEntity(leagueId, League.class);
permissionValidator.checkPermission(league, manager);
PermissionValidator.checkPermission(league, manager);

String imgUrl = changeLogoImageUrlToBeSaved(request.logoImageUrl());
LeagueTeam leagueTeam = request.toEntity(manager, league, imgUrl);
Expand All @@ -61,7 +60,7 @@ public void update(Long leagueId, LeagueTeamRequest.Update request, Member manag

public void delete(Long leagueId, Member manager, Long teamId) {
League league = entityUtils.getEntity(leagueId, League.class);
permissionValidator.checkPermission(league, manager);
PermissionValidator.checkPermission(league, manager);

LeagueTeam leagueTeam = entityUtils.getEntity(teamId, LeagueTeam.class);
leagueTeam.isParticipate(league);
Expand Down Expand Up @@ -108,7 +107,7 @@ private void deletePlayers(LeagueTeamRequest.Update request, LeagueTeam leagueTe

public void deleteLogoImage(Long leagueId, Member manager, Long teamId) {
League league = entityUtils.getEntity(leagueId, League.class);
permissionValidator.checkPermission(league, manager);
PermissionValidator.checkPermission(league, manager);

LeagueTeam leagueTeam = entityUtils.getEntity(teamId, LeagueTeam.class);
leagueTeam.deleteLogoImageUrl();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public class TimelineService {

public void register(Member manager, Long gameId, TimelineRequest request) {
Game game = entityUtils.getEntity(gameId, Game.class);
permissionValidator.checkPermission(game, manager);
PermissionValidator.checkPermission(game, manager);

Timeline timeline = timelineMapper.toEntity(game, request);
timeline.apply();
Expand All @@ -35,7 +35,7 @@ public void register(Member manager, Long gameId, TimelineRequest request) {

public void deleteTimeline(Member manager, Long gameId, Long timelineId) {
Game game = entityUtils.getEntity(gameId, Game.class);
permissionValidator.checkPermission(game, manager);
PermissionValidator.checkPermission(game, manager);

Timeline timeline = getLastTimeline(timelineId, game);
timeline.rollback();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,10 @@
import com.sports.server.command.member.domain.Member;
import com.sports.server.common.domain.ManagedEntity;
import com.sports.server.common.exception.UnauthorizedException;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

@Service
@RequiredArgsConstructor
public class PermissionValidator {

public <T extends ManagedEntity> void checkPermission(final T entity, final Member manager) {
public static <T extends ManagedEntity> void checkPermission(final T entity, final Member manager) {
if (!entity.isManagedBy(manager)) {
throw new UnauthorizedException(AuthorizationErrorMessages.PERMISSION_DENIED);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ public List<CheerTalkResponse.ForManager> getReportedCheerTalksByLeagueId(final
final PageRequestDto pageRequest,
final Member manager) {
League league = entityUtils.getEntity(leagueId, League.class);
permissionValidator.checkPermission(league, manager);
PermissionValidator.checkPermission(league, manager);

List<CheerTalk> reportedCheerTalks = cheerTalkDynamicRepository.findReportedCheerTalksByLeagueId(
leagueId, pageRequest.cursor(), pageRequest.size()
Expand All @@ -63,7 +63,7 @@ public List<CheerTalkResponse.ForManager> getUnblockedCheerTalksByLeagueId(Long
PageRequestDto pageRequest,
Member manager) {
League league = entityUtils.getEntity(leagueId, League.class);
permissionValidator.checkPermission(league, manager);
PermissionValidator.checkPermission(league, manager);

List<CheerTalk> cheerTalks = cheerTalkDynamicRepository.findUnblockedCheerTalksByLeagueId(
leagueId, pageRequest.cursor(), pageRequest.size()
Expand Down

0 comments on commit 05f0ef5

Please sign in to comment.