From 5d4151cf6b4394aaaf6ebe0d67b679b4b5239b0c Mon Sep 17 00:00:00 2001 From: "lambert@arch" Date: Thu, 14 Mar 2024 08:39:56 +0800 Subject: [PATCH 1/8] feat: add SDK manager --- .../client/AbstractClientOperation.java | 29 +++++ .../function/client/ClientOperation.java | 36 ++++++ .../function/client/ClientTypeEnum.java | 38 ++++++ .../console/function/client/SDKManager.java | 115 ++++++++++++++++++ .../config/CreateClientConfig.java} | 8 +- .../client/config/CreateNacosConfig.java | 33 +++++ .../client/config/CreateRedisConfig.java | 31 +++++ .../client/config/CreateRocketmqConfig.java | 55 +++++++++ .../create/EtcdClientCreateOperation.java | 35 ++++++ .../create/NacosClientCreateOperation.java | 55 +++++++++ .../NacosConfigClientCreateOperation.java | 59 +++++++++ .../NacosNamingClientCreateOperation.java | 60 +++++++++ .../create/RedisClientCreateOperation.java | 42 +++++++ .../RocketMQProduceClientCreateOperation.java | 53 ++++++++ ...etMQPushConsumerClientCreateOperation.java | 55 +++++++++ ...RocketMQRemotingClientCreateOperation.java | 44 +++++++ .../create/RuntimeClientCreateOperation.java | 35 ++++++ .../client/wrapper/NacosClientWrapper.java | 36 ++++++ .../function/client/SDKManagerTest.java | 44 +++++++ .../RedisClientCreateOperationTest.java | 51 ++++++++ .../unit/cluster/TestClusterMapper.java | 17 +++ .../console/unit/config/TestConfigMapper.java | 20 ++- .../unit/runtime/TestRuntimeMapper.java | 23 +++- .../console/unit/store/TestStoreMapper.java | 25 +++- 24 files changed, 987 insertions(+), 12 deletions(-) create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractClientOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientTypeEnum.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{health/check/impl/StorageRocketmqCheck.java => client/config/CreateClientConfig.java} (79%) create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateNacosConfig.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRedisConfig.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRocketmqConfig.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java create mode 100644 eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/wrapper/NacosClientWrapper.java create mode 100644 eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java create mode 100644 eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractClientOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractClientOperation.java new file mode 100644 index 00000000..a4d82c14 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractClientOperation.java @@ -0,0 +1,29 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client; + +public abstract class AbstractClientOperation implements ClientOperation { + + protected T castClient(Object client) { + try { + return (T) client; + } catch (ClassCastException e) { + throw new IllegalArgumentException("Client is not of the expected type", e); + } + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java new file mode 100644 index 00000000..fc4df696 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java @@ -0,0 +1,36 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client; + +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; + +import javafx.util.Pair; + +/** + * Operation to create and close a client, the operations will be store in the SDKManager + * + * @param SDK client + */ +public interface ClientOperation { + + public Pair createClient(CreateClientConfig clientConfig); + + + public void close(Object client); + +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientTypeEnum.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientTypeEnum.java new file mode 100644 index 00000000..6bb22cf8 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientTypeEnum.java @@ -0,0 +1,38 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client; + +public enum ClientTypeEnum { + + RUNTIME, + + STORAGE_ROCKETMQ_REMOTING, + + STORAGE_ROCKETMQ_PRODUCER, + + STORAGE_ROCKETMQ_CONSUMER, + + STORAGE_REDIS, + + CENTER_NACOS, + CENTER_NACOS_CONFIG, + + CENTER_NACOS_NAMING, + + +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java new file mode 100644 index 00000000..517e8c63 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java @@ -0,0 +1,115 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client; + +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.client.create.NacosClientCreateOperation; +import org.apache.eventmesh.dashboard.console.function.client.create.NacosConfigClientCreateOperation; +import org.apache.eventmesh.dashboard.console.function.client.create.NacosNamingClientCreateOperation; +import org.apache.eventmesh.dashboard.console.function.client.create.RedisClientCreateOperation; +import org.apache.eventmesh.dashboard.console.function.client.create.RocketMQProduceClientCreateOperation; +import org.apache.eventmesh.dashboard.console.function.client.create.RocketMQPushConsumerClientCreateOperation; +import org.apache.eventmesh.dashboard.console.function.client.create.RocketMQRemotingClientCreateOperation; + +import java.util.Map; +import java.util.Objects; +import java.util.concurrent.ConcurrentHashMap; + +import javafx.util.Pair; + +/** + * SDK manager is a singleton to manage all SDK clients, it is a facade to create, delete and get a client. + + */ +public class SDKManager { + + private static final SDKManager INSTANCE = new SDKManager(); + + + public static SDKManager getInstance() { + return INSTANCE; + } + + /** + * inner key is the unique key of a client, such as (ip + port) they are defined in CreateClientConfig + * + * @see CreateClientConfig#getUniqueKey() + */ + + private final Map> clientMap = new ConcurrentHashMap<>(); + + private final Map> clientCreateOperationMap = new ConcurrentHashMap<>(); + + // register all client create operation + { + for (ClientTypeEnum clientTypeEnum : ClientTypeEnum.values()) { + clientMap.put(clientTypeEnum, new ConcurrentHashMap<>()); + } + + clientCreateOperationMap.put(ClientTypeEnum.STORAGE_REDIS, new RedisClientCreateOperation()); + + clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_REMOTING, new RocketMQRemotingClientCreateOperation()); + clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_PRODUCER, new RocketMQProduceClientCreateOperation()); + clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_CONSUMER, new RocketMQPushConsumerClientCreateOperation()); + + clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS, new NacosClientCreateOperation()); + clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS_CONFIG, new NacosConfigClientCreateOperation()); + clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS_NAMING, new NacosNamingClientCreateOperation()); + + } + + private SDKManager() { + } + + public Pair createClient(ClientTypeEnum clientTypeEnum, CreateClientConfig config) { + return createClient(clientTypeEnum, config.getUniqueKey(), config); + } + + public Pair createClient(ClientTypeEnum clientTypeEnum, String uniqueKey, CreateClientConfig config) { + + Map clients = this.clientMap.get(clientTypeEnum); + + Object client = clients.get(uniqueKey); + Pair result = new Pair<>(uniqueKey, client); + if (Objects.isNull(client)) { + ClientOperation clientCreateOperation = this.clientCreateOperationMap.get(clientTypeEnum); + result = clientCreateOperation.createClient(config); + clients.put(result.getKey(), result.getValue()); + } + try { + return (Pair) result; + } catch (Exception e) { + throw new RuntimeException("create client error", e); + } + } + + public void deleteClient(ClientTypeEnum clientTypeEnum, String uniqueKey) { + Map clients = this.clientMap.get(clientTypeEnum); + ClientOperation operation = this.clientCreateOperationMap.get(clientTypeEnum); + try { + operation.close(clients.get(uniqueKey)); + } catch (Exception e) { + throw new RuntimeException("close client error", e); + } + clients.remove(uniqueKey); + } + + public Object getClient(ClientTypeEnum clientTypeEnum, String uniqueKey) { + return this.clientMap.get(clientTypeEnum).get(uniqueKey); + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/StorageRocketmqCheck.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateClientConfig.java similarity index 79% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/StorageRocketmqCheck.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateClientConfig.java index c200f076..fca4a7b0 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/health/check/impl/StorageRocketmqCheck.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateClientConfig.java @@ -15,8 +15,12 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.health.check.impl; +package org.apache.eventmesh.dashboard.console.function.client.config; -public class StorageRocketmqCheck { +/** + * Config to create an SDK client, usually contains an address url. + */ +public interface CreateClientConfig { + String getUniqueKey(); } diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateNacosConfig.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateNacosConfig.java new file mode 100644 index 00000000..fbc18419 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateNacosConfig.java @@ -0,0 +1,33 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.config; + +import lombok.Data; + +@Data +public class CreateNacosConfig implements CreateClientConfig { + + private String serverAddress; + + @Override + public String getUniqueKey() { + return serverAddress; + } +} + + diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRedisConfig.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRedisConfig.java new file mode 100644 index 00000000..c40e5c6a --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRedisConfig.java @@ -0,0 +1,31 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.config; + +import lombok.Data; + +@Data +public class CreateRedisConfig implements CreateClientConfig { + + private String redisUrl; + + @Override + public String getUniqueKey() { + return redisUrl; + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRocketmqConfig.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRocketmqConfig.java new file mode 100644 index 00000000..f27137ce --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRocketmqConfig.java @@ -0,0 +1,55 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.config; + +import org.apache.rocketmq.client.consumer.listener.MessageListener; +import org.apache.rocketmq.common.protocol.heartbeat.MessageModel; + +import lombok.Data; + +@Data +public class CreateRocketmqConfig implements CreateClientConfig { + + // common + private String nameServerUrl; + private String brokerUrl; + + //consumer + private String consumerGroup; + private MessageModel messageModel = MessageModel.CLUSTERING; + + //producer + private String producerGroup; + + //topic + private String topic; + private String subExpression = "*"; + + private MessageListener messageListener; + + + @Override + public String getUniqueKey() { + if (nameServerUrl != null) { + return nameServerUrl; + } else if (brokerUrl != null) { + return brokerUrl; + } + return null; + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java new file mode 100644 index 00000000..b77965d2 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java @@ -0,0 +1,35 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.create; + +import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; + +import javafx.util.Pair; + +public class EtcdClientCreateOperation extends AbstractClientOperation { + @Override + public Pair createClient(CreateClientConfig clientConfig) { + return null; + } + + @Override + public void close(Object client) { + + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java new file mode 100644 index 00000000..220bd8c6 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java @@ -0,0 +1,55 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.create; + +import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.client.wrapper.NacosClientWrapper; + +import com.alibaba.nacos.api.config.ConfigService; +import com.alibaba.nacos.api.naming.NamingService; + +import javafx.util.Pair; + +public class NacosClientCreateOperation extends AbstractClientOperation { + + private final NacosConfigClientCreateOperation nacosConfigClientCreateOperation = new NacosConfigClientCreateOperation(); + private final NacosNamingClientCreateOperation nacosNamingClientCreateOperation = new NacosNamingClientCreateOperation(); + + @Override + public Pair createClient(CreateClientConfig createClientConfig) { + Pair configPair = nacosConfigClientCreateOperation.createClient(createClientConfig); + Pair namingPair = nacosNamingClientCreateOperation.createClient(createClientConfig); + if (configPair.getKey() != namingPair.getKey()) { + throw new RuntimeException("Nacos config and naming server address not match"); + } + NacosClientWrapper nacosClient = new NacosClientWrapper( + (ConfigService) configPair.getValue(), (NamingService) namingPair.getValue() + ); + return new Pair<>(configPair.getKey(), nacosClient); + } + + @Override + public void close(Object client) { + try { + castClient(client).shutdown(); + } catch (Exception e) { + throw new RuntimeException("Nacos client close failed", e); + } + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java new file mode 100644 index 00000000..586556fb --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java @@ -0,0 +1,59 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.create; + +import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateNacosConfig; + +import java.util.Properties; + +import com.alibaba.nacos.api.NacosFactory; +import com.alibaba.nacos.api.config.ConfigService; +import com.alibaba.nacos.api.exception.NacosException; + +import lombok.extern.slf4j.Slf4j; + +import javafx.util.Pair; + +@Slf4j +public class NacosConfigClientCreateOperation extends AbstractClientOperation { + + @Override + public Pair createClient(CreateClientConfig clientConfig) { + ConfigService configService = null; + CreateNacosConfig config = (CreateNacosConfig) clientConfig; + try { + Properties properties = new Properties(); + properties.put("serverAddr", config.getServerAddress()); + configService = NacosFactory.createConfigService(properties); + } catch (NacosException e) { + log.error("NacosCheck init failed caused by {}", e.getErrMsg()); + } + return new Pair<>(config.getServerAddress(), configService); + } + + @Override + public void close(Object client) { + try { + castClient(client).shutDown(); + } catch (NacosException e) { + log.error("NacosCheck close failed caused by {}", e.getErrMsg()); + } + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java new file mode 100644 index 00000000..a8335ad7 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java @@ -0,0 +1,60 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.create; + +import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateNacosConfig; + +import java.util.Properties; + +import com.alibaba.nacos.api.NacosFactory; +import com.alibaba.nacos.api.config.ConfigService; +import com.alibaba.nacos.api.exception.NacosException; +import com.alibaba.nacos.api.naming.NamingService; + +import lombok.extern.slf4j.Slf4j; + +import javafx.util.Pair; + +@Slf4j +public class NacosNamingClientCreateOperation extends AbstractClientOperation { + + @Override + public Pair createClient(CreateClientConfig clientConfig) { + NamingService namingService = null; + CreateNacosConfig config = (CreateNacosConfig) clientConfig; + try { + Properties properties = new Properties(); + properties.put("serverAddr", config.getServerAddress()); + namingService = NacosFactory.createNamingService(properties); + } catch (NacosException e) { + log.error("NacosCheck init failed caused by {}", e.getErrMsg()); + } + return new Pair<>(config.getUniqueKey(), namingService); + } + + @Override + public void close(Object client) { + try { + ((ConfigService) client).shutDown(); + } catch (NacosException e) { + log.error("NacosCheck close failed caused by {}", e.getErrMsg()); + } + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java new file mode 100644 index 00000000..60bc27b8 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java @@ -0,0 +1,42 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.create; + +import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; + +import io.lettuce.core.RedisClient; +import io.lettuce.core.api.StatefulRedisConnection; + +import javafx.util.Pair; + +public class RedisClientCreateOperation extends AbstractClientOperation> { + + @Override + public Pair> createClient(CreateClientConfig clientConfig) { + String redisUrl = ((CreateRedisConfig) clientConfig).getRedisUrl(); + RedisClient redisClient = RedisClient.create(redisUrl); + return new Pair<>(clientConfig.getUniqueKey(), redisClient.connect()); + } + + @Override + public void close(Object client) { + castClient(client).close(); + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java new file mode 100644 index 00000000..b1ef866b --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java @@ -0,0 +1,53 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.create; + +import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateRocketmqConfig; + +import org.apache.rocketmq.client.exception.MQClientException; +import org.apache.rocketmq.client.producer.DefaultMQProducer; + +import lombok.extern.slf4j.Slf4j; + +import javafx.util.Pair; + +@Slf4j +public class RocketMQProduceClientCreateOperation extends AbstractClientOperation { + + @Override + public Pair createClient(CreateClientConfig clientConfig) { + DefaultMQProducer producer = null; + try { + CreateRocketmqConfig config = (CreateRocketmqConfig) clientConfig; + producer = new DefaultMQProducer(config.getProducerGroup()); + producer.setNamesrvAddr(config.getNameServerUrl()); + producer.setCompressMsgBodyOverHowmuch(16); + producer.start(); + } catch (MQClientException e) { + log.error("create rocketmq producer failed", e); + } + return new Pair<>(clientConfig.getUniqueKey(), producer); + } + + @Override + public void close(Object client) { + ((DefaultMQProducer) client).shutdown(); + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java new file mode 100644 index 00000000..09282eb5 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java @@ -0,0 +1,55 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.create; + +import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateRocketmqConfig; + +import org.apache.rocketmq.client.consumer.DefaultMQPushConsumer; +import org.apache.rocketmq.client.exception.MQClientException; + +import lombok.extern.slf4j.Slf4j; + +import javafx.util.Pair; + +@Slf4j +public class RocketMQPushConsumerClientCreateOperation extends AbstractClientOperation { + + @Override + public Pair createClient(CreateClientConfig clientConfig) { + DefaultMQPushConsumer consumer = null; + try { + CreateRocketmqConfig config = (CreateRocketmqConfig) clientConfig; + consumer = new DefaultMQPushConsumer(config.getConsumerGroup()); + consumer.setMessageModel(config.getMessageModel()); + consumer.setNamesrvAddr(config.getNameServerUrl()); + consumer.subscribe(config.getTopic(), config.getSubExpression()); + consumer.registerMessageListener(config.getMessageListener()); + consumer.start(); + } catch (MQClientException e) { + log.error("create rocketmq push consumer failed", e); + } + return new Pair(((CreateRocketmqConfig) clientConfig).getNameServerUrl(), consumer); + } + + @Override + public void close(Object client) { + ((DefaultMQPushConsumer) client).shutdown(); + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java new file mode 100644 index 00000000..44de72d2 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java @@ -0,0 +1,44 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.create; + +import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; + +import org.apache.rocketmq.remoting.RemotingClient; +import org.apache.rocketmq.remoting.netty.NettyClientConfig; +import org.apache.rocketmq.remoting.netty.NettyRemotingClient; + +import javafx.util.Pair; + +public class RocketMQRemotingClientCreateOperation extends AbstractClientOperation { + + @Override + public Pair createClient(CreateClientConfig clientConfig) { + NettyClientConfig config = new NettyClientConfig(); + config.setUseTLS(false); + RemotingClient remotingClient = new NettyRemotingClient(config); + remotingClient.start(); + return new Pair<>(clientConfig.getUniqueKey(), remotingClient); + } + + @Override + public void close(Object client) { + ((RemotingClient) client).shutdown(); + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java new file mode 100644 index 00000000..958d4238 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java @@ -0,0 +1,35 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.create; + +import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; + +import javafx.util.Pair; + +public class RuntimeClientCreateOperation extends AbstractClientOperation { + @Override + public Pair createClient(CreateClientConfig clientConfig) { + return null; + } + + @Override + public void close(Object client) { + + } +} diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/wrapper/NacosClientWrapper.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/wrapper/NacosClientWrapper.java new file mode 100644 index 00000000..0dbdadc9 --- /dev/null +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/wrapper/NacosClientWrapper.java @@ -0,0 +1,36 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.wrapper; + +import com.alibaba.nacos.api.config.ConfigService; +import com.alibaba.nacos.api.exception.NacosException; +import com.alibaba.nacos.api.naming.NamingService; + +import lombok.AllArgsConstructor; + +@AllArgsConstructor +public class NacosClientWrapper { + + public void shutdown() throws NacosException { + configService.shutDown(); + namingService.shutDown(); + } + + private ConfigService configService; + private NamingService namingService; +} diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java new file mode 100644 index 00000000..a31817c5 --- /dev/null +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java @@ -0,0 +1,44 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client; + +import static org.junit.jupiter.api.Assertions.*; + +import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +class SDKManagerTest { + + private CreateRedisConfig createRedisConfig = new CreateRedisConfig(); + private String redisKey; + + @BeforeEach + void setUp() { + createRedisConfig.setRedisUrl("redis://localhost:6379"); + redisKey = SDKManager.getInstance().createClient(ClientTypeEnum.STORAGE_REDIS, createRedisConfig).getKey(); + } + + @Test + public void testGetClient() { + Object redisClient = SDKManager.getInstance().getClient(ClientTypeEnum.STORAGE_REDIS, redisKey); + assertNotNull(redisClient); + } +} \ No newline at end of file diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java new file mode 100644 index 00000000..bb677941 --- /dev/null +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java @@ -0,0 +1,51 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.eventmesh.dashboard.console.function.client.create; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; + +import org.junit.jupiter.api.Test; + +import io.lettuce.core.api.StatefulRedisConnection; + +import lombok.extern.slf4j.Slf4j; + +import javafx.util.Pair; + +@Slf4j +class RedisClientCreateOperationTest { + + private RedisClientCreateOperation redisClientCreateOperation = new RedisClientCreateOperation(); + + @Test + void testCreateClient() { + CreateRedisConfig createClientConfig = new CreateRedisConfig(); + createClientConfig.setRedisUrl("redis://localhost:6379"); + try { + Pair> pair = redisClientCreateOperation.createClient(createClientConfig); + assertEquals("redis://localhost:6379", pair.getKey()); + String response = pair.getValue().sync().ping(); + log.info("response:{}", response); + } catch (Exception e) { + log.error("create redis client failed", e); + } + + } +} \ No newline at end of file diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/cluster/TestClusterMapper.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/cluster/TestClusterMapper.java index c8625aae..0cad435f 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/cluster/TestClusterMapper.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/cluster/TestClusterMapper.java @@ -1,3 +1,20 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.eventmesh.dashboard.console.unit.cluster; import org.apache.eventmesh.dashboard.console.EventMeshDashboardApplication; diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/config/TestConfigMapper.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/config/TestConfigMapper.java index 417d75e8..97f5e118 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/config/TestConfigMapper.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/config/TestConfigMapper.java @@ -1,3 +1,20 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.eventmesh.dashboard.console.unit.config; @@ -5,12 +22,9 @@ import org.apache.eventmesh.dashboard.console.entity.config.ConfigEntity; import org.apache.eventmesh.dashboard.console.mapper.config.ConfigMapper; - import java.util.ArrayList; - import java.util.List; - import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/runtime/TestRuntimeMapper.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/runtime/TestRuntimeMapper.java index ad99e091..3baa57d4 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/runtime/TestRuntimeMapper.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/runtime/TestRuntimeMapper.java @@ -1,3 +1,20 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.eventmesh.dashboard.console.unit.runtime; import org.apache.eventmesh.dashboard.console.EventMeshDashboardApplication; @@ -23,7 +40,7 @@ public class TestRuntimeMapper { @Test public void testAddRuntimeMapper() { - RuntimeEntity runtimeEntity = new RuntimeEntity(null, 1l, "runtime1", 2l, 1019, 1099, 1L, "null", 1, null, null, "null"); + RuntimeEntity runtimeEntity = new RuntimeEntity(null, 1L, "runtime1", 2L, 1019, 1099, 1L, "null", 1, null, null, "null"); runtimeMapper.addRuntime(runtimeEntity); List runtimeEntities = runtimeMapper.selectRuntimeByCluster(runtimeEntity); RuntimeEntity runtimeEntity1 = runtimeEntities.get(0); @@ -34,7 +51,7 @@ public void testAddRuntimeMapper() { @Test public void testUpdateRuntimeByCluster() { - RuntimeEntity runtimeEntity = new RuntimeEntity(null, 1l, "runtime1", 2l, 1019, 1099, 1L, "null", 1, null, null, "null"); + RuntimeEntity runtimeEntity = new RuntimeEntity(null, 1L, "runtime1", 2L, 1019, 1099, 1L, "null", 1, null, null, "null"); runtimeMapper.addRuntime(runtimeEntity); runtimeEntity.setPort(1000); runtimeEntity.setJmxPort(1099); @@ -49,7 +66,7 @@ public void testUpdateRuntimeByCluster() { @Test public void testDeleteRuntime() { - RuntimeEntity runtimeEntity = new RuntimeEntity(null, 1l, "runtime1", 2l, 1019, 1099, 1L, "null", 1, null, null, "null"); + RuntimeEntity runtimeEntity = new RuntimeEntity(null, 1L, "runtime1", 2L, 1019, 1099, 1L, "null", 1, null, null, "null"); runtimeMapper.addRuntime(runtimeEntity); runtimeMapper.deleteRuntimeByCluster(runtimeEntity); List runtimeEntities = runtimeMapper.selectRuntimeByCluster(runtimeEntity); diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/store/TestStoreMapper.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/store/TestStoreMapper.java index 5876f828..45355472 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/store/TestStoreMapper.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/unit/store/TestStoreMapper.java @@ -1,3 +1,20 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.eventmesh.dashboard.console.unit.store; import org.apache.eventmesh.dashboard.console.EventMeshDashboardApplication; @@ -24,9 +41,9 @@ public class TestStoreMapper { @Test public void testAddStore() { StoreEntity storeEntity = - new StoreEntity(null, 1l, 2, "rocketmq", "run1", 1l, "n,j", (short) -1, 1098, 1099, "nothing", (short) 1, null, null, "nothing", 1l); + new StoreEntity(null, 1L, 2, "rocketmq", "run1", 1L, "n,j", (short) -1, 1098, 1099, "nothing", (short) 1, null, null, "nothing", 1L); StoreEntity storeEntity1 = - new StoreEntity(null, 1l, 1, "rocketmq", "run1", 1l, "n,j", (short) -1, 1098, 1099, "nothing", (short) 1, null, null, "nothing", 1l); + new StoreEntity(null, 1L, 1, "rocketmq", "run1", 1L, "n,j", (short) -1, 1098, 1099, "nothing", (short) 1, null, null, "nothing", 1L); storeMapper.addStore(storeEntity); storeMapper.addStore(storeEntity1); List storeEntities = storeMapper.selectStoreByCluster(storeEntity); @@ -41,7 +58,7 @@ public void testAddStore() { @Test public void testDeleteStoreByUnique() { StoreEntity storeEntity = - new StoreEntity(null, 1l, 2, "rocketmq", "run1", 1l, "n,j", (short) -1, 1098, 1099, "nothing", (short) 1, null, null, "nothing", 1l); + new StoreEntity(null, 1L, 2, "rocketmq", "run1", 1L, "n,j", (short) -1, 1098, 1099, "nothing", (short) 1, null, null, "nothing", 1L); storeMapper.addStore(storeEntity); storeMapper.deleteStoreByUnique(storeEntity); List storeEntities = storeMapper.selectStoreByCluster(storeEntity); @@ -51,7 +68,7 @@ public void testDeleteStoreByUnique() { @Test public void testUpdateStoreByUnique() { StoreEntity storeEntity = - new StoreEntity(null, 1l, 2, "rocketmq", "run1", 1l, "n,j", (short) -1, 1098, 1099, "nothing", (short) 1, null, null, "nothing", 1l); + new StoreEntity(null, 1L, 2, "rocketmq", "run1", 1L, "n,j", (short) -1, 1098, 1099, "nothing", (short) 1, null, null, "nothing", 1L); storeMapper.addStore(storeEntity); storeEntity.setStatus((short) 5); storeMapper.updateStoreByUnique(storeEntity); From 77cadf8b5cd0f1e8a1654233063c1370c6ed1b02 Mon Sep 17 00:00:00 2001 From: "lambert@arch" Date: Thu, 14 Mar 2024 11:49:51 +0800 Subject: [PATCH 2/8] fix: SDKManagerTest --- .../function/client/SDKManagerTest.java | 24 +++++++++++++------ 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java index a31817c5..f2e0cbec 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java @@ -17,28 +17,38 @@ package org.apache.eventmesh.dashboard.console.function.client; -import static org.junit.jupiter.api.Assertions.*; +import static org.junit.jupiter.api.Assertions.assertNotNull; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import lombok.extern.slf4j.Slf4j; + +@Slf4j class SDKManagerTest { - private CreateRedisConfig createRedisConfig = new CreateRedisConfig(); + private final CreateRedisConfig createRedisConfig = new CreateRedisConfig(); private String redisKey; @BeforeEach void setUp() { - createRedisConfig.setRedisUrl("redis://localhost:6379"); - redisKey = SDKManager.getInstance().createClient(ClientTypeEnum.STORAGE_REDIS, createRedisConfig).getKey(); + try { + createRedisConfig.setRedisUrl("redis://localhost:6379"); + redisKey = SDKManager.getInstance().createClient(ClientTypeEnum.STORAGE_REDIS, createRedisConfig).getKey(); + } catch (Exception e) { + log.warn("SDK manager test init failed, possible reason: redis-server is offline. {}", this.getClass().getSimpleName(), e); + } } @Test public void testGetClient() { - Object redisClient = SDKManager.getInstance().getClient(ClientTypeEnum.STORAGE_REDIS, redisKey); - assertNotNull(redisClient); + try { + Object redisClient = SDKManager.getInstance().getClient(ClientTypeEnum.STORAGE_REDIS, redisKey); + assertNotNull(redisClient); + } catch (Exception e) { + log.warn("SDK manager test failed, possible reason: redis-server is offline. {}", this.getClass().getSimpleName(), e); + } } } \ No newline at end of file From 15347268d518dc6d7abd31f688f6fedafb82a238 Mon Sep 17 00:00:00 2001 From: "lambert@arch" Date: Thu, 14 Mar 2024 08:39:56 +0800 Subject: [PATCH 3/8] fix: use SimpleEntry to replace Pair --- .../function/client/ClientOperation.java | 4 ++-- .../console/function/client/SDKManager.java | 11 +++++---- .../create/EtcdClientCreateOperation.java | 4 ++-- .../create/NacosClientCreateOperation.java | 16 ++++++------- .../NacosConfigClientCreateOperation.java | 7 +++--- .../NacosNamingClientCreateOperation.java | 7 +++--- .../create/RedisClientCreateOperation.java | 8 +++---- .../RocketMQProduceClientCreateOperation.java | 8 +++---- ...etMQPushConsumerClientCreateOperation.java | 8 +++---- ...RocketMQRemotingClientCreateOperation.java | 6 ++--- .../create/RuntimeClientCreateOperation.java | 4 ++-- .../function/client/SDKManagerTest.java | 24 +++++++++++++------ .../RedisClientCreateOperationTest.java | 10 ++++---- 13 files changed, 64 insertions(+), 53 deletions(-) diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java index fc4df696..760b2a13 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java @@ -19,7 +19,7 @@ import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import javafx.util.Pair; +import java.util.AbstractMap.SimpleEntry; /** * Operation to create and close a client, the operations will be store in the SDKManager @@ -28,7 +28,7 @@ */ public interface ClientOperation { - public Pair createClient(CreateClientConfig clientConfig); + public SimpleEntry createClient(CreateClientConfig clientConfig); public void close(Object client); diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java index 517e8c63..f480590f 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java @@ -26,11 +26,12 @@ import org.apache.eventmesh.dashboard.console.function.client.create.RocketMQPushConsumerClientCreateOperation; import org.apache.eventmesh.dashboard.console.function.client.create.RocketMQRemotingClientCreateOperation; +import java.util.AbstractMap.SimpleEntry; import java.util.Map; import java.util.Objects; import java.util.concurrent.ConcurrentHashMap; -import javafx.util.Pair; + /** * SDK manager is a singleton to manage all SDK clients, it is a facade to create, delete and get a client. @@ -76,23 +77,23 @@ public static SDKManager getInstance() { private SDKManager() { } - public Pair createClient(ClientTypeEnum clientTypeEnum, CreateClientConfig config) { + public SimpleEntry createClient(ClientTypeEnum clientTypeEnum, CreateClientConfig config) { return createClient(clientTypeEnum, config.getUniqueKey(), config); } - public Pair createClient(ClientTypeEnum clientTypeEnum, String uniqueKey, CreateClientConfig config) { + public SimpleEntry createClient(ClientTypeEnum clientTypeEnum, String uniqueKey, CreateClientConfig config) { Map clients = this.clientMap.get(clientTypeEnum); Object client = clients.get(uniqueKey); - Pair result = new Pair<>(uniqueKey, client); + SimpleEntry result = new SimpleEntry<>(uniqueKey, client); if (Objects.isNull(client)) { ClientOperation clientCreateOperation = this.clientCreateOperationMap.get(clientTypeEnum); result = clientCreateOperation.createClient(config); clients.put(result.getKey(), result.getValue()); } try { - return (Pair) result; + return (SimpleEntry) result; } catch (Exception e) { throw new RuntimeException("create client error", e); } diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java index b77965d2..7eb6f122 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java @@ -20,11 +20,11 @@ import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import javafx.util.Pair; +import java.util.AbstractMap.SimpleEntry; public class EtcdClientCreateOperation extends AbstractClientOperation { @Override - public Pair createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateClientConfig clientConfig) { return null; } diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java index 220bd8c6..0e1eef56 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java @@ -21,27 +21,27 @@ import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.wrapper.NacosClientWrapper; +import java.util.AbstractMap.SimpleEntry; + import com.alibaba.nacos.api.config.ConfigService; import com.alibaba.nacos.api.naming.NamingService; -import javafx.util.Pair; - public class NacosClientCreateOperation extends AbstractClientOperation { private final NacosConfigClientCreateOperation nacosConfigClientCreateOperation = new NacosConfigClientCreateOperation(); private final NacosNamingClientCreateOperation nacosNamingClientCreateOperation = new NacosNamingClientCreateOperation(); @Override - public Pair createClient(CreateClientConfig createClientConfig) { - Pair configPair = nacosConfigClientCreateOperation.createClient(createClientConfig); - Pair namingPair = nacosNamingClientCreateOperation.createClient(createClientConfig); - if (configPair.getKey() != namingPair.getKey()) { + public SimpleEntry createClient(CreateClientConfig createClientConfig) { + SimpleEntry configSimpleEntry = nacosConfigClientCreateOperation.createClient(createClientConfig); + SimpleEntry namingSimpleEntry = nacosNamingClientCreateOperation.createClient(createClientConfig); + if (configSimpleEntry.getKey() != namingSimpleEntry.getKey()) { throw new RuntimeException("Nacos config and naming server address not match"); } NacosClientWrapper nacosClient = new NacosClientWrapper( - (ConfigService) configPair.getValue(), (NamingService) namingPair.getValue() + (ConfigService) configSimpleEntry.getValue(), (NamingService) namingSimpleEntry.getValue() ); - return new Pair<>(configPair.getKey(), nacosClient); + return new SimpleEntry<>(configSimpleEntry.getKey(), nacosClient); } @Override diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java index 586556fb..90eeb089 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java @@ -21,6 +21,7 @@ import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.config.CreateNacosConfig; +import java.util.AbstractMap.SimpleEntry; import java.util.Properties; import com.alibaba.nacos.api.NacosFactory; @@ -29,13 +30,11 @@ import lombok.extern.slf4j.Slf4j; -import javafx.util.Pair; - @Slf4j public class NacosConfigClientCreateOperation extends AbstractClientOperation { @Override - public Pair createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateClientConfig clientConfig) { ConfigService configService = null; CreateNacosConfig config = (CreateNacosConfig) clientConfig; try { @@ -45,7 +44,7 @@ public Pair createClient(CreateClientConfig clientConfig) } catch (NacosException e) { log.error("NacosCheck init failed caused by {}", e.getErrMsg()); } - return new Pair<>(config.getServerAddress(), configService); + return new SimpleEntry<>(config.getServerAddress(), configService); } @Override diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java index a8335ad7..0b6df761 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java @@ -21,6 +21,7 @@ import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.config.CreateNacosConfig; +import java.util.AbstractMap.SimpleEntry; import java.util.Properties; import com.alibaba.nacos.api.NacosFactory; @@ -30,13 +31,11 @@ import lombok.extern.slf4j.Slf4j; -import javafx.util.Pair; - @Slf4j public class NacosNamingClientCreateOperation extends AbstractClientOperation { @Override - public Pair createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateClientConfig clientConfig) { NamingService namingService = null; CreateNacosConfig config = (CreateNacosConfig) clientConfig; try { @@ -46,7 +45,7 @@ public Pair createClient(CreateClientConfig clientConfig) } catch (NacosException e) { log.error("NacosCheck init failed caused by {}", e.getErrMsg()); } - return new Pair<>(config.getUniqueKey(), namingService); + return new SimpleEntry<>(config.getUniqueKey(), namingService); } @Override diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java index 60bc27b8..cba67ec7 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java @@ -21,18 +21,18 @@ import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; +import java.util.AbstractMap.SimpleEntry; + import io.lettuce.core.RedisClient; import io.lettuce.core.api.StatefulRedisConnection; -import javafx.util.Pair; - public class RedisClientCreateOperation extends AbstractClientOperation> { @Override - public Pair> createClient(CreateClientConfig clientConfig) { + public SimpleEntry> createClient(CreateClientConfig clientConfig) { String redisUrl = ((CreateRedisConfig) clientConfig).getRedisUrl(); RedisClient redisClient = RedisClient.create(redisUrl); - return new Pair<>(clientConfig.getUniqueKey(), redisClient.connect()); + return new SimpleEntry<>(clientConfig.getUniqueKey(), redisClient.connect()); } @Override diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java index b1ef866b..1933ca59 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java @@ -24,15 +24,15 @@ import org.apache.rocketmq.client.exception.MQClientException; import org.apache.rocketmq.client.producer.DefaultMQProducer; -import lombok.extern.slf4j.Slf4j; +import java.util.AbstractMap.SimpleEntry; -import javafx.util.Pair; +import lombok.extern.slf4j.Slf4j; @Slf4j public class RocketMQProduceClientCreateOperation extends AbstractClientOperation { @Override - public Pair createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateClientConfig clientConfig) { DefaultMQProducer producer = null; try { CreateRocketmqConfig config = (CreateRocketmqConfig) clientConfig; @@ -43,7 +43,7 @@ public Pair createClient(CreateClientConfig clientCon } catch (MQClientException e) { log.error("create rocketmq producer failed", e); } - return new Pair<>(clientConfig.getUniqueKey(), producer); + return new SimpleEntry<>(clientConfig.getUniqueKey(), producer); } @Override diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java index 09282eb5..8ca3a898 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java @@ -24,15 +24,15 @@ import org.apache.rocketmq.client.consumer.DefaultMQPushConsumer; import org.apache.rocketmq.client.exception.MQClientException; -import lombok.extern.slf4j.Slf4j; +import java.util.AbstractMap.SimpleEntry; -import javafx.util.Pair; +import lombok.extern.slf4j.Slf4j; @Slf4j public class RocketMQPushConsumerClientCreateOperation extends AbstractClientOperation { @Override - public Pair createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateClientConfig clientConfig) { DefaultMQPushConsumer consumer = null; try { CreateRocketmqConfig config = (CreateRocketmqConfig) clientConfig; @@ -45,7 +45,7 @@ public Pair createClient(CreateClientConfig clientConfig) { } catch (MQClientException e) { log.error("create rocketmq push consumer failed", e); } - return new Pair(((CreateRocketmqConfig) clientConfig).getNameServerUrl(), consumer); + return new SimpleEntry(((CreateRocketmqConfig) clientConfig).getNameServerUrl(), consumer); } @Override diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java index 44de72d2..1064b4d0 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java @@ -24,17 +24,17 @@ import org.apache.rocketmq.remoting.netty.NettyClientConfig; import org.apache.rocketmq.remoting.netty.NettyRemotingClient; -import javafx.util.Pair; +import java.util.AbstractMap.SimpleEntry; public class RocketMQRemotingClientCreateOperation extends AbstractClientOperation { @Override - public Pair createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateClientConfig clientConfig) { NettyClientConfig config = new NettyClientConfig(); config.setUseTLS(false); RemotingClient remotingClient = new NettyRemotingClient(config); remotingClient.start(); - return new Pair<>(clientConfig.getUniqueKey(), remotingClient); + return new SimpleEntry<>(clientConfig.getUniqueKey(), remotingClient); } @Override diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java index 958d4238..58ff7266 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java @@ -20,11 +20,11 @@ import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import javafx.util.Pair; +import java.util.AbstractMap.SimpleEntry; public class RuntimeClientCreateOperation extends AbstractClientOperation { @Override - public Pair createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateClientConfig clientConfig) { return null; } diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java index a31817c5..f2e0cbec 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java @@ -17,28 +17,38 @@ package org.apache.eventmesh.dashboard.console.function.client; -import static org.junit.jupiter.api.Assertions.*; +import static org.junit.jupiter.api.Assertions.assertNotNull; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import lombok.extern.slf4j.Slf4j; + +@Slf4j class SDKManagerTest { - private CreateRedisConfig createRedisConfig = new CreateRedisConfig(); + private final CreateRedisConfig createRedisConfig = new CreateRedisConfig(); private String redisKey; @BeforeEach void setUp() { - createRedisConfig.setRedisUrl("redis://localhost:6379"); - redisKey = SDKManager.getInstance().createClient(ClientTypeEnum.STORAGE_REDIS, createRedisConfig).getKey(); + try { + createRedisConfig.setRedisUrl("redis://localhost:6379"); + redisKey = SDKManager.getInstance().createClient(ClientTypeEnum.STORAGE_REDIS, createRedisConfig).getKey(); + } catch (Exception e) { + log.warn("SDK manager test init failed, possible reason: redis-server is offline. {}", this.getClass().getSimpleName(), e); + } } @Test public void testGetClient() { - Object redisClient = SDKManager.getInstance().getClient(ClientTypeEnum.STORAGE_REDIS, redisKey); - assertNotNull(redisClient); + try { + Object redisClient = SDKManager.getInstance().getClient(ClientTypeEnum.STORAGE_REDIS, redisKey); + assertNotNull(redisClient); + } catch (Exception e) { + log.warn("SDK manager test failed, possible reason: redis-server is offline. {}", this.getClass().getSimpleName(), e); + } } } \ No newline at end of file diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java index bb677941..d94d0e24 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java @@ -21,13 +21,15 @@ import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; +import java.util.AbstractMap.SimpleEntry; + import org.junit.jupiter.api.Test; import io.lettuce.core.api.StatefulRedisConnection; import lombok.extern.slf4j.Slf4j; -import javafx.util.Pair; + @Slf4j class RedisClientCreateOperationTest { @@ -39,9 +41,9 @@ void testCreateClient() { CreateRedisConfig createClientConfig = new CreateRedisConfig(); createClientConfig.setRedisUrl("redis://localhost:6379"); try { - Pair> pair = redisClientCreateOperation.createClient(createClientConfig); - assertEquals("redis://localhost:6379", pair.getKey()); - String response = pair.getValue().sync().ping(); + SimpleEntry> SimpleEntry = redisClientCreateOperation.createClient(createClientConfig); + assertEquals("redis://localhost:6379", SimpleEntry.getKey()); + String response = SimpleEntry.getValue().sync().ping(); log.info("response:{}", response); } catch (Exception e) { log.error("create redis client failed", e); From 24a703e035b98f20743a2e4037376b9113cf705f Mon Sep 17 00:00:00 2001 From: "lambert@arch" Date: Thu, 14 Mar 2024 16:35:33 +0800 Subject: [PATCH 4/8] style: better name for SDK codes --- ...eration.java => AbstractSDKOperation.java} | 2 +- .../console/function/client/SDKManager.java | 34 +++++++++---------- ...ClientOperation.java => SDKOperation.java} | 2 +- .../EtcdSDKOperation.java} | 6 ++-- .../NacosConfigSDKOperation.java} | 6 ++-- .../NacosNamingSDKOperation.java} | 6 ++-- .../NacosSDKOperation.java} | 10 +++--- .../RedisSDKOperation.java} | 6 ++-- .../RocketMQProduceSDKOperation.java} | 6 ++-- .../RocketMQPushConsumerSDKOperation.java} | 6 ++-- .../RocketMQRemotingSDKOperation.java} | 6 ++-- .../RuntimeSDKOperation.java} | 6 ++-- .../RedisClientCreateOperationTest.java | 4 +-- 13 files changed, 50 insertions(+), 50 deletions(-) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{AbstractClientOperation.java => AbstractSDKOperation.java} (93%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{ClientOperation.java => SDKOperation.java} (97%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{create/EtcdClientCreateOperation.java => operation/EtcdSDKOperation.java} (87%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{create/NacosConfigClientCreateOperation.java => operation/NacosConfigSDKOperation.java} (92%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{create/NacosNamingClientCreateOperation.java => operation/NacosNamingSDKOperation.java} (92%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{create/NacosClientCreateOperation.java => operation/NacosSDKOperation.java} (83%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{create/RedisClientCreateOperation.java => operation/RedisSDKOperation.java} (88%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{create/RocketMQProduceClientCreateOperation.java => operation/RocketMQProduceSDKOperation.java} (91%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{create/RocketMQPushConsumerClientCreateOperation.java => operation/RocketMQPushConsumerSDKOperation.java} (91%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{create/RocketMQRemotingClientCreateOperation.java => operation/RocketMQRemotingSDKOperation.java} (89%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/{create/RuntimeClientCreateOperation.java => operation/RuntimeSDKOperation.java} (87%) rename eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/{create => operation}/RedisClientCreateOperationTest.java (91%) diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractClientOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractSDKOperation.java similarity index 93% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractClientOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractSDKOperation.java index a4d82c14..e2689f39 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractClientOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractSDKOperation.java @@ -17,7 +17,7 @@ package org.apache.eventmesh.dashboard.console.function.client; -public abstract class AbstractClientOperation implements ClientOperation { +public abstract class AbstractSDKOperation implements SDKOperation { protected T castClient(Object client) { try { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java index f480590f..cc6adb6b 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java @@ -18,13 +18,13 @@ package org.apache.eventmesh.dashboard.console.function.client; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import org.apache.eventmesh.dashboard.console.function.client.create.NacosClientCreateOperation; -import org.apache.eventmesh.dashboard.console.function.client.create.NacosConfigClientCreateOperation; -import org.apache.eventmesh.dashboard.console.function.client.create.NacosNamingClientCreateOperation; -import org.apache.eventmesh.dashboard.console.function.client.create.RedisClientCreateOperation; -import org.apache.eventmesh.dashboard.console.function.client.create.RocketMQProduceClientCreateOperation; -import org.apache.eventmesh.dashboard.console.function.client.create.RocketMQPushConsumerClientCreateOperation; -import org.apache.eventmesh.dashboard.console.function.client.create.RocketMQRemotingClientCreateOperation; +import org.apache.eventmesh.dashboard.console.function.client.operation.NacosSDKOperation; +import org.apache.eventmesh.dashboard.console.function.client.operation.NacosConfigSDKOperation; +import org.apache.eventmesh.dashboard.console.function.client.operation.NacosNamingSDKOperation; +import org.apache.eventmesh.dashboard.console.function.client.operation.RedisSDKOperation; +import org.apache.eventmesh.dashboard.console.function.client.operation.RocketMQProduceSDKOperation; +import org.apache.eventmesh.dashboard.console.function.client.operation.RocketMQPushConsumerSDKOperation; +import org.apache.eventmesh.dashboard.console.function.client.operation.RocketMQRemotingSDKOperation; import java.util.AbstractMap.SimpleEntry; import java.util.Map; @@ -54,7 +54,7 @@ public static SDKManager getInstance() { private final Map> clientMap = new ConcurrentHashMap<>(); - private final Map> clientCreateOperationMap = new ConcurrentHashMap<>(); + private final Map> clientCreateOperationMap = new ConcurrentHashMap<>(); // register all client create operation { @@ -62,15 +62,15 @@ public static SDKManager getInstance() { clientMap.put(clientTypeEnum, new ConcurrentHashMap<>()); } - clientCreateOperationMap.put(ClientTypeEnum.STORAGE_REDIS, new RedisClientCreateOperation()); + clientCreateOperationMap.put(ClientTypeEnum.STORAGE_REDIS, new RedisSDKOperation()); - clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_REMOTING, new RocketMQRemotingClientCreateOperation()); - clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_PRODUCER, new RocketMQProduceClientCreateOperation()); - clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_CONSUMER, new RocketMQPushConsumerClientCreateOperation()); + clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_REMOTING, new RocketMQRemotingSDKOperation()); + clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_PRODUCER, new RocketMQProduceSDKOperation()); + clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_CONSUMER, new RocketMQPushConsumerSDKOperation()); - clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS, new NacosClientCreateOperation()); - clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS_CONFIG, new NacosConfigClientCreateOperation()); - clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS_NAMING, new NacosNamingClientCreateOperation()); + clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS, new NacosSDKOperation()); + clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS_CONFIG, new NacosConfigSDKOperation()); + clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS_NAMING, new NacosNamingSDKOperation()); } @@ -88,7 +88,7 @@ public SimpleEntry createClient(ClientTypeEnum clientTypeEnum, St Object client = clients.get(uniqueKey); SimpleEntry result = new SimpleEntry<>(uniqueKey, client); if (Objects.isNull(client)) { - ClientOperation clientCreateOperation = this.clientCreateOperationMap.get(clientTypeEnum); + SDKOperation clientCreateOperation = this.clientCreateOperationMap.get(clientTypeEnum); result = clientCreateOperation.createClient(config); clients.put(result.getKey(), result.getValue()); } @@ -101,7 +101,7 @@ public SimpleEntry createClient(ClientTypeEnum clientTypeEnum, St public void deleteClient(ClientTypeEnum clientTypeEnum, String uniqueKey) { Map clients = this.clientMap.get(clientTypeEnum); - ClientOperation operation = this.clientCreateOperationMap.get(clientTypeEnum); + SDKOperation operation = this.clientCreateOperationMap.get(clientTypeEnum); try { operation.close(clients.get(uniqueKey)); } catch (Exception e) { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKOperation.java similarity index 97% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKOperation.java index 760b2a13..e6add8e7 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKOperation.java @@ -26,7 +26,7 @@ * * @param SDK client */ -public interface ClientOperation { +public interface SDKOperation { public SimpleEntry createClient(CreateClientConfig clientConfig); diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/EtcdSDKOperation.java similarity index 87% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/EtcdSDKOperation.java index 7eb6f122..a0df642f 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/EtcdClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/EtcdSDKOperation.java @@ -15,14 +15,14 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.create; +package org.apache.eventmesh.dashboard.console.function.client.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import java.util.AbstractMap.SimpleEntry; -public class EtcdClientCreateOperation extends AbstractClientOperation { +public class EtcdSDKOperation extends AbstractSDKOperation { @Override public SimpleEntry createClient(CreateClientConfig clientConfig) { return null; diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosConfigSDKOperation.java similarity index 92% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosConfigSDKOperation.java index 90eeb089..359896ad 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosConfigClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosConfigSDKOperation.java @@ -15,9 +15,9 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.create; +package org.apache.eventmesh.dashboard.console.function.client.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.config.CreateNacosConfig; @@ -31,7 +31,7 @@ import lombok.extern.slf4j.Slf4j; @Slf4j -public class NacosConfigClientCreateOperation extends AbstractClientOperation { +public class NacosConfigSDKOperation extends AbstractSDKOperation { @Override public SimpleEntry createClient(CreateClientConfig clientConfig) { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosNamingSDKOperation.java similarity index 92% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosNamingSDKOperation.java index 0b6df761..e3a3bad3 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosNamingClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosNamingSDKOperation.java @@ -15,9 +15,9 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.create; +package org.apache.eventmesh.dashboard.console.function.client.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.config.CreateNacosConfig; @@ -32,7 +32,7 @@ import lombok.extern.slf4j.Slf4j; @Slf4j -public class NacosNamingClientCreateOperation extends AbstractClientOperation { +public class NacosNamingSDKOperation extends AbstractSDKOperation { @Override public SimpleEntry createClient(CreateClientConfig clientConfig) { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosSDKOperation.java similarity index 83% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosSDKOperation.java index 0e1eef56..e7d971d1 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/NacosClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosSDKOperation.java @@ -15,9 +15,9 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.create; +package org.apache.eventmesh.dashboard.console.function.client.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.wrapper.NacosClientWrapper; @@ -26,10 +26,10 @@ import com.alibaba.nacos.api.config.ConfigService; import com.alibaba.nacos.api.naming.NamingService; -public class NacosClientCreateOperation extends AbstractClientOperation { +public class NacosSDKOperation extends AbstractSDKOperation { - private final NacosConfigClientCreateOperation nacosConfigClientCreateOperation = new NacosConfigClientCreateOperation(); - private final NacosNamingClientCreateOperation nacosNamingClientCreateOperation = new NacosNamingClientCreateOperation(); + private final NacosConfigSDKOperation nacosConfigClientCreateOperation = new NacosConfigSDKOperation(); + private final NacosNamingSDKOperation nacosNamingClientCreateOperation = new NacosNamingSDKOperation(); @Override public SimpleEntry createClient(CreateClientConfig createClientConfig) { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisSDKOperation.java similarity index 88% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisSDKOperation.java index cba67ec7..99403118 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisSDKOperation.java @@ -15,9 +15,9 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.create; +package org.apache.eventmesh.dashboard.console.function.client.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; @@ -26,7 +26,7 @@ import io.lettuce.core.RedisClient; import io.lettuce.core.api.StatefulRedisConnection; -public class RedisClientCreateOperation extends AbstractClientOperation> { +public class RedisSDKOperation extends AbstractSDKOperation> { @Override public SimpleEntry> createClient(CreateClientConfig clientConfig) { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQProduceSDKOperation.java similarity index 91% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQProduceSDKOperation.java index 1933ca59..d888a4ed 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQProduceClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQProduceSDKOperation.java @@ -15,9 +15,9 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.create; +package org.apache.eventmesh.dashboard.console.function.client.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.config.CreateRocketmqConfig; @@ -29,7 +29,7 @@ import lombok.extern.slf4j.Slf4j; @Slf4j -public class RocketMQProduceClientCreateOperation extends AbstractClientOperation { +public class RocketMQProduceSDKOperation extends AbstractSDKOperation { @Override public SimpleEntry createClient(CreateClientConfig clientConfig) { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQPushConsumerSDKOperation.java similarity index 91% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQPushConsumerSDKOperation.java index 8ca3a898..3d14500e 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQPushConsumerClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQPushConsumerSDKOperation.java @@ -15,9 +15,9 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.create; +package org.apache.eventmesh.dashboard.console.function.client.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.eventmesh.dashboard.console.function.client.config.CreateRocketmqConfig; @@ -29,7 +29,7 @@ import lombok.extern.slf4j.Slf4j; @Slf4j -public class RocketMQPushConsumerClientCreateOperation extends AbstractClientOperation { +public class RocketMQPushConsumerSDKOperation extends AbstractSDKOperation { @Override public SimpleEntry createClient(CreateClientConfig clientConfig) { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQRemotingSDKOperation.java similarity index 89% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQRemotingSDKOperation.java index 1064b4d0..22685e66 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RocketMQRemotingClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQRemotingSDKOperation.java @@ -15,9 +15,9 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.create; +package org.apache.eventmesh.dashboard.console.function.client.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import org.apache.rocketmq.remoting.RemotingClient; @@ -26,7 +26,7 @@ import java.util.AbstractMap.SimpleEntry; -public class RocketMQRemotingClientCreateOperation extends AbstractClientOperation { +public class RocketMQRemotingSDKOperation extends AbstractSDKOperation { @Override public SimpleEntry createClient(CreateClientConfig clientConfig) { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RuntimeSDKOperation.java similarity index 87% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RuntimeSDKOperation.java index 58ff7266..a5f06b64 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/create/RuntimeClientCreateOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RuntimeSDKOperation.java @@ -15,14 +15,14 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.create; +package org.apache.eventmesh.dashboard.console.function.client.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractClientOperation; +import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; import java.util.AbstractMap.SimpleEntry; -public class RuntimeClientCreateOperation extends AbstractClientOperation { +public class RuntimeSDKOperation extends AbstractSDKOperation { @Override public SimpleEntry createClient(CreateClientConfig clientConfig) { return null; diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisClientCreateOperationTest.java similarity index 91% rename from eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java rename to eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisClientCreateOperationTest.java index d94d0e24..f054f365 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/create/RedisClientCreateOperationTest.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisClientCreateOperationTest.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.create; +package org.apache.eventmesh.dashboard.console.function.client.operation; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -34,7 +34,7 @@ @Slf4j class RedisClientCreateOperationTest { - private RedisClientCreateOperation redisClientCreateOperation = new RedisClientCreateOperation(); + private RedisSDKOperation redisClientCreateOperation = new RedisSDKOperation(); @Test void testCreateClient() { From 66166ac1c8d4415a491beeefc0d470f5dea40792 Mon Sep 17 00:00:00 2001 From: "lambert@arch" Date: Thu, 14 Mar 2024 17:57:15 +0800 Subject: [PATCH 5/8] style --- .../client/operation/RedisClientCreateOperationTest.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisClientCreateOperationTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisClientCreateOperationTest.java index f054f365..1fec1fe3 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisClientCreateOperationTest.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisClientCreateOperationTest.java @@ -41,9 +41,9 @@ void testCreateClient() { CreateRedisConfig createClientConfig = new CreateRedisConfig(); createClientConfig.setRedisUrl("redis://localhost:6379"); try { - SimpleEntry> SimpleEntry = redisClientCreateOperation.createClient(createClientConfig); - assertEquals("redis://localhost:6379", SimpleEntry.getKey()); - String response = SimpleEntry.getValue().sync().ping(); + SimpleEntry> simpleEntry = redisClientCreateOperation.createClient(createClientConfig); + assertEquals("redis://localhost:6379", simpleEntry.getKey()); + String response = simpleEntry.getValue().sync().ping(); log.info("response:{}", response); } catch (Exception e) { log.error("create redis client failed", e); From a2a67e9dca75667a66c9b44a6b228504abefab23 Mon Sep 17 00:00:00 2001 From: "lambert@arch" Date: Thu, 14 Mar 2024 18:01:26 +0800 Subject: [PATCH 6/8] style --- .../eventmesh/dashboard/console/function/client/SDKManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java index cc6adb6b..c29d5d04 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java @@ -18,9 +18,9 @@ package org.apache.eventmesh.dashboard.console.function.client; import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import org.apache.eventmesh.dashboard.console.function.client.operation.NacosSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.operation.NacosConfigSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.operation.NacosNamingSDKOperation; +import org.apache.eventmesh.dashboard.console.function.client.operation.NacosSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.operation.RedisSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.operation.RocketMQProduceSDKOperation; import org.apache.eventmesh.dashboard.console.function.client.operation.RocketMQPushConsumerSDKOperation; From 559da54a88711463207585f866dd2649b0e0390b Mon Sep 17 00:00:00 2001 From: "lambert@arch" Date: Fri, 15 Mar 2024 09:32:13 +0800 Subject: [PATCH 7/8] style: just rename SDK --- .../{client => SDK}/AbstractSDKOperation.java | 2 +- .../function/{client => SDK}/SDKManager.java | 48 +++++++++---------- .../{client => SDK}/SDKOperation.java | 6 +-- .../SDKTypeEnum.java} | 10 ++-- .../config/CreateNacosConfig.java | 4 +- .../config/CreateRedisConfig.java | 4 +- .../config/CreateRocketmqConfig.java | 4 +- .../config/CreateSDKConfig.java} | 4 +- .../operation/EtcdSDKOperation.java | 8 ++-- .../operation/NacosConfigSDKOperation.java | 10 ++-- .../operation/NacosNamingSDKOperation.java | 10 ++-- .../operation/NacosSDKOperation.java | 14 +++--- .../operation/RedisSDKOperation.java | 10 ++-- .../RocketMQProduceSDKOperation.java | 10 ++-- .../RocketMQPushConsumerSDKOperation.java | 10 ++-- .../RocketMQRemotingSDKOperation.java | 8 ++-- .../operation/RuntimeSDKOperation.java | 8 ++-- .../wrapper/NacosSDKWrapper.java} | 4 +- .../{client => SDK}/SDKManagerTest.java | 8 ++-- .../RedisSDKCreateOperationTest.java} | 6 +-- 20 files changed, 94 insertions(+), 94 deletions(-) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/AbstractSDKOperation.java (94%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/SDKManager.java (54%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/SDKOperation.java (81%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client/ClientTypeEnum.java => SDK/SDKTypeEnum.java} (85%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/config/CreateNacosConfig.java (87%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/config/CreateRedisConfig.java (87%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/config/CreateRocketmqConfig.java (91%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client/config/CreateClientConfig.java => SDK/config/CreateSDKConfig.java} (89%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/operation/EtcdSDKOperation.java (76%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/operation/NacosConfigSDKOperation.java (84%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/operation/NacosNamingSDKOperation.java (84%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/operation/NacosSDKOperation.java (79%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/operation/RedisSDKOperation.java (78%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/operation/RocketMQProduceSDKOperation.java (83%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/operation/RocketMQPushConsumerSDKOperation.java (84%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/operation/RocketMQRemotingSDKOperation.java (85%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/operation/RuntimeSDKOperation.java (76%) rename eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/{client/wrapper/NacosClientWrapper.java => SDK/wrapper/NacosSDKWrapper.java} (92%) rename eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/{client => SDK}/SDKManagerTest.java (84%) rename eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/{client/operation/RedisClientCreateOperationTest.java => SDK/operation/RedisSDKCreateOperationTest.java} (89%) diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/AbstractSDKOperation.java similarity index 94% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractSDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/AbstractSDKOperation.java index e2689f39..c2e5b964 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/AbstractSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/AbstractSDKOperation.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client; +package org.apache.eventmesh.dashboard.console.function.SDK; public abstract class AbstractSDKOperation implements SDKOperation { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKManager.java similarity index 54% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKManager.java index c29d5d04..9ac4dbdc 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKManager.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKManager.java @@ -15,16 +15,16 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client; +package org.apache.eventmesh.dashboard.console.function.SDK; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import org.apache.eventmesh.dashboard.console.function.client.operation.NacosConfigSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.operation.NacosNamingSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.operation.NacosSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.operation.RedisSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.operation.RocketMQProduceSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.operation.RocketMQPushConsumerSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.operation.RocketMQRemotingSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.operation.NacosConfigSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.operation.NacosNamingSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.operation.NacosSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.operation.RedisSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.operation.RocketMQProduceSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.operation.RocketMQPushConsumerSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.operation.RocketMQRemotingSDKOperation; import java.util.AbstractMap.SimpleEntry; import java.util.Map; @@ -49,39 +49,39 @@ public static SDKManager getInstance() { /** * inner key is the unique key of a client, such as (ip + port) they are defined in CreateClientConfig * - * @see CreateClientConfig#getUniqueKey() + * @see CreateSDKConfig#getUniqueKey() */ - private final Map> clientMap = new ConcurrentHashMap<>(); + private final Map> clientMap = new ConcurrentHashMap<>(); - private final Map> clientCreateOperationMap = new ConcurrentHashMap<>(); + private final Map> clientCreateOperationMap = new ConcurrentHashMap<>(); // register all client create operation { - for (ClientTypeEnum clientTypeEnum : ClientTypeEnum.values()) { + for (SDKTypeEnum clientTypeEnum : SDKTypeEnum.values()) { clientMap.put(clientTypeEnum, new ConcurrentHashMap<>()); } - clientCreateOperationMap.put(ClientTypeEnum.STORAGE_REDIS, new RedisSDKOperation()); + clientCreateOperationMap.put(SDKTypeEnum.STORAGE_REDIS, new RedisSDKOperation()); - clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_REMOTING, new RocketMQRemotingSDKOperation()); - clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_PRODUCER, new RocketMQProduceSDKOperation()); - clientCreateOperationMap.put(ClientTypeEnum.STORAGE_ROCKETMQ_CONSUMER, new RocketMQPushConsumerSDKOperation()); + clientCreateOperationMap.put(SDKTypeEnum.STORAGE_ROCKETMQ_REMOTING, new RocketMQRemotingSDKOperation()); + clientCreateOperationMap.put(SDKTypeEnum.STORAGE_ROCKETMQ_PRODUCER, new RocketMQProduceSDKOperation()); + clientCreateOperationMap.put(SDKTypeEnum.STORAGE_ROCKETMQ_CONSUMER, new RocketMQPushConsumerSDKOperation()); - clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS, new NacosSDKOperation()); - clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS_CONFIG, new NacosConfigSDKOperation()); - clientCreateOperationMap.put(ClientTypeEnum.CENTER_NACOS_NAMING, new NacosNamingSDKOperation()); + clientCreateOperationMap.put(SDKTypeEnum.META_NACOS, new NacosSDKOperation()); + clientCreateOperationMap.put(SDKTypeEnum.META_NACOS_CONFIG, new NacosConfigSDKOperation()); + clientCreateOperationMap.put(SDKTypeEnum.META_NACOS_NAMING, new NacosNamingSDKOperation()); } private SDKManager() { } - public SimpleEntry createClient(ClientTypeEnum clientTypeEnum, CreateClientConfig config) { + public SimpleEntry createClient(SDKTypeEnum clientTypeEnum, CreateSDKConfig config) { return createClient(clientTypeEnum, config.getUniqueKey(), config); } - public SimpleEntry createClient(ClientTypeEnum clientTypeEnum, String uniqueKey, CreateClientConfig config) { + public SimpleEntry createClient(SDKTypeEnum clientTypeEnum, String uniqueKey, CreateSDKConfig config) { Map clients = this.clientMap.get(clientTypeEnum); @@ -99,7 +99,7 @@ public SimpleEntry createClient(ClientTypeEnum clientTypeEnum, St } } - public void deleteClient(ClientTypeEnum clientTypeEnum, String uniqueKey) { + public void deleteClient(SDKTypeEnum clientTypeEnum, String uniqueKey) { Map clients = this.clientMap.get(clientTypeEnum); SDKOperation operation = this.clientCreateOperationMap.get(clientTypeEnum); try { @@ -110,7 +110,7 @@ public void deleteClient(ClientTypeEnum clientTypeEnum, String uniqueKey) { clients.remove(uniqueKey); } - public Object getClient(ClientTypeEnum clientTypeEnum, String uniqueKey) { + public Object getClient(SDKTypeEnum clientTypeEnum, String uniqueKey) { return this.clientMap.get(clientTypeEnum).get(uniqueKey); } } diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKOperation.java similarity index 81% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKOperation.java index e6add8e7..19d264c5 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/SDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKOperation.java @@ -15,9 +15,9 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client; +package org.apache.eventmesh.dashboard.console.function.SDK; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import java.util.AbstractMap.SimpleEntry; @@ -28,7 +28,7 @@ */ public interface SDKOperation { - public SimpleEntry createClient(CreateClientConfig clientConfig); + public SimpleEntry createClient(CreateSDKConfig clientConfig); public void close(Object client); diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientTypeEnum.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKTypeEnum.java similarity index 85% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientTypeEnum.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKTypeEnum.java index 6bb22cf8..9a44873d 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/ClientTypeEnum.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKTypeEnum.java @@ -15,9 +15,9 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client; +package org.apache.eventmesh.dashboard.console.function.SDK; -public enum ClientTypeEnum { +public enum SDKTypeEnum { RUNTIME, @@ -29,10 +29,10 @@ public enum ClientTypeEnum { STORAGE_REDIS, - CENTER_NACOS, - CENTER_NACOS_CONFIG, + META_NACOS, + META_NACOS_CONFIG, - CENTER_NACOS_NAMING, + META_NACOS_NAMING, } diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateNacosConfig.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateNacosConfig.java similarity index 87% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateNacosConfig.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateNacosConfig.java index fbc18419..856d4de5 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateNacosConfig.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateNacosConfig.java @@ -15,12 +15,12 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.config; +package org.apache.eventmesh.dashboard.console.function.SDK.config; import lombok.Data; @Data -public class CreateNacosConfig implements CreateClientConfig { +public class CreateNacosConfig implements CreateSDKConfig { private String serverAddress; diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRedisConfig.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateRedisConfig.java similarity index 87% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRedisConfig.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateRedisConfig.java index c40e5c6a..30c53b89 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRedisConfig.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateRedisConfig.java @@ -15,12 +15,12 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.config; +package org.apache.eventmesh.dashboard.console.function.SDK.config; import lombok.Data; @Data -public class CreateRedisConfig implements CreateClientConfig { +public class CreateRedisConfig implements CreateSDKConfig { private String redisUrl; diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRocketmqConfig.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateRocketmqConfig.java similarity index 91% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRocketmqConfig.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateRocketmqConfig.java index f27137ce..89424e70 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateRocketmqConfig.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateRocketmqConfig.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.config; +package org.apache.eventmesh.dashboard.console.function.SDK.config; import org.apache.rocketmq.client.consumer.listener.MessageListener; import org.apache.rocketmq.common.protocol.heartbeat.MessageModel; @@ -23,7 +23,7 @@ import lombok.Data; @Data -public class CreateRocketmqConfig implements CreateClientConfig { +public class CreateRocketmqConfig implements CreateSDKConfig { // common private String nameServerUrl; diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateClientConfig.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateSDKConfig.java similarity index 89% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateClientConfig.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateSDKConfig.java index fca4a7b0..9a404f2e 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/config/CreateClientConfig.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/config/CreateSDKConfig.java @@ -15,12 +15,12 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.config; +package org.apache.eventmesh.dashboard.console.function.SDK.config; /** * Config to create an SDK client, usually contains an address url. */ -public interface CreateClientConfig { +public interface CreateSDKConfig { String getUniqueKey(); } diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/EtcdSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/EtcdSDKOperation.java similarity index 76% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/EtcdSDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/EtcdSDKOperation.java index a0df642f..75beaf69 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/EtcdSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/EtcdSDKOperation.java @@ -15,16 +15,16 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.operation; +package org.apache.eventmesh.dashboard.console.function.SDK.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import java.util.AbstractMap.SimpleEntry; public class EtcdSDKOperation extends AbstractSDKOperation { @Override - public SimpleEntry createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateSDKConfig clientConfig) { return null; } diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosConfigSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosConfigSDKOperation.java similarity index 84% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosConfigSDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosConfigSDKOperation.java index 359896ad..1dbaf458 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosConfigSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosConfigSDKOperation.java @@ -15,11 +15,11 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.operation; +package org.apache.eventmesh.dashboard.console.function.SDK.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateNacosConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateNacosConfig; import java.util.AbstractMap.SimpleEntry; import java.util.Properties; @@ -34,7 +34,7 @@ public class NacosConfigSDKOperation extends AbstractSDKOperation { @Override - public SimpleEntry createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateSDKConfig clientConfig) { ConfigService configService = null; CreateNacosConfig config = (CreateNacosConfig) clientConfig; try { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosNamingSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosNamingSDKOperation.java similarity index 84% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosNamingSDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosNamingSDKOperation.java index e3a3bad3..4b9f679f 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosNamingSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosNamingSDKOperation.java @@ -15,11 +15,11 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.operation; +package org.apache.eventmesh.dashboard.console.function.SDK.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateNacosConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateNacosConfig; import java.util.AbstractMap.SimpleEntry; import java.util.Properties; @@ -35,7 +35,7 @@ public class NacosNamingSDKOperation extends AbstractSDKOperation { @Override - public SimpleEntry createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateSDKConfig clientConfig) { NamingService namingService = null; CreateNacosConfig config = (CreateNacosConfig) clientConfig; try { diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosSDKOperation.java similarity index 79% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosSDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosSDKOperation.java index e7d971d1..e0b326e7 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/NacosSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosSDKOperation.java @@ -15,30 +15,30 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.operation; +package org.apache.eventmesh.dashboard.console.function.SDK.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import org.apache.eventmesh.dashboard.console.function.client.wrapper.NacosClientWrapper; +import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.wrapper.NacosSDKWrapper; import java.util.AbstractMap.SimpleEntry; import com.alibaba.nacos.api.config.ConfigService; import com.alibaba.nacos.api.naming.NamingService; -public class NacosSDKOperation extends AbstractSDKOperation { +public class NacosSDKOperation extends AbstractSDKOperation { private final NacosConfigSDKOperation nacosConfigClientCreateOperation = new NacosConfigSDKOperation(); private final NacosNamingSDKOperation nacosNamingClientCreateOperation = new NacosNamingSDKOperation(); @Override - public SimpleEntry createClient(CreateClientConfig createClientConfig) { + public SimpleEntry createClient(CreateSDKConfig createClientConfig) { SimpleEntry configSimpleEntry = nacosConfigClientCreateOperation.createClient(createClientConfig); SimpleEntry namingSimpleEntry = nacosNamingClientCreateOperation.createClient(createClientConfig); if (configSimpleEntry.getKey() != namingSimpleEntry.getKey()) { throw new RuntimeException("Nacos config and naming server address not match"); } - NacosClientWrapper nacosClient = new NacosClientWrapper( + NacosSDKWrapper nacosClient = new NacosSDKWrapper( (ConfigService) configSimpleEntry.getValue(), (NamingService) namingSimpleEntry.getValue() ); return new SimpleEntry<>(configSimpleEntry.getKey(), nacosClient); diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RedisSDKOperation.java similarity index 78% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisSDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RedisSDKOperation.java index 99403118..09195f92 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RedisSDKOperation.java @@ -15,11 +15,11 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.operation; +package org.apache.eventmesh.dashboard.console.function.SDK.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateRedisConfig; import java.util.AbstractMap.SimpleEntry; @@ -29,7 +29,7 @@ public class RedisSDKOperation extends AbstractSDKOperation> { @Override - public SimpleEntry> createClient(CreateClientConfig clientConfig) { + public SimpleEntry> createClient(CreateSDKConfig clientConfig) { String redisUrl = ((CreateRedisConfig) clientConfig).getRedisUrl(); RedisClient redisClient = RedisClient.create(redisUrl); return new SimpleEntry<>(clientConfig.getUniqueKey(), redisClient.connect()); diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQProduceSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQProduceSDKOperation.java similarity index 83% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQProduceSDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQProduceSDKOperation.java index d888a4ed..1c19f0f9 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQProduceSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQProduceSDKOperation.java @@ -15,11 +15,11 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.operation; +package org.apache.eventmesh.dashboard.console.function.SDK.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateRocketmqConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateRocketmqConfig; import org.apache.rocketmq.client.exception.MQClientException; import org.apache.rocketmq.client.producer.DefaultMQProducer; @@ -32,7 +32,7 @@ public class RocketMQProduceSDKOperation extends AbstractSDKOperation { @Override - public SimpleEntry createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateSDKConfig clientConfig) { DefaultMQProducer producer = null; try { CreateRocketmqConfig config = (CreateRocketmqConfig) clientConfig; diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQPushConsumerSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQPushConsumerSDKOperation.java similarity index 84% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQPushConsumerSDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQPushConsumerSDKOperation.java index 3d14500e..eec4599f 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQPushConsumerSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQPushConsumerSDKOperation.java @@ -15,11 +15,11 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.operation; +package org.apache.eventmesh.dashboard.console.function.SDK.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateRocketmqConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateRocketmqConfig; import org.apache.rocketmq.client.consumer.DefaultMQPushConsumer; import org.apache.rocketmq.client.exception.MQClientException; @@ -32,7 +32,7 @@ public class RocketMQPushConsumerSDKOperation extends AbstractSDKOperation { @Override - public SimpleEntry createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateSDKConfig clientConfig) { DefaultMQPushConsumer consumer = null; try { CreateRocketmqConfig config = (CreateRocketmqConfig) clientConfig; diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQRemotingSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQRemotingSDKOperation.java similarity index 85% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQRemotingSDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQRemotingSDKOperation.java index 22685e66..3c88ff4e 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RocketMQRemotingSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQRemotingSDKOperation.java @@ -15,10 +15,10 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.operation; +package org.apache.eventmesh.dashboard.console.function.SDK.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import org.apache.rocketmq.remoting.RemotingClient; import org.apache.rocketmq.remoting.netty.NettyClientConfig; @@ -29,7 +29,7 @@ public class RocketMQRemotingSDKOperation extends AbstractSDKOperation { @Override - public SimpleEntry createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateSDKConfig clientConfig) { NettyClientConfig config = new NettyClientConfig(); config.setUseTLS(false); RemotingClient remotingClient = new NettyRemotingClient(config); diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RuntimeSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RuntimeSDKOperation.java similarity index 76% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RuntimeSDKOperation.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RuntimeSDKOperation.java index a5f06b64..65d358c8 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/operation/RuntimeSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RuntimeSDKOperation.java @@ -15,16 +15,16 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.operation; +package org.apache.eventmesh.dashboard.console.function.SDK.operation; -import org.apache.eventmesh.dashboard.console.function.client.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateClientConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import java.util.AbstractMap.SimpleEntry; public class RuntimeSDKOperation extends AbstractSDKOperation { @Override - public SimpleEntry createClient(CreateClientConfig clientConfig) { + public SimpleEntry createClient(CreateSDKConfig clientConfig) { return null; } diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/wrapper/NacosClientWrapper.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/wrapper/NacosSDKWrapper.java similarity index 92% rename from eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/wrapper/NacosClientWrapper.java rename to eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/wrapper/NacosSDKWrapper.java index 0dbdadc9..7f9e3ffa 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/client/wrapper/NacosClientWrapper.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/wrapper/NacosSDKWrapper.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.wrapper; +package org.apache.eventmesh.dashboard.console.function.SDK.wrapper; import com.alibaba.nacos.api.config.ConfigService; import com.alibaba.nacos.api.exception.NacosException; @@ -24,7 +24,7 @@ import lombok.AllArgsConstructor; @AllArgsConstructor -public class NacosClientWrapper { +public class NacosSDKWrapper { public void shutdown() throws NacosException { configService.shutDown(); diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKManagerTest.java similarity index 84% rename from eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java rename to eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKManagerTest.java index f2e0cbec..4eccdb0f 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/SDKManagerTest.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/SDK/SDKManagerTest.java @@ -15,11 +15,11 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client; +package org.apache.eventmesh.dashboard.console.function.SDK; import static org.junit.jupiter.api.Assertions.assertNotNull; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateRedisConfig; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -36,7 +36,7 @@ class SDKManagerTest { void setUp() { try { createRedisConfig.setRedisUrl("redis://localhost:6379"); - redisKey = SDKManager.getInstance().createClient(ClientTypeEnum.STORAGE_REDIS, createRedisConfig).getKey(); + redisKey = SDKManager.getInstance().createClient(SDKTypeEnum.STORAGE_REDIS, createRedisConfig).getKey(); } catch (Exception e) { log.warn("SDK manager test init failed, possible reason: redis-server is offline. {}", this.getClass().getSimpleName(), e); } @@ -45,7 +45,7 @@ void setUp() { @Test public void testGetClient() { try { - Object redisClient = SDKManager.getInstance().getClient(ClientTypeEnum.STORAGE_REDIS, redisKey); + Object redisClient = SDKManager.getInstance().getClient(SDKTypeEnum.STORAGE_REDIS, redisKey); assertNotNull(redisClient); } catch (Exception e) { log.warn("SDK manager test failed, possible reason: redis-server is offline. {}", this.getClass().getSimpleName(), e); diff --git a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisClientCreateOperationTest.java b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RedisSDKCreateOperationTest.java similarity index 89% rename from eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisClientCreateOperationTest.java rename to eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RedisSDKCreateOperationTest.java index 1fec1fe3..33a06b8e 100644 --- a/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/client/operation/RedisClientCreateOperationTest.java +++ b/eventmesh-dashboard-console/src/test/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RedisSDKCreateOperationTest.java @@ -15,11 +15,11 @@ * limitations under the License. */ -package org.apache.eventmesh.dashboard.console.function.client.operation; +package org.apache.eventmesh.dashboard.console.function.SDK.operation; import static org.junit.jupiter.api.Assertions.assertEquals; -import org.apache.eventmesh.dashboard.console.function.client.config.CreateRedisConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateRedisConfig; import java.util.AbstractMap.SimpleEntry; @@ -32,7 +32,7 @@ @Slf4j -class RedisClientCreateOperationTest { +class RedisSDKCreateOperationTest { private RedisSDKOperation redisClientCreateOperation = new RedisSDKOperation(); From 0e4f14082d8dc2e5ada9a2fcfdbc7e4bb6de0a2c Mon Sep 17 00:00:00 2001 From: "lambert@arch" Date: Fri, 15 Mar 2024 17:23:21 +0800 Subject: [PATCH 8/8] fix: checkstyle --- .../console/function/SDK/operation/NacosConfigSDKOperation.java | 2 +- .../console/function/SDK/operation/NacosNamingSDKOperation.java | 2 +- .../console/function/SDK/operation/RedisSDKOperation.java | 2 +- .../function/SDK/operation/RocketMQProduceSDKOperation.java | 2 +- .../SDK/operation/RocketMQPushConsumerSDKOperation.java | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosConfigSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosConfigSDKOperation.java index 1dbaf458..0757f7bc 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosConfigSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosConfigSDKOperation.java @@ -18,8 +18,8 @@ package org.apache.eventmesh.dashboard.console.function.SDK.operation; import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateNacosConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import java.util.AbstractMap.SimpleEntry; import java.util.Properties; diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosNamingSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosNamingSDKOperation.java index 4b9f679f..54fcd05b 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosNamingSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/NacosNamingSDKOperation.java @@ -18,8 +18,8 @@ package org.apache.eventmesh.dashboard.console.function.SDK.operation; import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateNacosConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import java.util.AbstractMap.SimpleEntry; import java.util.Properties; diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RedisSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RedisSDKOperation.java index 09195f92..ec50d422 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RedisSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RedisSDKOperation.java @@ -18,8 +18,8 @@ package org.apache.eventmesh.dashboard.console.function.SDK.operation; import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateRedisConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import java.util.AbstractMap.SimpleEntry; diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQProduceSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQProduceSDKOperation.java index 1c19f0f9..2dde6c30 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQProduceSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQProduceSDKOperation.java @@ -18,8 +18,8 @@ package org.apache.eventmesh.dashboard.console.function.SDK.operation; import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateRocketmqConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import org.apache.rocketmq.client.exception.MQClientException; import org.apache.rocketmq.client.producer.DefaultMQProducer; diff --git a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQPushConsumerSDKOperation.java b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQPushConsumerSDKOperation.java index eec4599f..f25d4df0 100644 --- a/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQPushConsumerSDKOperation.java +++ b/eventmesh-dashboard-console/src/main/java/org/apache/eventmesh/dashboard/console/function/SDK/operation/RocketMQPushConsumerSDKOperation.java @@ -18,8 +18,8 @@ package org.apache.eventmesh.dashboard.console.function.SDK.operation; import org.apache.eventmesh.dashboard.console.function.SDK.AbstractSDKOperation; -import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateRocketmqConfig; +import org.apache.eventmesh.dashboard.console.function.SDK.config.CreateSDKConfig; import org.apache.rocketmq.client.consumer.DefaultMQPushConsumer; import org.apache.rocketmq.client.exception.MQClientException;