-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[feat] #145 ErrorStatus 및 Discord 관련 파일 생성
- Loading branch information
Showing
5 changed files
with
73 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
13 changes: 13 additions & 0 deletions
13
src/main/java/ussum/homepage/global/external/discord/DiscordFeignClient.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
package ussum.homepage.global.external.discord; | ||
|
||
import org.springframework.cloud.openfeign.FeignClient; | ||
import org.springframework.http.MediaType; | ||
import org.springframework.web.bind.annotation.PostMapping; | ||
import org.springframework.web.bind.annotation.RequestBody; | ||
import ussum.homepage.global.external.discord.dto.DiscordMessage; | ||
|
||
@FeignClient(name = "${discord.name}", url = "${discord.webhook-url}") | ||
public interface DiscordFeignClient { | ||
@PostMapping(produces = MediaType.APPLICATION_JSON_VALUE) | ||
void sendMessage(@RequestBody DiscordMessage discordMessage); | ||
} |
31 changes: 31 additions & 0 deletions
31
src/main/java/ussum/homepage/global/external/discord/DiscordUtil.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
package ussum.homepage.global.external.discord; | ||
|
||
import static ussum.homepage.global.external.discord.dto.DiscordMessage.createDiscordMessage; | ||
|
||
import feign.FeignException; | ||
import lombok.RequiredArgsConstructor; | ||
import org.springframework.stereotype.Component; | ||
import ussum.homepage.global.error.exception.GeneralException; | ||
|
||
import ussum.homepage.global.error.status.ErrorStatus; | ||
import ussum.homepage.global.external.discord.dto.DiscordMessage; | ||
import ussum.homepage.global.external.discord.dto.EventMessage; | ||
|
||
@RequiredArgsConstructor | ||
@Component | ||
public class DiscordUtil { | ||
private final DiscordFeignClient discordFeignClient; | ||
|
||
public void sendMessage(EventMessage eventMessage, String message) { | ||
DiscordMessage discordMessage = createDiscordMessage(eventMessage.getMessage() + message); | ||
sendMessageToDiscord(discordMessage); | ||
} | ||
|
||
private void sendMessageToDiscord(DiscordMessage discordMessage) { | ||
try { | ||
discordFeignClient.sendMessage(discordMessage); | ||
} catch (FeignException e) { | ||
throw new GeneralException(ErrorStatus.INVALID_DISCORD_MESSAGE); | ||
} | ||
} | ||
} |
9 changes: 9 additions & 0 deletions
9
src/main/java/ussum/homepage/global/external/discord/dto/DiscordMessage.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
package ussum.homepage.global.external.discord.dto; | ||
|
||
public record DiscordMessage( | ||
String content | ||
) { | ||
public static DiscordMessage createDiscordMessage(String message) { | ||
return new DiscordMessage(message); | ||
} | ||
} |
17 changes: 17 additions & 0 deletions
17
src/main/java/ussum/homepage/global/external/discord/dto/EventMessage.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
package ussum.homepage.global.external.discord.dto; | ||
|
||
import lombok.AccessLevel; | ||
import lombok.Getter; | ||
import lombok.RequiredArgsConstructor; | ||
|
||
@RequiredArgsConstructor(access = AccessLevel.PRIVATE) | ||
@Getter | ||
public enum EventMessage { | ||
// Error | ||
SIGN_UP_FAIL("회원가입을 실패한 사용자가 있습니다. "); | ||
|
||
// Success | ||
// TO DO : 성공 메시지 추가 | ||
|
||
private final String message; | ||
} |