From f30f914283c82d93f04bdb02ef3fd8159472a427 Mon Sep 17 00:00:00 2001 From: hyunjujeong Date: Thu, 31 Aug 2023 13:20:52 +0900 Subject: [PATCH] =?UTF-8?q?-=20=EC=95=B1=20=EB=B0=B0=ED=8F=AC=20docker=20M?= =?UTF-8?q?QTT=20=EB=A9=94=EC=8B=9C=EC=A7=80=20=ED=8E=98=EC=9D=B4=EB=A1=9C?= =?UTF-8?q?=EB=93=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../application/DefaultDeployerService.java | 19 +++++++-------- .../domain/OutboundMessage.java | 24 ++++--------------- .../mqtt/OutboundMessagePayload.java | 10 ++++---- .../presentation/DeployerController.java | 2 ++ .../presentation/OutboundMessageResource.java | 3 ++- .../OutboundMessageResourceConverter.java | 10 +++----- 6 files changed, 26 insertions(+), 42 deletions(-) diff --git a/src/main/java/inc/sdt/blokworks/devicedeployer/application/DefaultDeployerService.java b/src/main/java/inc/sdt/blokworks/devicedeployer/application/DefaultDeployerService.java index 1eda8d6..4289f59 100644 --- a/src/main/java/inc/sdt/blokworks/devicedeployer/application/DefaultDeployerService.java +++ b/src/main/java/inc/sdt/blokworks/devicedeployer/application/DefaultDeployerService.java @@ -16,7 +16,7 @@ import org.springframework.stereotype.Service; import reactor.core.publisher.Mono; import java.util.HashMap; -import java.util.List; +import java.util.LinkedHashMap; import java.util.Optional; @Service @@ -46,7 +46,7 @@ public class DefaultDeployerService implements DeployerService{ log.info("[publish] deployMessage = {}, assetCode = {}", deployMessage, assetCode); final String url = filePath + deployMessage.getFileId(); final String deviceType = "ecn"; - HashMap cmdInfo = new HashMap<>(); + HashMap cmdInfo = new HashMap<>(); String cmdType = ""; try { @@ -62,18 +62,17 @@ public class DefaultDeployerService implements DeployerService{ }*/ if(!deployMessage.getCommand().isEmpty()) { - cmdInfo.put("Cmd", deployMessage.getCommand()); - cmdInfo.put("FileUrl", url); - cmdInfo.put("FileType", "python"); + cmdInfo.put("cmd", deployMessage.getCommand()); + cmdInfo.put("fileUrl", url); + cmdInfo.put("fileType", "python"); cmdType = String.valueOf(CommandType.deploy); } if(!deployMessage.getEnv().isEmpty()) { - cmdInfo.put("Cmd", "run"); - cmdInfo.put("Image", url); - cmdInfo.put("Name", deployMessage.getName()); - cmdInfo.put("Env", convertToJson(deployMessage.getEnv())); - cmdInfo.put("Ports", convertToJson(deployMessage.getPorts())); + cmdInfo.put("cmd", "run"); + cmdInfo.put("image", url); + cmdInfo.put("name", deployMessage.getName()); + cmdInfo.put("options", deployMessage.getEnv()); cmdType = String.valueOf(CommandType.docker); } diff --git a/src/main/java/inc/sdt/blokworks/devicedeployer/domain/OutboundMessage.java b/src/main/java/inc/sdt/blokworks/devicedeployer/domain/OutboundMessage.java index 7b4f5f6..617912a 100644 --- a/src/main/java/inc/sdt/blokworks/devicedeployer/domain/OutboundMessage.java +++ b/src/main/java/inc/sdt/blokworks/devicedeployer/domain/OutboundMessage.java @@ -1,13 +1,11 @@ package inc.sdt.blokworks.devicedeployer.domain; -import java.util.List; -import java.util.Map; +import java.util.LinkedHashMap; public class OutboundMessage { private String fileId; private String name; - private Map env; - private List> ports; + private LinkedHashMap env; private String command; private String requestId; private String deviceType; @@ -23,14 +21,10 @@ public class OutboundMessage { return name; } - public Map getEnv() { + public LinkedHashMap getEnv() { return env; } - public List> getPorts() { - return ports; - } - public String getCommand() { return command; } @@ -57,7 +51,6 @@ public class OutboundMessage { "fileId='" + fileId + '\'' + ", name='" + name + '\'' + ", env=" + env + - ", ports=" + ports + ", command='" + command + '\'' + ", requestId='" + requestId + '\'' + ", deviceType='" + deviceType + '\'' + @@ -72,8 +65,7 @@ public class OutboundMessage { public static final class Builder { private String fileId; private String name; - private Map env; - private List> ports; + private LinkedHashMap env; private String command; private String requestId; private String deviceType; @@ -89,16 +81,11 @@ public class OutboundMessage { return this; } - public Builder env(Map env) { + public Builder env(LinkedHashMap env) { this.env = env; return this; } - public Builder ports(List> ports) { - this.ports = ports; - return this; - } - public Builder command(String command) { this.command = command; return this; @@ -126,7 +113,6 @@ public class OutboundMessage { deployMessage.env = this.env; deployMessage.command = this.command; deployMessage.requestId = this.requestId; - deployMessage.ports = this.ports; deployMessage.deviceType = this.deviceType; deployMessage.commandType = this.commandType; return deployMessage; diff --git a/src/main/java/inc/sdt/blokworks/devicedeployer/infrastructure/mqtt/OutboundMessagePayload.java b/src/main/java/inc/sdt/blokworks/devicedeployer/infrastructure/mqtt/OutboundMessagePayload.java index 307de6b..dd9b02a 100644 --- a/src/main/java/inc/sdt/blokworks/devicedeployer/infrastructure/mqtt/OutboundMessagePayload.java +++ b/src/main/java/inc/sdt/blokworks/devicedeployer/infrastructure/mqtt/OutboundMessagePayload.java @@ -3,11 +3,11 @@ package inc.sdt.blokworks.devicedeployer.infrastructure.mqtt; import java.util.HashMap; public record OutboundMessagePayload( - HashMap CmdInfo, - String CmdType, + HashMap cmdInfo, + String cmdType, - String AssetCode, - String DeviceType, - String RequestId + String assetCode, + String deviceType, + String requestId ) { } diff --git a/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/DeployerController.java b/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/DeployerController.java index 613a4ea..bd7b868 100644 --- a/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/DeployerController.java +++ b/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/DeployerController.java @@ -6,10 +6,12 @@ import inc.sdt.blokworks.devicedeployer.infrastructure.amqp.ResourceMapping; import jakarta.validation.Valid; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; import org.springframework.data.domain.Page; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.*; +import java.util.LinkedHashMap; import java.util.UUID; @RestController diff --git a/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/OutboundMessageResource.java b/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/OutboundMessageResource.java index 32cd632..fc21776 100644 --- a/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/OutboundMessageResource.java +++ b/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/OutboundMessageResource.java @@ -4,6 +4,7 @@ import inc.sdt.blokworks.devicedeployer.domain.CommandType; import org.wildfly.common.annotation.NotNull; import java.util.HashMap; +import java.util.LinkedHashMap; record OutboundMessageResource( @NotNull @@ -11,7 +12,7 @@ record OutboundMessageResource( @NotNull String name, String command, - String env, + LinkedHashMap env, String deviceType, CommandType commandType ) { diff --git a/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/OutboundMessageResourceConverter.java b/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/OutboundMessageResourceConverter.java index 12a050c..6fb77f2 100644 --- a/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/OutboundMessageResourceConverter.java +++ b/src/main/java/inc/sdt/blokworks/devicedeployer/presentation/OutboundMessageResourceConverter.java @@ -9,10 +9,7 @@ import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; @Component public class OutboundMessageResourceConverter { @@ -23,14 +20,13 @@ public class OutboundMessageResourceConverter { } public OutboundMessage fromResource(OutboundMessageResource resource) { - final Map cmdInfo = resource.env().isEmpty() ? new HashMap<>() : convertToMap(resource.env()); + //final Map cmdInfo = resource.env().isEmpty() ? new HashMap<>() : convertToMap(resource.env()); return OutboundMessage.builder() .fileId(resource.fileId()) .name(resource.name()) .command(resource.command()) - .env(cmdInfo.isEmpty() ? new HashMap<>() : (Map) cmdInfo.get("env")) - .ports(cmdInfo.isEmpty() ? new ArrayList<>() : (List>) cmdInfo.get("ports")) + .env(resource.env() != null ? resource.env() : new LinkedHashMap<>()) .deviceType(resource.deviceType()) .commandType(resource.commandType() == null ? CommandType.deploy : resource.commandType()) .build();