You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by sh...@apache.org on 2022/12/09 06:05:23 UTC
[rocketmq-eventbridge] 01/04: update network service
This is an automated email from the ASF dual-hosted git repository.
shenlin pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/rocketmq-eventbridge.git
commit 6c4f6c1f6b662cf60aed904042bd8e75344e6c7d
Author: zh378814 <wb...@alibaba-inc.com>
AuthorDate: Thu Dec 8 13:27:09 2022 +0800
update network service
---
.../rpc/impl/network/NetworkServiceAPIImpl.java | 10 ++++++++--
.../domain/model/connection/ConnectionService.java | 21 +++++++++++++++++++--
.../connection/parameter/NetworkParameters.java | 9 +++++++++
.../domain/model/data/NetworkEntity.java | 16 ++++++++++++++++
.../eventbridge/domain/rpc/NetworkServiceAPI.java | 8 ++++++--
5 files changed, 58 insertions(+), 6 deletions(-)
diff --git a/adapter/rpc/src/main/java/org/apache/rocketmq/eventbridge/adapter/rpc/impl/network/NetworkServiceAPIImpl.java b/adapter/rpc/src/main/java/org/apache/rocketmq/eventbridge/adapter/rpc/impl/network/NetworkServiceAPIImpl.java
index 9edd78e..5163aeb 100644
--- a/adapter/rpc/src/main/java/org/apache/rocketmq/eventbridge/adapter/rpc/impl/network/NetworkServiceAPIImpl.java
+++ b/adapter/rpc/src/main/java/org/apache/rocketmq/eventbridge/adapter/rpc/impl/network/NetworkServiceAPIImpl.java
@@ -17,18 +17,24 @@
package org.apache.rocketmq.eventbridge.adapter.rpc.impl.network;
+import org.apache.rocketmq.eventbridge.domain.model.data.NetworkEntity;
import org.apache.rocketmq.eventbridge.domain.rpc.NetworkServiceAPI;
import org.springframework.stereotype.Component;
@Component
public class NetworkServiceAPIImpl implements NetworkServiceAPI {
@Override
- public Boolean createPrivateNetwork() {
+ public Boolean createPrivateNetwork(String accountId, String connectionId, String vpcId, String vSwitchIds, String securityGroupId) {
return null;
}
@Override
- public Boolean deletePrivateNetwork() {
+ public Boolean deletePrivateNetwork(String accountId, String networkServiceId) {
return null;
}
+
+ @Override
+ public NetworkEntity getNetwork(String accountId, String connectionId) {
+ return new NetworkEntity();
+ }
}
diff --git a/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/connection/ConnectionService.java b/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/connection/ConnectionService.java
index 52d92e2..a0ed6da 100644
--- a/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/connection/ConnectionService.java
+++ b/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/connection/ConnectionService.java
@@ -29,8 +29,10 @@ import org.apache.rocketmq.eventbridge.domain.model.PaginationResult;
import org.apache.rocketmq.eventbridge.domain.model.connection.parameter.ApiKeyAuthParameters;
import org.apache.rocketmq.eventbridge.domain.model.connection.parameter.AuthParameters;
import org.apache.rocketmq.eventbridge.domain.model.connection.parameter.BasicAuthParameters;
+import org.apache.rocketmq.eventbridge.domain.model.connection.parameter.NetworkParameters;
import org.apache.rocketmq.eventbridge.domain.model.connection.parameter.OAuthHttpParameters;
import org.apache.rocketmq.eventbridge.domain.model.connection.parameter.OAuthParameters;
+import org.apache.rocketmq.eventbridge.domain.model.data.NetworkEntity;
import org.apache.rocketmq.eventbridge.domain.repository.ApiDestinationRepository;
import org.apache.rocketmq.eventbridge.domain.repository.ConnectionRepository;
import org.apache.rocketmq.eventbridge.domain.rpc.NetworkServiceAPI;
@@ -74,7 +76,12 @@ public class ConnectionService extends AbstractResourceService {
}
if (connectionRepository.createConnection(connectionDTO)) {
if (NetworkTypeEnum.PRIVATE_NETWORK.getNetworkType().equals(connectionDTO.getNetworkParameters().getNetworkType())) {
- networkServiceAPI.createPrivateNetwork();
+ List<ConnectionDTO> connection = getConnection(connectionDTO.getAccountId(), connectionDTO.getConnectionName());
+ if (!CollectionUtils.isEmpty(connection)) {
+ NetworkParameters networkParameters = connectionDTO.getNetworkParameters();
+ networkServiceAPI.createPrivateNetwork(connectionDTO.getAccountId(), Integer.toString(connection.get(0).getId()), networkParameters.getVpcId(), networkParameters.getVswitcheId(), networkParameters.getSecurityGroupId());
+ }
+
}
return connectionDTO.getConnectionName();
}
@@ -92,7 +99,7 @@ public class ConnectionService extends AbstractResourceService {
List<ConnectionDTO> connection = getConnection(accountId, connectionName);
ConnectionDTO connectionDTO = connection.get(0);
if (NetworkTypeEnum.PRIVATE_NETWORK.getNetworkType().equals(connectionDTO.getNetworkParameters().getNetworkType())) {
- networkServiceAPI.deletePrivateNetwork();
+ networkServiceAPI.deletePrivateNetwork(accountId, Integer.toString(connectionDTO.getId()));
}
connectionRepository.deleteConnection(accountId, connectionName);
if (secretManagerAPI.querySecretName(secretManagerAPI.getSecretName(accountId, connectionName))) {
@@ -117,6 +124,16 @@ public class ConnectionService extends AbstractResourceService {
if (connectionDTO == null) {
throw new EventBridgeException(EventBridgeErrorCode.ConnectionNotExist, connectionName);
}
+ for (ConnectionDTO connection : connectionDTO) {
+ if (NetworkTypeEnum.PRIVATE_NETWORK.getNetworkType().equals(connection.getNetworkParameters().getNetworkType())) {
+ NetworkEntity network = networkServiceAPI.getNetwork(accountId, connection.getAccountId());
+ NetworkParameters networkParameters = connection.getNetworkParameters();
+ networkParameters.setSocks5UserName(network.getSocks5UserName());
+ networkParameters.setSocks5Password(network.getSocks5Password());
+ networkParameters.setSocks5Endpoint(network.getSocks5Endpoint());
+ connection.setNetworkParameters(networkParameters);
+ }
+ }
return connectionDTO;
}
diff --git a/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/connection/parameter/NetworkParameters.java b/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/connection/parameter/NetworkParameters.java
index ed7ca0d..f771056 100644
--- a/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/connection/parameter/NetworkParameters.java
+++ b/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/connection/parameter/NetworkParameters.java
@@ -40,4 +40,13 @@ public class NetworkParameters {
@SerializedName("SecurityGroupId")
private String securityGroupId;
+
+ @SerializedName("Socks5UserName")
+ private String socks5UserName;
+
+ @SerializedName("Socks5Password")
+ private String socks5Password;
+
+ @SerializedName("Socks5Endpoint")
+ private String socks5Endpoint;
}
diff --git a/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/data/NetworkEntity.java b/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/data/NetworkEntity.java
new file mode 100644
index 0000000..c9ea40e
--- /dev/null
+++ b/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/model/data/NetworkEntity.java
@@ -0,0 +1,16 @@
+package org.apache.rocketmq.eventbridge.domain.model.data;
+
+import lombok.Getter;
+import lombok.Setter;
+
+@Setter
+@Getter
+public class NetworkEntity {
+
+ private String socks5UserName;
+
+ private String socks5Password;
+
+ private String socks5Endpoint;
+
+}
diff --git a/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/rpc/NetworkServiceAPI.java b/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/rpc/NetworkServiceAPI.java
index c2d7018..77ada12 100644
--- a/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/rpc/NetworkServiceAPI.java
+++ b/domain/src/main/java/org/apache/rocketmq/eventbridge/domain/rpc/NetworkServiceAPI.java
@@ -17,9 +17,13 @@
package org.apache.rocketmq.eventbridge.domain.rpc;
+import org.apache.rocketmq.eventbridge.domain.model.data.NetworkEntity;
+
public interface NetworkServiceAPI {
- Boolean createPrivateNetwork();
+ Boolean createPrivateNetwork(String accountId, String connectionId, String vpcId, String vSwitchIds, String securityGroupId);
+
+ Boolean deletePrivateNetwork(String accountId, String connectionId);
- Boolean deletePrivateNetwork();
+ NetworkEntity getNetwork(String accountId, String connectionId);
}