diff --git a/src/main/java/com/palnet/server/command/SocketCommand.java b/src/main/java/com/palnet/server/command/SocketCommand.java index b8b20c2..ea9ddf8 100644 --- a/src/main/java/com/palnet/server/command/SocketCommand.java +++ b/src/main/java/com/palnet/server/command/SocketCommand.java @@ -8,6 +8,7 @@ import com.palnet.comn.utils.ControlCacheUtils; import com.palnet.comn.utils.DateUtils; import com.palnet.comn.utils.JsonUtils; import com.palnet.server.codec.SocketPayload; +import com.palnet.server.task.server.service.TaskServerService; import com.palnet.server.task.wb.service.TaskWbService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -25,11 +26,13 @@ public class SocketCommand { private Logger logger = LoggerFactory.getLogger(getClass()); // private MessageProducer messageProducer; private TaskWbService taskWbService; + private TaskServerService taskServerService; private Environment env; public SocketCommand() { // this.messageProducer = (MessageProducer) ContextUtils.getBean("messageProducer"); this.taskWbService = (TaskWbService) ContextUtils.getBean("taskWbService"); + this.taskServerService = (TaskServerService) ContextUtils.getBean("taskServerService"); this.env = (Environment) ContextUtils.getBean("environment"); } @@ -162,6 +165,7 @@ public class SocketCommand { // STEP 3. 화면에 표출할 정보 WebSocket 전달 // messageProducer.sendControlMessage(model); + taskServerService.sendData(model); } else { logger.error("좌표 정보가 존재하지 않습니다."); @@ -272,6 +276,7 @@ public class SocketCommand { if ("PA".equals(model.getObjectId().substring(0, 2))) { // messageProducer.sendControlHistoryMessage(model); + taskWbService.sendData(model); } // STEP 3. 화면에 표출할 정보 WebSocket 전달 @@ -386,6 +391,7 @@ public class SocketCommand { if ("PA".equals(model.getObjectId().substring(0, 2))) { // messageProducer.sendControlHistoryMessage(model); + taskWbService.sendData(model); } // STEP 3. 화면에 표출할 정보 WebSocket 전달 diff --git a/src/main/java/com/palnet/server/task/server/service/TaskServerService.java b/src/main/java/com/palnet/server/task/server/service/TaskServerService.java new file mode 100644 index 0000000..b8410e1 --- /dev/null +++ b/src/main/java/com/palnet/server/task/server/service/TaskServerService.java @@ -0,0 +1,61 @@ +package com.palnet.server.task.server.service; + +import com.palnet.comn.model.GPModel; +import com.palnet.comn.utils.JsonUtils; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; + +import java.io.IOException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.http.HttpClient; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; + +/** + * packageName : com.palnet.server.task.wb.service + * fileName : TaskWbService + * author : dhji + * date : 2023-08-28(028) + * description : + * =========================================================== + * DATE AUTHOR NOTE + * ----------------------------------------------------------- + * 2023-08-28(028) dhji 최초 생성 + */ +@Slf4j +@RequiredArgsConstructor +@Service +public class TaskServerService { + @Value("${app.host}") + private String APP_HOST; + + private final String APP_SEND_URI = "api/server/receiver"; + + public void sendData(GPModel model) { + HttpRequest request = null; + try { + request = HttpRequest.newBuilder() + .uri(new URI( + APP_HOST + APP_SEND_URI + )) + .version(HttpClient.Version.HTTP_2) + .header("Content-Type", "application/json") + .POST(HttpRequest.BodyPublishers.ofString(JsonUtils.toJson(model))) + .build(); + HttpResponse response = HttpClient + .newHttpClient() + .send(request, HttpResponse.BodyHandlers.ofString()); + } catch (URISyntaxException | InterruptedException | IOException e) { + log.error("요청한 URL 정보가 잘못되었습니다.", e.getMessage()); + } catch (Exception e) { + log.error("ERROR : {}\n{}", e.getMessage(), e.getStackTrace()); + } + +// log.info("websocket send message : {}", JsonUtils.toJson(model)); + + } + +} diff --git a/src/main/java/com/palnet/server/task/wb/service/TaskWbService.java b/src/main/java/com/palnet/server/task/wb/service/TaskWbService.java index 196d862..01db0fd 100644 --- a/src/main/java/com/palnet/server/task/wb/service/TaskWbService.java +++ b/src/main/java/com/palnet/server/task/wb/service/TaskWbService.java @@ -36,7 +36,6 @@ public class TaskWbService { public void sendData(GPModel model) { HttpRequest request = null; - log.info(">>> uri : {}", WS_HOST + WS_SEND_URI); try { request = HttpRequest.newBuilder() .uri(new URI( @@ -55,7 +54,7 @@ public class TaskWbService { log.error("ERROR : {}\n{}", e.getMessage(), e.getStackTrace()); } - log.info("websocket send message : {}", JsonUtils.toJson(model)); +// log.info("websocket send message : {}", JsonUtils.toJson(model)); }