You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by ki...@apache.org on 2020/07/29 07:19:05 UTC

[shardingsphere] branch master updated: Replace ZookeeperResumablePositionManager NoArgsConstructor as static code. (#6500)

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

kimmking pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 6186d9e  Replace ZookeeperResumablePositionManager NoArgsConstructor as static code. (#6500)
6186d9e is described below

commit 6186d9e3eb4fd8feccc8b09ac3dab657af268ca4
Author: 邱鹿 Lucas <lu...@163.com>
AuthorDate: Wed Jul 29 15:18:47 2020 +0800

    Replace ZookeeperResumablePositionManager NoArgsConstructor as static code. (#6500)
    
    * Replace ZookeeperResumablePositionManager NoArgsConstructor as static code.
    
    * Replace ZookeeperResumablePositionManager NoArgsConstructor as static code.
    
    Co-authored-by: qiulu3 <Lucas209910>
---
 .../position/resume/AbstractResumablePositionManager.java  |  6 ++----
 .../job/position/resume/FakeResumablePositionManager.java  |  3 ---
 .../core/job/position/resume/ResumablePositionManager.java |  9 +++------
 .../position/resume/ResumablePositionManagerFactory.java   |  2 +-
 .../position/resume/ZookeeperResumablePositionManager.java | 14 ++++++++++++--
 5 files changed, 18 insertions(+), 16 deletions(-)

diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/AbstractResumablePositionManager.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/AbstractResumablePositionManager.java
index f94bb33..6e80c73 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/AbstractResumablePositionManager.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/AbstractResumablePositionManager.java
@@ -46,14 +46,12 @@ public abstract class AbstractResumablePositionManager implements ResumablePosit
     
     private static final Gson GSON = new Gson();
     
+    private boolean resumable;
+    
     private String databaseType;
     
     private String taskPath;
     
-    private boolean available;
-    
-    private boolean resumable;
-    
     private final Map<String, PositionManager<PrimaryKeyPosition>> inventoryPositionManagerMap = Maps.newConcurrentMap();
     
     private final Map<String, PositionManager> incrementalPositionManagerMap = Maps.newConcurrentMap();
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/FakeResumablePositionManager.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/FakeResumablePositionManager.java
index 4a09625..2993b40 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/FakeResumablePositionManager.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/FakeResumablePositionManager.java
@@ -17,12 +17,9 @@
 
 package org.apache.shardingsphere.scaling.core.job.position.resume;
 
-import lombok.NoArgsConstructor;
-
 /**
  * Fake resumable position manager as defalut.
  */
-@NoArgsConstructor
 public final class FakeResumablePositionManager extends AbstractResumablePositionManager implements ResumablePositionManager {
     
     public FakeResumablePositionManager(final String databaseType, final String taskPath) {
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ResumablePositionManager.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ResumablePositionManager.java
index df3afdc..c3b5468 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ResumablePositionManager.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ResumablePositionManager.java
@@ -28,25 +28,22 @@ import java.util.Map;
 public interface ResumablePositionManager {
     
     /**
-     * If it is available.
-     * @return is available
-     */
-    boolean isAvailable();
-    
-    /**
      * If has resumable data.
+     *
      * @return is resumable
      */
     boolean isResumable();
     
     /**
      * Get inventory position map.
+     *
      * @return inventory position map
      */
     Map<String, PositionManager<PrimaryKeyPosition>> getInventoryPositionManagerMap();
     
     /**
      * Get incremental position map.
+     *
      * @return incremental position map
      */
     Map<String, PositionManager> getIncrementalPositionManagerMap();
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ResumablePositionManagerFactory.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ResumablePositionManagerFactory.java
index ff6f136..90a668c 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ResumablePositionManagerFactory.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ResumablePositionManagerFactory.java
@@ -30,7 +30,7 @@ public final class ResumablePositionManagerFactory {
     private static Class<? extends ResumablePositionManager> clazz = FakeResumablePositionManager.class;
     
     static {
-        if (new ZookeeperResumablePositionManager().isAvailable()) {
+        if (ZookeeperResumablePositionManager.isAvailable()) {
             clazz = ZookeeperResumablePositionManager.class;
         }
     }
diff --git a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ZookeeperResumablePositionManager.java b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ZookeeperResumablePositionManager.java
index 5e351ee..2dca59d 100644
--- a/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ZookeeperResumablePositionManager.java
+++ b/shardingsphere-scaling/shardingsphere-scaling-core/src/main/java/org/apache/shardingsphere/scaling/core/job/position/resume/ZookeeperResumablePositionManager.java
@@ -40,18 +40,20 @@ public final class ZookeeperResumablePositionManager extends AbstractResumablePo
     
     private static final CuratorZookeeperRepository CURATOR_ZOOKEEPER_REPOSITORY = new CuratorZookeeperRepository();
     
+    private static boolean available;
+    
     private ScheduledExecutorService executor;
     
     private String inventoryPath;
     
     private String incrementalPath;
     
-    public ZookeeperResumablePositionManager() {
+    static {
         ResumeConfiguration resumeConfiguration = ScalingContext.getInstance().getServerConfiguration().getResumeConfiguration();
         if (null != resumeConfiguration) {
             CURATOR_ZOOKEEPER_REPOSITORY.init(resumeConfiguration.getNamespace(), new OrchestrationCenterConfiguration("ZooKeeper", resumeConfiguration.getServerLists(), new Properties()));
             log.info("zookeeper resumable position manager is available.");
-            setAvailable(true);
+            available = true;
         }
     }
     
@@ -66,6 +68,14 @@ public final class ZookeeperResumablePositionManager extends AbstractResumablePo
         executor.scheduleWithFixedDelay(this::persistPosition, 1, 1, TimeUnit.MINUTES);
     }
     
+    /**
+     * If it is available.
+     * @return is available
+     */
+    public static boolean isAvailable() {
+        return available;
+    }
+    
     @Override
     public void close() {
         executor.submit(this::persistPosition);