package inc.sdt.controlcentermanagement.domain; import java.util.Map; /** * @author sunae.jang (sa.jang@sdt.inc) */ public class DeployRequest { private String assetCode; private String appName; private String commandType; private String name; private Map parameters; public DeployRequest(String assetCode, String appName, String commandType, String name, Map parameters) { this.assetCode = assetCode; this.appName = appName; this.commandType = commandType; this.name = name; this.parameters = parameters; } public static Builder builder() { return new Builder(); } public String getAssetCode() { return assetCode; } public String getAppName() { return appName; } public String getCommandType() { return commandType; } public String getName() { return name; } public Map getParameters() { return parameters; } @Override public String toString() { return "DeployRequest{" + "assetCode='" + assetCode + '\'' + ", appName='" + appName + '\'' + ", commandType='" + commandType + '\'' + ", name='" + name + '\'' + ", parameters=" + parameters + '}'; } public static final class Builder { private String assetCode; private String appName; private String commandType; private String name; private Map parameters; private Builder() { } public Builder assetCode(String assetCode) { this.assetCode = assetCode; return this; } public Builder appName(String appName) { this.appName = appName; return this; } public Builder commandType(CommandType commandType) { this.commandType = commandType.toString().toLowerCase(); return this; } public Builder name(String name) { this.name = name; return this; } public Builder parameters(Map parameters) { this.parameters = parameters; return this; } public DeployRequest build() { return new DeployRequest(assetCode, appName, commandType, name, parameters); } } }