You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ji...@apache.org on 2022/04/26 06:48:35 UTC

[iotdb] 01/01: [De-Singleton-1] remove singleton pattern for some classes

This is an automated email from the ASF dual-hosted git repository.

jianyun pushed a commit to branch jianyun/de-singleton
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 6622cbbc230f4f037b51c0790ade91acf6a6bfdd
Author: chengjianyun <ch...@360.cn>
AuthorDate: Tue Apr 26 14:47:39 2022 +0800

    [De-Singleton-1] remove singleton pattern for some classes
---
 .../iotdb/cluster/server/ClusterRPCService.java    |  5 -----
 .../server/clusterinfo/ClusterInfoServer.java      |  5 -----
 .../server/raft/DataRaftHeartBeatService.java      |  6 ------
 .../iotdb/cluster/server/raft/DataRaftService.java |  6 ------
 .../server/raft/MetaRaftHeartBeatService.java      |  6 ------
 .../iotdb/cluster/server/raft/MetaRaftService.java |  6 ------
 .../iotdb/confignode/service/ConfigNode.java       | 23 ++++------------------
 .../confignode/service/ConfigNodeCommandLine.java  |  2 +-
 .../service/thrift/server/ConfigNodeRPCServer.java | 22 ---------------------
 .../utils/ConfigNodeEnvironmentUtils.java          |  4 ++--
 .../iotdb/commons/service/ThriftService.java       |  4 +---
 .../db/mpp/buffer/DataBlockManagerService.java     |  5 -----
 .../iotdb/db/service/DataNodeManagementServer.java |  5 -----
 .../iotdb/db/service/InfluxDBRPCService.java       |  5 -----
 .../apache/iotdb/db/service/InternalService.java   |  5 -----
 .../org/apache/iotdb/db/service/RPCService.java    |  5 -----
 .../iotdb/db/sync/receiver/SyncServerManager.java  |  5 -----
 17 files changed, 8 insertions(+), 111 deletions(-)

diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/ClusterRPCService.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/ClusterRPCService.java
index dfb957b71f..7bdb9de7a2 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/ClusterRPCService.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/ClusterRPCService.java
@@ -38,11 +38,6 @@ public class ClusterRPCService extends ThriftService implements ClusterRPCServic
 
   private ClusterRPCService() {}
 
-  @Override
-  public ThriftService getImplementation() {
-    return ClusterRPCServiceHolder.INSTANCE;
-  }
-
   @Override
   public ServiceType getID() {
     return ServiceType.CLUSTER_RPC_SERVICE;
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServer.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServer.java
index d931274be2..d525790f4f 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServer.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/clusterinfo/ClusterInfoServer.java
@@ -42,11 +42,6 @@ public class ClusterInfoServer extends ThriftService implements ClusterInfoServe
     return ServiceType.CLUSTER_INFO_SERVICE;
   }
 
-  @Override
-  public ThriftService getImplementation() {
-    return getInstance();
-  }
-
   @Override
   public void initTProcessor() {
     initSyncedServiceImpl(null);
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/DataRaftHeartBeatService.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/DataRaftHeartBeatService.java
index f9de563a4d..b70851618c 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/DataRaftHeartBeatService.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/DataRaftHeartBeatService.java
@@ -23,7 +23,6 @@ import org.apache.iotdb.cluster.config.ClusterDescriptor;
 import org.apache.iotdb.cluster.utils.ClusterUtils;
 import org.apache.iotdb.commons.concurrent.ThreadName;
 import org.apache.iotdb.commons.service.ServiceType;
-import org.apache.iotdb.commons.service.ThriftService;
 import org.apache.iotdb.commons.service.ThriftServiceThread;
 
 public class DataRaftHeartBeatService extends AbstractDataRaftService
@@ -31,11 +30,6 @@ public class DataRaftHeartBeatService extends AbstractDataRaftService
 
   private DataRaftHeartBeatService() {}
 
-  @Override
-  public ThriftService getImplementation() {
-    return DataRaftHeartBeatServiceHolder.INSTANCE;
-  }
-
   @Override
   public ServiceType getID() {
     return ServiceType.CLUSTER_DATA_HEART_BEAT_RPC_SERVICE;
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/DataRaftService.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/DataRaftService.java
index b855ef8d0f..b449730386 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/DataRaftService.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/DataRaftService.java
@@ -22,18 +22,12 @@ package org.apache.iotdb.cluster.server.raft;
 import org.apache.iotdb.cluster.config.ClusterDescriptor;
 import org.apache.iotdb.commons.concurrent.ThreadName;
 import org.apache.iotdb.commons.service.ServiceType;
-import org.apache.iotdb.commons.service.ThriftService;
 import org.apache.iotdb.commons.service.ThriftServiceThread;
 
 public class DataRaftService extends AbstractDataRaftService implements DataRaftServiceMBean {
 
   private DataRaftService() {}
 
-  @Override
-  public ThriftService getImplementation() {
-    return DataRaftServiceHolder.INSTANCE;
-  }
-
   @Override
   public ServiceType getID() {
     return ServiceType.CLUSTER_DATA_RPC_SERVICE;
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/MetaRaftHeartBeatService.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/MetaRaftHeartBeatService.java
index 85c1d5b55b..5166b56b22 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/MetaRaftHeartBeatService.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/MetaRaftHeartBeatService.java
@@ -23,7 +23,6 @@ import org.apache.iotdb.cluster.config.ClusterDescriptor;
 import org.apache.iotdb.cluster.utils.ClusterUtils;
 import org.apache.iotdb.commons.concurrent.ThreadName;
 import org.apache.iotdb.commons.service.ServiceType;
-import org.apache.iotdb.commons.service.ThriftService;
 import org.apache.iotdb.commons.service.ThriftServiceThread;
 
 public class MetaRaftHeartBeatService extends AbstractMetaRaftService
@@ -31,11 +30,6 @@ public class MetaRaftHeartBeatService extends AbstractMetaRaftService
 
   private MetaRaftHeartBeatService() {}
 
-  @Override
-  public ThriftService getImplementation() {
-    return MetaRaftHeartBeatServiceHolder.INSTANCE;
-  }
-
   @Override
   public ServiceType getID() {
     return ServiceType.CLUSTER_META_HEART_BEAT_RPC_SERVICE;
diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/MetaRaftService.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/MetaRaftService.java
index 2793ca3efa..a7eff19b76 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/MetaRaftService.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/raft/MetaRaftService.java
@@ -22,18 +22,12 @@ package org.apache.iotdb.cluster.server.raft;
 import org.apache.iotdb.cluster.config.ClusterDescriptor;
 import org.apache.iotdb.commons.concurrent.ThreadName;
 import org.apache.iotdb.commons.service.ServiceType;
-import org.apache.iotdb.commons.service.ThriftService;
 import org.apache.iotdb.commons.service.ThriftServiceThread;
 
 public class MetaRaftService extends AbstractMetaRaftService implements MetaRaftServiceMBean {
 
   private MetaRaftService() {}
 
-  @Override
-  public ThriftService getImplementation() {
-    return MetaRaftServiceHolder.INSTANCE;
-  }
-
   @Override
   public ServiceType getID() {
     return ServiceType.CLUSTER_META_RPC_SERVICE;
diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/service/ConfigNode.java b/confignode/src/main/java/org/apache/iotdb/confignode/service/ConfigNode.java
index 418ff9a47e..a94b245c0f 100644
--- a/confignode/src/main/java/org/apache/iotdb/confignode/service/ConfigNode.java
+++ b/confignode/src/main/java/org/apache/iotdb/confignode/service/ConfigNode.java
@@ -42,9 +42,7 @@ public class ConfigNode implements ConfigNodeMBean {
 
   private final RegisterManager registerManager = new RegisterManager();
 
-  private ConfigNode() {
-    // empty constructor
-  }
+  private final ConfigNodeRPCServer configNodeRPCServer = new ConfigNodeRPCServer();
 
   public static void main(String[] args) {
     new ConfigNodeCommandLine().doMain(args);
@@ -54,10 +52,10 @@ public class ConfigNode implements ConfigNodeMBean {
   private void setUp() throws StartupException, IOException {
     LOGGER.info("Setting up {}...", ConfigNodeConstant.GLOBAL_NAME);
     registerManager.register(JMXService.getInstance());
-    JMXService.registerMBean(getInstance(), mbeanName);
+    JMXService.registerMBean(this, mbeanName);
 
-    ConfigNodeRPCServer.getInstance().initSyncedServiceImpl(new ConfigNodeRPCServerProcessor());
-    registerManager.register(ConfigNodeRPCServer.getInstance());
+    configNodeRPCServer.initSyncedServiceImpl(new ConfigNodeRPCServerProcessor());
+    registerManager.register(configNodeRPCServer);
     LOGGER.info("Init rpc server success");
   }
 
@@ -91,17 +89,4 @@ public class ConfigNode implements ConfigNodeMBean {
   public void stop() {
     deactivate();
   }
-
-  private static class ConfigNodeHolder {
-
-    private static final ConfigNode INSTANCE = new ConfigNode();
-
-    private ConfigNodeHolder() {
-      // empty constructor
-    }
-  }
-
-  public static ConfigNode getInstance() {
-    return ConfigNodeHolder.INSTANCE;
-  }
 }
diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/service/ConfigNodeCommandLine.java b/confignode/src/main/java/org/apache/iotdb/confignode/service/ConfigNodeCommandLine.java
index 52894d3968..05c997f4eb 100644
--- a/confignode/src/main/java/org/apache/iotdb/confignode/service/ConfigNodeCommandLine.java
+++ b/confignode/src/main/java/org/apache/iotdb/confignode/service/ConfigNodeCommandLine.java
@@ -76,7 +76,7 @@ public class ConfigNodeCommandLine extends ServerCommandLine {
         LOGGER.error("Meet error when doing start checking", e);
         return -1;
       }
-      ConfigNode configNode = ConfigNode.getInstance();
+      ConfigNode configNode = new ConfigNode();
       configNode.active();
     } else if (MODE_ADD.equals(mode)) {
       // TODO: add node
diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/service/thrift/server/ConfigNodeRPCServer.java b/confignode/src/main/java/org/apache/iotdb/confignode/service/thrift/server/ConfigNodeRPCServer.java
index 2c3542b5df..905a0e44e3 100644
--- a/confignode/src/main/java/org/apache/iotdb/confignode/service/thrift/server/ConfigNodeRPCServer.java
+++ b/confignode/src/main/java/org/apache/iotdb/confignode/service/thrift/server/ConfigNodeRPCServer.java
@@ -35,15 +35,6 @@ public class ConfigNodeRPCServer extends ThriftService implements ConfigNodeRPCS
 
   private ConfigNodeRPCServerProcessor configNodeRPCServerProcessor;
 
-  private ConfigNodeRPCServer() {
-    // empty constructor
-  }
-
-  @Override
-  public ThriftService getImplementation() {
-    return ConfigNodeRPCServer.getInstance();
-  }
-
   @Override
   public ServiceType getID() {
     return ServiceType.CONFIG_NODE_SERVICE;
@@ -94,17 +85,4 @@ public class ConfigNodeRPCServer extends ThriftService implements ConfigNodeRPCS
   public int getBindPort() {
     return conf.getRpcPort();
   }
-
-  public static ConfigNodeRPCServer getInstance() {
-    return ConfigNodeRPCServerHolder.INSTANCE;
-  }
-
-  private static class ConfigNodeRPCServerHolder {
-
-    private static final ConfigNodeRPCServer INSTANCE = new ConfigNodeRPCServer();
-
-    private ConfigNodeRPCServerHolder() {
-      // empty constructor
-    }
-  }
 }
diff --git a/confignode/src/test/java/org/apache/iotdb/confignode/utils/ConfigNodeEnvironmentUtils.java b/confignode/src/test/java/org/apache/iotdb/confignode/utils/ConfigNodeEnvironmentUtils.java
index cd775c8708..c178aadb1d 100644
--- a/confignode/src/test/java/org/apache/iotdb/confignode/utils/ConfigNodeEnvironmentUtils.java
+++ b/confignode/src/test/java/org/apache/iotdb/confignode/utils/ConfigNodeEnvironmentUtils.java
@@ -44,7 +44,7 @@ public class ConfigNodeEnvironmentUtils {
     LOGGER.debug("ConfigNodeEnvironmentUtils setup...");
 
     if (daemon == null) {
-      daemon = ConfigNode.getInstance();
+      daemon = new ConfigNode();
     }
 
     try {
@@ -93,7 +93,7 @@ public class ConfigNodeEnvironmentUtils {
   @TestOnly
   public static void reactiveDaemon() {
     if (daemon == null) {
-      daemon = ConfigNode.getInstance();
+      daemon = new ConfigNode();
       daemon.active();
     } else {
       activeDaemon();
diff --git a/node-commons/src/main/java/org/apache/iotdb/commons/service/ThriftService.java b/node-commons/src/main/java/org/apache/iotdb/commons/service/ThriftService.java
index e792d88c81..d7effc7053 100644
--- a/node-commons/src/main/java/org/apache/iotdb/commons/service/ThriftService.java
+++ b/node-commons/src/main/java/org/apache/iotdb/commons/service/ThriftService.java
@@ -62,11 +62,9 @@ public abstract class ThriftService implements IService {
     }
   }
 
-  public abstract ThriftService getImplementation();
-
   @Override
   public void start() throws StartupException {
-    JMXService.registerMBean(getImplementation(), mbeanName);
+    JMXService.registerMBean(this, mbeanName);
     startService();
   }
 
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/buffer/DataBlockManagerService.java b/server/src/main/java/org/apache/iotdb/db/mpp/buffer/DataBlockManagerService.java
index 1e4168ce01..a921a4247b 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/buffer/DataBlockManagerService.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/buffer/DataBlockManagerService.java
@@ -30,11 +30,6 @@ public class DataBlockManagerService extends ThriftService {
 
   private DataBlockServiceImpl impl;
 
-  @Override
-  public ThriftService getImplementation() {
-    return DataBlockManagerServiceHolder.INSTANCE;
-  }
-
   @Override
   public void initTProcessor()
       throws ClassNotFoundException, IllegalAccessException, InstantiationException {
diff --git a/server/src/main/java/org/apache/iotdb/db/service/DataNodeManagementServer.java b/server/src/main/java/org/apache/iotdb/db/service/DataNodeManagementServer.java
index 44513c40d1..a378efa963 100644
--- a/server/src/main/java/org/apache/iotdb/db/service/DataNodeManagementServer.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/DataNodeManagementServer.java
@@ -40,11 +40,6 @@ public class DataNodeManagementServer extends ThriftService
     return ServiceType.DATA_NODE_MANAGEMENT_SERVICE;
   }
 
-  @Override
-  public ThriftService getImplementation() {
-    return DataNodeInternalServerHolder.INSTANCE;
-  }
-
   @Override
   public void initSyncedServiceImpl(Object serviceImpl) {
     impl = (DataNodeManagementServiceImpl) serviceImpl;
diff --git a/server/src/main/java/org/apache/iotdb/db/service/InfluxDBRPCService.java b/server/src/main/java/org/apache/iotdb/db/service/InfluxDBRPCService.java
index 146a13317c..4f3ffe3ccb 100644
--- a/server/src/main/java/org/apache/iotdb/db/service/InfluxDBRPCService.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/InfluxDBRPCService.java
@@ -37,11 +37,6 @@ public class InfluxDBRPCService extends ThriftService implements InfluxDBRPCServ
     return InfluxDBServiceHolder.INSTANCE;
   }
 
-  @Override
-  public ThriftService getImplementation() {
-    return getInstance();
-  }
-
   @Override
   public void initTProcessor()
       throws ClassNotFoundException, IllegalAccessException, InstantiationException {
diff --git a/server/src/main/java/org/apache/iotdb/db/service/InternalService.java b/server/src/main/java/org/apache/iotdb/db/service/InternalService.java
index 9c751e7766..2ea3a0dd23 100644
--- a/server/src/main/java/org/apache/iotdb/db/service/InternalService.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/InternalService.java
@@ -31,11 +31,6 @@ public class InternalService extends ThriftService {
     return null;
   }
 
-  @Override
-  public ThriftService getImplementation() {
-    return null;
-  }
-
   @Override
   public void initTProcessor()
       throws ClassNotFoundException, IllegalAccessException, InstantiationException {}
diff --git a/server/src/main/java/org/apache/iotdb/db/service/RPCService.java b/server/src/main/java/org/apache/iotdb/db/service/RPCService.java
index dc0ee3987c..dbdd41fe55 100644
--- a/server/src/main/java/org/apache/iotdb/db/service/RPCService.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/RPCService.java
@@ -40,11 +40,6 @@ public class RPCService extends ThriftService implements RPCServiceMBean {
     return RPCServiceHolder.INSTANCE;
   }
 
-  @Override
-  public ThriftService getImplementation() {
-    return getInstance();
-  }
-
   @Override
   public void initTProcessor()
       throws ClassNotFoundException, IllegalAccessException, InstantiationException {
diff --git a/server/src/main/java/org/apache/iotdb/db/sync/receiver/SyncServerManager.java b/server/src/main/java/org/apache/iotdb/db/sync/receiver/SyncServerManager.java
index fffb84616f..49b746bc8e 100644
--- a/server/src/main/java/org/apache/iotdb/db/sync/receiver/SyncServerManager.java
+++ b/server/src/main/java/org/apache/iotdb/db/sync/receiver/SyncServerManager.java
@@ -54,11 +54,6 @@ public class SyncServerManager extends ThriftService implements SyncServerManage
     return ServiceType.SYNC_SERVICE;
   }
 
-  @Override
-  public ThriftService getImplementation() {
-    return getInstance();
-  }
-
   @Override
   public void initTProcessor() {
     initSyncedServiceImpl(null);