Sfoglia il codice sorgente

修改代码 注释 代码微调

fuyu 6 anni fa
parent
commit
6b8a1c8bac
85 ha cambiato i file con 857 aggiunte e 351 eliminazioni
  1. 496 278
      .idea/workspace.xml
  2. 12 1
      src/main/java/com/zskk/dicom/monitor/monitors/FileActionCallback.java
  3. 1 1
      src/main/java/com/zskk/dicom/monitor/monitors/NowFileActionCallback.java
  4. 1 1
      src/main/java/com/zskk/dicom/monitor/monitors/NowFileChangeProc.java
  5. 3 0
      src/main/java/com/zskk/dicom/monitor/monitors/RetryFileActionCallback.java
  6. 14 7
      src/main/java/com/zskk/dicom/monitor/queue/BaseQueue.java
  7. 11 0
      src/main/java/com/zskk/dicom/monitor/queue/BaseStringQueue.java
  8. 7 3
      src/main/java/com/zskk/dicom/monitor/queue/CurrentRetryUploadQueue.java
  9. 7 3
      src/main/java/com/zskk/dicom/monitor/queue/CurrentUploadQueue.java
  10. 7 3
      src/main/java/com/zskk/dicom/monitor/queue/ErrorQueue.java
  11. 6 0
      src/main/java/com/zskk/dicom/monitor/queue/IQueue.java
  12. 7 3
      src/main/java/com/zskk/dicom/monitor/queue/OldRetryQueue.java
  13. 7 3
      src/main/java/com/zskk/dicom/monitor/queue/OldUploadQueue.java
  14. 7 3
      src/main/java/com/zskk/dicom/monitor/queue/RemoveFile2RetryQueue.java
  15. 6 2
      src/main/java/com/zskk/dicom/monitor/queue/SuccessQueue.java
  16. 5 2
      src/main/java/com/zskk/dicom/monitor/runner/AbstractRemoveRunner.java
  17. 3 3
      src/main/java/com/zskk/dicom/monitor/runner/AbstractUploadRunner.java
  18. 3 0
      src/main/java/com/zskk/dicom/monitor/runner/AddHistory2QueueRunner.java
  19. 3 0
      src/main/java/com/zskk/dicom/monitor/runner/AddRetryHistory2QueueRunner.java
  20. 7 1
      src/main/java/com/zskk/dicom/monitor/runner/BaseAddHistory2QueueRunner.java
  21. 12 0
      src/main/java/com/zskk/dicom/monitor/runner/BaseRemoveRunner.java
  22. 84 7
      src/main/java/com/zskk/dicom/monitor/runner/BaseRunner.java
  23. 20 1
      src/main/java/com/zskk/dicom/monitor/runner/BaseUploadRunner.java
  24. 7 2
      src/main/java/com/zskk/dicom/monitor/runner/CurrentUploadRunner.java
  25. 6 1
      src/main/java/com/zskk/dicom/monitor/runner/ErrorRunner.java
  26. 6 1
      src/main/java/com/zskk/dicom/monitor/runner/HistoryUploadRunner.java
  27. 8 0
      src/main/java/com/zskk/dicom/monitor/runner/IRemove.java
  28. 5 0
      src/main/java/com/zskk/dicom/monitor/runner/IUpload.java
  29. 6 1
      src/main/java/com/zskk/dicom/monitor/runner/RemoveFile2RetryRunner.java
  30. 6 1
      src/main/java/com/zskk/dicom/monitor/runner/RetryCurrentUploadRunner.java
  31. 6 1
      src/main/java/com/zskk/dicom/monitor/runner/RetryHistoryUploadRunner.java
  32. 44 0
      src/main/java/com/zskk/dicom/monitor/runner/RunnerAction.java
  33. 6 1
      src/main/java/com/zskk/dicom/monitor/runner/SuccessRunner.java
  34. 7 0
      src/main/java/com/zskk/dicom/monitor/uploader/BaseFileUploader.java
  35. 10 10
      src/main/resources/project.properties
  36. 1 1
      target/classes/META-INF/spring-autoconfigure-metadata.properties
  37. BIN
      target/classes/com/zskk/dicom/config/NetCodeConfig.class
  38. BIN
      target/classes/com/zskk/dicom/monitor/config/Constants.class
  39. BIN
      target/classes/com/zskk/dicom/monitor/monitors/FileAction.class
  40. BIN
      target/classes/com/zskk/dicom/monitor/monitors/RetryFileActionCallback.class
  41. BIN
      target/classes/com/zskk/dicom/monitor/queue/BaseQueue.class
  42. BIN
      target/classes/com/zskk/dicom/monitor/queue/CurrentRetryUploadQueue$CurrentRetryUploadQueueHolder.class
  43. BIN
      target/classes/com/zskk/dicom/monitor/queue/CurrentRetryUploadQueue.class
  44. BIN
      target/classes/com/zskk/dicom/monitor/queue/CurrentUploadQueue$CurrentUploadQueueHolder.class
  45. BIN
      target/classes/com/zskk/dicom/monitor/queue/CurrentUploadQueue.class
  46. BIN
      target/classes/com/zskk/dicom/monitor/queue/ErrorQueue$ErrorQueueHolder.class
  47. BIN
      target/classes/com/zskk/dicom/monitor/queue/ErrorQueue.class
  48. BIN
      target/classes/com/zskk/dicom/monitor/queue/IQueue.class
  49. BIN
      target/classes/com/zskk/dicom/monitor/queue/OldRetryQueue$OldRetryQueueHolder.class
  50. BIN
      target/classes/com/zskk/dicom/monitor/queue/OldRetryQueue.class
  51. BIN
      target/classes/com/zskk/dicom/monitor/queue/OldUploadQueue$OldUploadQueueHolder.class
  52. BIN
      target/classes/com/zskk/dicom/monitor/queue/OldUploadQueue.class
  53. BIN
      target/classes/com/zskk/dicom/monitor/queue/RemoveFile2RetryQueue$RemoveFile2RetryQueueHolder.class
  54. BIN
      target/classes/com/zskk/dicom/monitor/queue/RemoveFile2RetryQueue.class
  55. BIN
      target/classes/com/zskk/dicom/monitor/queue/SuccessQueue$SuccessQueueHolder.class
  56. BIN
      target/classes/com/zskk/dicom/monitor/queue/SuccessQueue.class
  57. BIN
      target/classes/com/zskk/dicom/monitor/runner/AbstractRemoveRunner.class
  58. BIN
      target/classes/com/zskk/dicom/monitor/runner/AbstractUploadRunner.class
  59. BIN
      target/classes/com/zskk/dicom/monitor/runner/AddHistory2QueueRunner.class
  60. BIN
      target/classes/com/zskk/dicom/monitor/runner/AddRetryHistory2QueueRunner.class
  61. BIN
      target/classes/com/zskk/dicom/monitor/runner/BaseAddHistory2QueueRunner.class
  62. BIN
      target/classes/com/zskk/dicom/monitor/runner/BaseRemoveRunner.class
  63. BIN
      target/classes/com/zskk/dicom/monitor/runner/BaseRunner.class
  64. BIN
      target/classes/com/zskk/dicom/monitor/runner/BaseUploadRunner.class
  65. BIN
      target/classes/com/zskk/dicom/monitor/runner/CurrentUploadRunner.class
  66. BIN
      target/classes/com/zskk/dicom/monitor/runner/ErrorRunner.class
  67. BIN
      target/classes/com/zskk/dicom/monitor/runner/HistoryUploadRunner.class
  68. BIN
      target/classes/com/zskk/dicom/monitor/runner/RemoveFile2RetryRunner.class
  69. BIN
      target/classes/com/zskk/dicom/monitor/runner/RetryCurrentUploadRunner.class
  70. BIN
      target/classes/com/zskk/dicom/monitor/runner/RetryHistoryUploadRunner.class
  71. BIN
      target/classes/com/zskk/dicom/monitor/runner/SuccessRunner.class
  72. BIN
      target/classes/com/zskk/dicom/monitor/uploader/BaseFileUploader.class
  73. BIN
      target/classes/com/zskk/dicom/monitor/utils/ExceptionUtil.class
  74. BIN
      target/classes/com/zskk/dicom/monitor/utils/FileHashUtil.class
  75. BIN
      target/classes/com/zskk/dicom/monitor/utils/LogEnginer.class
  76. BIN
      target/classes/com/zskk/dicom/oss/BaseOSSHleper.class
  77. BIN
      target/classes/com/zskk/dicom/request/bean/ALiYunOSSCallbackBodyBean.class
  78. BIN
      target/classes/com/zskk/dicom/response/BaseResponse.class
  79. BIN
      target/classes/com/zskk/dicom/response/FileUploadChcekResponse.class
  80. BIN
      target/classes/com/zskk/dicom/response/ZskkResponseFactory$ZskkExceptionFactoryHoler.class
  81. BIN
      target/classes/com/zskk/dicom/response/ZskkResponseFactory.class
  82. BIN
      target/classes/com/zskk/dicom/response/bean/BaseResponseBean.class
  83. BIN
      target/classes/com/zskk/dicom/response/bean/FileUploadChcekResponseBean.class
  84. BIN
      target/classes/com/zskk/dicom/response/bean/FileUploadResponseBean.class
  85. 10 10
      target/classes/project.properties

File diff suppressed because it is too large
+ 496 - 278
.idea/workspace.xml


+ 12 - 1
src/main/java/com/zskk/dicom/monitor/monitors/FileActionCallback.java

@@ -6,11 +6,22 @@ import java.io.File;
  * 文件操作的回调方法
  */
 public abstract class FileActionCallback {
-
+	/**
+	 * 文件被删除
+	 * @param file
+	 */
 	public abstract void delete(File file);
 
+	/**
+	 * 文件被修改
+	 * @param file
+	 */
 	public abstract void modify(File file);
 
+	/**
+	 * 文件被创建
+	 * @param file
+	 */
 	public abstract void create(File file);
 
 }

+ 1 - 1
src/main/java/com/zskk/dicom/monitor/monitors/NowFileActionCallback.java

@@ -3,7 +3,7 @@ package com.zskk.dicom.monitor.monitors;
 import com.zskk.dicom.monitor.queue.CurrentUploadQueue;
 
 /**
- * 目标目录监听
+ * dcm产生文件夹监听回调
  */
 public class NowFileActionCallback extends BaseFileActionCallback{
     public NowFileActionCallback() {

+ 1 - 1
src/main/java/com/zskk/dicom/monitor/monitors/NowFileChangeProc.java

@@ -3,7 +3,7 @@ package com.zskk.dicom.monitor.monitors;
 import com.zskk.dicom.monitor.config.Configs;
 
 /**
- * 目标文件监听程序
+ * dcm产生文件夹监听
  */
 public class NowFileChangeProc extends  BaseFileChangeProc {
 

+ 3 - 0
src/main/java/com/zskk/dicom/monitor/monitors/RetryFileActionCallback.java

@@ -2,6 +2,9 @@ package com.zskk.dicom.monitor.monitors;
 
 import com.zskk.dicom.monitor.queue.CurrentRetryUploadQueue;
 
+/**
+ * 重试文件夹监听回调
+ */
 public class RetryFileActionCallback extends BaseFileActionCallback{
     public RetryFileActionCallback() {
         super(CurrentRetryUploadQueue.getInstance());

+ 14 - 7
src/main/java/com/zskk/dicom/monitor/queue/BaseQueue.java

@@ -7,15 +7,22 @@ import java.util.List;
 
 /**
  * 队列基类
- * @param <T>
  */
-public class BaseQueue<T> implements IQueue<T>{
+public abstract class BaseQueue<T> implements IQueue<T>{
 
+    /**
+     * 承载队列数据的集合
+     */
     private List<T> queue = null;
-    private String flag = null;
-    public BaseQueue(String flag) {
+
+    /**
+     * 队列名称
+     */
+    private String queueName = null;
+
+    public BaseQueue(String queueName) {
         this.queue = new ArrayList<>();
-        this.flag = flag;
+        this.queueName = queueName;
     }
 
     @Override
@@ -62,8 +69,8 @@ public class BaseQueue<T> implements IQueue<T>{
      */
     private void checkSecurity() {
         if(this.queue == null) {
-            Configs.sysLog.error("queue error:" + this.flag + "\t queue is null");
-            throw new Error("队列:" + this.flag + "没有被初始化");
+            Configs.sysLog.error("queue error:" + this.queueName+ "\t queue is null");
+            throw new Error("队列:" + this.queueName + "没有被初始化");
         }
     }
 }

+ 11 - 0
src/main/java/com/zskk/dicom/monitor/queue/BaseStringQueue.java

@@ -0,0 +1,11 @@
+package com.zskk.dicom.monitor.queue;
+
+/**
+ * 队列基类
+ */
+public abstract class BaseStringQueue extends BaseQueue<String>{
+
+    public BaseStringQueue(String queueName) {
+        super(queueName);
+    }
+}

+ 7 - 3
src/main/java/com/zskk/dicom/monitor/queue/CurrentRetryUploadQueue.java

@@ -1,14 +1,18 @@
 package com.zskk.dicom.monitor.queue;
 
 /**
- * 当前重试队列
- * @param <String>
+ * 当前重试队列(单例)
  */
-public class CurrentRetryUploadQueue<String> extends BaseQueue<String> {
+public class CurrentRetryUploadQueue extends BaseStringQueue {
     private CurrentRetryUploadQueue() {
         super("CurrentRetryUploadQueue");
     }
 
+    @Override
+    public String getQueueName() {
+        return "CurrentRetryUploadQueue";
+    }
+
     private static class CurrentRetryUploadQueueHolder {
          private static CurrentRetryUploadQueue instance = new CurrentRetryUploadQueue();
     }

+ 7 - 3
src/main/java/com/zskk/dicom/monitor/queue/CurrentUploadQueue.java

@@ -1,14 +1,18 @@
 package com.zskk.dicom.monitor.queue;
 
 /**
- * 当前上传队列
- * @param <String>
+ * 当前上传队列(单例)
  */
-public class CurrentUploadQueue<String> extends BaseQueue<String> {
+public class CurrentUploadQueue extends BaseStringQueue {
     private CurrentUploadQueue() {
         super("CurrentUploadQueue");
     }
 
+    @Override
+    public String getQueueName() {
+        return "CurrentUploadQueue";
+    }
+
     private static class CurrentUploadQueueHolder {
          private static CurrentUploadQueue instance = new CurrentUploadQueue();
     }

+ 7 - 3
src/main/java/com/zskk/dicom/monitor/queue/ErrorQueue.java

@@ -1,14 +1,18 @@
 package com.zskk.dicom.monitor.queue;
 
 /**
- * 失败移动队列
- * @param <String>
+ * 失败移动队列(单例)
  */
-public class ErrorQueue<String> extends BaseQueue<String> {
+public class ErrorQueue extends BaseStringQueue {
     private ErrorQueue() {
         super("ErrorQueue");
     }
 
+    @Override
+    public String getQueueName() {
+        return "ErrorQueue";
+    }
+
     private static class ErrorQueueHolder {
         private static ErrorQueue instance = new ErrorQueue();
     }

+ 6 - 0
src/main/java/com/zskk/dicom/monitor/queue/IQueue.java

@@ -35,4 +35,10 @@ public interface IQueue<T> {
      * @return
      */
     boolean empty();
+
+    /**
+     * 获取队列名称
+     * @return
+     */
+    String getQueueName();
 }

+ 7 - 3
src/main/java/com/zskk/dicom/monitor/queue/OldRetryQueue.java

@@ -1,14 +1,18 @@
 package com.zskk.dicom.monitor.queue;
 
 /**
- * 遗存重试上传队列
- * @param <String>
+ * 遗存重试上传队列(单例)
  */
-public class OldRetryQueue<String> extends BaseQueue<String> {
+public class OldRetryQueue extends BaseStringQueue {
     private OldRetryQueue() {
         super("OldRetryQueue");
     }
 
+    @Override
+    public String getQueueName() {
+        return "getQueueName";
+    }
+
     private static class OldRetryQueueHolder {
          private static OldRetryQueue instance = new OldRetryQueue();
     }

+ 7 - 3
src/main/java/com/zskk/dicom/monitor/queue/OldUploadQueue.java

@@ -1,14 +1,18 @@
 package com.zskk.dicom.monitor.queue;
 
 /**
- * 遗存上传队列
- * @param <String>
+ * 遗存上传队列(单例)
  */
-public class OldUploadQueue<String> extends BaseQueue<String> {
+public class OldUploadQueue extends BaseStringQueue {
     private OldUploadQueue() {
         super("OldUploadQueue");
     }
 
+    @Override
+    public String getQueueName() {
+        return "OldUploadQueue";
+    }
+
     private static class OldUploadQueueHolder {
         private static OldUploadQueue instance = new OldUploadQueue();
     }

+ 7 - 3
src/main/java/com/zskk/dicom/monitor/queue/RemoveFile2RetryQueue.java

@@ -1,14 +1,18 @@
 package com.zskk.dicom.monitor.queue;
 
 /**
- * 重试移动队列队列
- * @param <String>
+ * 重试移动队列队列(单例)
  */
-public class RemoveFile2RetryQueue<String> extends BaseQueue<String> {
+public class RemoveFile2RetryQueue extends BaseStringQueue {
     private RemoveFile2RetryQueue() {
         super("RemoveFile2RetryQueue");
     }
 
+    @Override
+    public String getQueueName() {
+        return "RemoveFile2RetryQueue";
+    }
+
     private static class RemoveFile2RetryQueueHolder {
         private static RemoveFile2RetryQueue instance = new RemoveFile2RetryQueue();
     }

+ 6 - 2
src/main/java/com/zskk/dicom/monitor/queue/SuccessQueue.java

@@ -2,13 +2,17 @@ package com.zskk.dicom.monitor.queue;
 
 /**
  * 成功移动队列
- * @param <String>
  */
-public class SuccessQueue<String> extends BaseQueue<String> {
+public class SuccessQueue extends BaseStringQueue {
     private SuccessQueue() {
         super("SuccessQueue");
     }
 
+    @Override
+    public String getQueueName() {
+        return "SuccessQueue";
+    }
+
     private static class SuccessQueueHolder {
         private static SuccessQueue instance = new SuccessQueue();
     }

+ 5 - 2
src/main/java/com/zskk/dicom/monitor/runner/AbstractRemoveRunner.java

@@ -1,5 +1,8 @@
 package com.zskk.dicom.monitor.runner;
 
+/**
+ * 移动文件runner抽象类
+ */
 public abstract class AbstractRemoveRunner extends BaseRunner implements IRemove{
     @Override
     protected boolean handle() {
@@ -7,7 +10,7 @@ public abstract class AbstractRemoveRunner extends BaseRunner implements IRemove
     }
 
     @Override
-    protected String action() {
-        return "remove";
+    protected RunnerAction action() {
+        return RunnerAction.REMOVE;
     }
 }

+ 3 - 3
src/main/java/com/zskk/dicom/monitor/runner/AbstractUploadRunner.java

@@ -1,7 +1,7 @@
 package com.zskk.dicom.monitor.runner;
 
 /**
- * 上传方法抽象类
+ * 上传方法runner抽象类
  */
 public abstract class AbstractUploadRunner extends BaseRunner implements IUpload{
     @Override
@@ -10,7 +10,7 @@ public abstract class AbstractUploadRunner extends BaseRunner implements IUpload
     }
 
     @Override
-    protected String action() {
-        return "upload";
+    protected RunnerAction action() {
+        return RunnerAction.UPLOAD;
     }
 }

+ 3 - 0
src/main/java/com/zskk/dicom/monitor/runner/AddHistory2QueueRunner.java

@@ -3,6 +3,9 @@ package com.zskk.dicom.monitor.runner;
 import com.zskk.dicom.monitor.config.Configs;
 import com.zskk.dicom.monitor.queue.OldUploadQueue;
 
+/**
+ * 把遗留上传文件添加入队列的runner
+ */
 public class AddHistory2QueueRunner extends BaseAddHistory2QueueRunner {
     public AddHistory2QueueRunner() {
         super(Configs.monitorDir, OldUploadQueue.getInstance());

+ 3 - 0
src/main/java/com/zskk/dicom/monitor/runner/AddRetryHistory2QueueRunner.java

@@ -3,6 +3,9 @@ package com.zskk.dicom.monitor.runner;
 import com.zskk.dicom.monitor.config.Configs;
 import com.zskk.dicom.monitor.queue.OldRetryQueue;
 
+/**
+ * 把遗留重试上传文件添加入队列的runner
+ */
 public class AddRetryHistory2QueueRunner extends BaseAddHistory2QueueRunner {
     public AddRetryHistory2QueueRunner() {
         super(Configs.monitorRetryDir, OldRetryQueue.getInstance());

+ 7 - 1
src/main/java/com/zskk/dicom/monitor/runner/BaseAddHistory2QueueRunner.java

@@ -7,6 +7,9 @@ import org.apache.commons.io.FileUtils;
 import java.io.File;
 import java.util.Iterator;
 
+/**
+ * 把遗留文件(上传或重试)添加入队列的runner基类
+ */
 public abstract class BaseAddHistory2QueueRunner implements Runnable {
     /**
      * 监听目录路径
@@ -38,7 +41,10 @@ public abstract class BaseAddHistory2QueueRunner implements Runnable {
         addHistory2Queue();
     }
 
-    protected void addHistory2Queue() {
+    /**
+     * 把文件添加入队列
+     */
+    private void addHistory2Queue() {
         Configs.sysLog.info("BaseAddHistory2QueueRunner: init Dir:" + this.monitorDir);
         File dir = new File(this.monitorDir);
         Iterator<File> its = FileUtils.iterateFiles(dir, suffixs, true);

+ 12 - 0
src/main/java/com/zskk/dicom/monitor/runner/BaseRemoveRunner.java

@@ -2,6 +2,9 @@ package com.zskk.dicom.monitor.runner;
 
 import com.zskk.dicom.monitor.utils.FileRemoveUtils;
 
+/**
+ * 移动文件runner的基类
+ */
 public abstract class BaseRemoveRunner extends AbstractRemoveRunner {
     @Override
     public boolean remove() {
@@ -9,8 +12,17 @@ public abstract class BaseRemoveRunner extends AbstractRemoveRunner {
         return FileRemoveUtils.remove(sourceFilePath, getTargetFilePath(sourceFilePath));
     }
 
+    /**
+     * 获取被移动文件路径
+     * @return
+     */
     protected abstract String getSourceFilePath();
 
+    /**
+     * 获取文件移动后目标路径
+     * @param sourceFilePath 被移动文件路径
+     * @return
+     */
     protected abstract String getTargetFilePath(String sourceFilePath);
 
 }

+ 84 - 7
src/main/java/com/zskk/dicom/monitor/runner/BaseRunner.java

@@ -4,14 +4,44 @@ import com.zskk.dicom.monitor.config.Configs;
 
 import java.util.concurrent.TimeUnit;
 
+/**
+ * 所有runner基类
+ */
 public abstract class BaseRunner implements Runnable{
 
-    private int MIN_FAIL_SLEEP_TIME = 1;
-    private int MAX_FAIL_SLEEP_TIME = 5;
+    /**
+     * 操作失败最小休眠时间(s)
+     */
+    private final int MIN_FAIL_SLEEP_TIME = 1;
+
+    /**
+     * 操作失败最大休眠时间(s)
+     */
+    private final int MAX_FAIL_SLEEP_TIME = 5;
+
+    /**
+     * 队列为空最小休眠时间(s)
+     */
+    private final int MIN_EMPTY_SLEEP_TIME = 2;
+
+    /**
+     * 队列为空最大休眠时间(s)
+     */
+    private final int MAX_EMPTY_SLEEP_TIME = 10;
+
+    /**
+     * 操作成功休眠时间(ms)
+     */
+    private final int SUCCESS_SLEEP_TIME = 10;
+
+    /**
+     * 操作失败休眠时间(s)
+     */
     private int failSleepTime = 0;
 
-    private int MIN_EMPTY_SLEEP_TIME = 2;
-    private int MAX_EMPTY_SLEEP_TIME = 10;
+    /**
+     * 队列为空休眠时间
+     */
     private int emptySleepTime = 0;
 
     @Override
@@ -35,6 +65,10 @@ public abstract class BaseRunner implements Runnable{
         }
     }
 
+    /**
+     * 打印操作失败日志并休眠,同时操作失败休眠时间增加
+     * @throws InterruptedException
+     */
     protected void printFailAndSleep() throws InterruptedException {
         Configs.sysLog.warn(getRunnerName() + ": " + action() + " fail");
         if(failSleepTime < MAX_FAIL_SLEEP_TIME) {
@@ -43,12 +77,21 @@ public abstract class BaseRunner implements Runnable{
         TimeUnit.SECONDS.sleep(failSleepTime);
     }
 
-    protected void printSuccessAndSleep() {
-        Configs.sysLog.info(getRunnerName() + ": " + action() + " success!" + getQueueName() + " size :" + size());
+    /**
+     * 打印操作成功日志并短暂休眠, 同时 操作失败(和队列为空)休眠时间 重置
+     * @throws InterruptedException
+     */
+    protected void printSuccessAndSleep() throws InterruptedException {
+        Configs.sysLog.info(getRunnerName() + ": " + action().getValue() + " success!" + getQueueName() + " size :" + size());
         failSleepTime = 0;
         emptySleepTime = 0;
+        TimeUnit.SECONDS.sleep(SUCCESS_SLEEP_TIME);
     }
 
+    /**
+     *打印队列为空日志并休眠,同时队列为空休眠时间增加
+     * @throws InterruptedException
+     */
     protected void printEmptyAndSleep() throws InterruptedException {
         Configs.sysLog.warn(getRunnerName() + ": " + getQueueName() + " is empty");
         if(emptySleepTime < MAX_EMPTY_SLEEP_TIME) {
@@ -57,11 +100,45 @@ public abstract class BaseRunner implements Runnable{
         TimeUnit.SECONDS.sleep(emptySleepTime);
     }
 
-    protected abstract String action();
+    /**
+     * 当前动作名
+     * @return 上传 移动 文件
+     */
+    protected abstract RunnerAction action();
+
+    /**
+     * 队列是否为空
+     * @return
+     */
     protected abstract boolean empty();
+
+    /**
+     * 当前队列大小
+     * @return
+     */
     protected abstract int size();
+
+    /**
+     * 获取队列名称
+     * @return
+     */
     protected abstract String getQueueName();
+
+    /**
+     * 获取runner名称
+     * @return
+     */
     protected abstract String getRunnerName();
+
+    /**
+     * runner操作
+     * @return
+     */
     protected abstract boolean handle();
+
+    /**
+     * 是否runner执行完毕退出
+     * @return
+     */
     protected abstract boolean exit();
 }

+ 20 - 1
src/main/java/com/zskk/dicom/monitor/runner/BaseUploadRunner.java

@@ -4,7 +4,9 @@ import com.zskk.dicom.monitor.queue.IQueue;
 import com.zskk.dicom.monitor.uploader.BaseFileUploader;
 import org.apache.http.util.TextUtils;
 
-// todo
+/**
+ * 上传runner基类
+ */
 public abstract class BaseUploadRunner extends  AbstractUploadRunner {
 
     @Override
@@ -18,13 +20,30 @@ public abstract class BaseUploadRunner extends  AbstractUploadRunner {
         return flag;
     }
 
+    /**
+     * 上传文件
+     * @param filePath 被删除文件路径
+     * @return
+     */
     private boolean upload(String filePath) {
         return BaseFileUploader.upload(filePath, getSuccessQueue(), getErrorQueue());
     }
 
+    /**
+     * 获取被删除文件路径
+     * @return
+     */
     protected abstract String getUploadFilePath();
 
+    /**
+     * 获取上传成功文件路径应该放入的队列
+     * @return
+     */
     protected abstract IQueue<String> getSuccessQueue();
 
+    /**
+     * 获取上传失败文件应该放入的队列
+     * @return
+     */
     protected abstract IQueue<String> getErrorQueue();
 }

+ 7 - 2
src/main/java/com/zskk/dicom/monitor/runner/CurrentUploadRunner.java

@@ -19,7 +19,7 @@ public class CurrentUploadRunner extends BaseUploadRunner {
 
     @Override
     protected String getUploadFilePath() {
-        return (String) CurrentUploadQueue.getInstance().pop();
+        return CurrentUploadQueue.getInstance().pop();
     }
 
     @Override
@@ -34,7 +34,7 @@ public class CurrentUploadRunner extends BaseUploadRunner {
 
     @Override
     protected String getQueueName() {
-        return "CurrentUploadQueue";
+        return CurrentUploadQueue.getInstance().getQueueName();
     }
 
     @Override
@@ -46,4 +46,9 @@ public class CurrentUploadRunner extends BaseUploadRunner {
     protected boolean exit() {
         return false;
     }
+
+    @Override
+    protected RunnerAction action() {
+        return RunnerAction.CURRENT_UPLOAD;
+    }
 }

+ 6 - 1
src/main/java/com/zskk/dicom/monitor/runner/ErrorRunner.java

@@ -27,7 +27,7 @@ public class ErrorRunner extends BaseRemoveRunner {
 
     @Override
     protected String getQueueName() {
-        return "ErrorQueue";
+        return ErrorQueue.getInstance().getQueueName();
     }
 
     @Override
@@ -39,4 +39,9 @@ public class ErrorRunner extends BaseRemoveRunner {
     protected String getTargetFilePath(String sourceFilePath) {
         return MonitorFileUtils.getErrorPath(sourceFilePath);
     }
+
+    @Override
+    protected RunnerAction action() {
+        return RunnerAction.ERROR_REMOVE;
+    }
 }

+ 6 - 1
src/main/java/com/zskk/dicom/monitor/runner/HistoryUploadRunner.java

@@ -34,7 +34,7 @@ public class HistoryUploadRunner extends BaseUploadRunner {
 
     @Override
     protected String getQueueName() {
-        return "OldUploadQueue";
+        return OldUploadQueue.getInstance().getQueueName();
     }
 
     @Override
@@ -46,4 +46,9 @@ public class HistoryUploadRunner extends BaseUploadRunner {
     protected boolean exit() {
         return true;
     }
+
+    @Override
+    protected RunnerAction action() {
+        return RunnerAction.HISTORY_UPLOAD;
+    }
 }

+ 8 - 0
src/main/java/com/zskk/dicom/monitor/runner/IRemove.java

@@ -1,5 +1,13 @@
 package com.zskk.dicom.monitor.runner;
 
+/**
+ * 文件移动接口
+ */
 public interface IRemove {
+
+    /**
+     * 移动文件
+     * @return
+     */
     boolean remove();
 }

+ 5 - 0
src/main/java/com/zskk/dicom/monitor/runner/IUpload.java

@@ -4,5 +4,10 @@ package com.zskk.dicom.monitor.runner;
  * 定义上传的接口
  */
 public interface IUpload {
+
+    /**
+     * 上传文件
+     * @return
+     */
     boolean upload();
 }

+ 6 - 1
src/main/java/com/zskk/dicom/monitor/runner/RemoveFile2RetryRunner.java

@@ -27,7 +27,7 @@ public class RemoveFile2RetryRunner extends BaseRemoveRunner {
 
     @Override
     protected String getQueueName() {
-        return "RemoveFile2RetryQueue";
+        return RemoveFile2RetryQueue.getInstance().getQueueName();
     }
 
     @Override
@@ -39,4 +39,9 @@ public class RemoveFile2RetryRunner extends BaseRemoveRunner {
     protected String getTargetFilePath(String sourceFilePath) {
         return MonitorFileUtils.getRetryFilePath(sourceFilePath);
     }
+
+    @Override
+    protected RunnerAction action() {
+        return RunnerAction.RETRY_REMOVE;
+    }
 }

+ 6 - 1
src/main/java/com/zskk/dicom/monitor/runner/RetryCurrentUploadRunner.java

@@ -34,7 +34,7 @@ public class RetryCurrentUploadRunner extends BaseUploadRunner {
 
     @Override
     protected String getQueueName() {
-        return "CurrentRetryUploadQueue";
+        return CurrentRetryUploadQueue.getInstance().getQueueName();
     }
 
     @Override
@@ -46,4 +46,9 @@ public class RetryCurrentUploadRunner extends BaseUploadRunner {
     protected boolean exit() {
         return false;
     }
+
+    @Override
+    protected RunnerAction action() {
+        return RunnerAction.CURRENT_RETEY_UPLOAD;
+    }
 }

+ 6 - 1
src/main/java/com/zskk/dicom/monitor/runner/RetryHistoryUploadRunner.java

@@ -34,7 +34,7 @@ public class RetryHistoryUploadRunner extends BaseUploadRunner {
 
     @Override
     protected String getQueueName() {
-        return "OldRetryQueue";
+        return OldRetryQueue.getInstance().getQueueName();
     }
 
     @Override
@@ -46,4 +46,9 @@ public class RetryHistoryUploadRunner extends BaseUploadRunner {
     protected boolean exit() {
         return true;
     }
+
+    @Override
+    protected RunnerAction action() {
+        return RunnerAction.HISTORY_RETEY_UPLOAD;
+    }
 }

+ 44 - 0
src/main/java/com/zskk/dicom/monitor/runner/RunnerAction.java

@@ -0,0 +1,44 @@
+package com.zskk.dicom.monitor.runner;
+
+/**
+ * runner行为枚举
+ */
+public enum RunnerAction {
+
+    //上传
+    UPLOAD("UPLOAD"),
+
+    // 移动文件
+    REMOVE("REMOVE"),
+
+    // 上传遗留文件
+    HISTORY_UPLOAD("HISTORY_UPLOAD"),
+
+    // 上传遗留重试文件
+    HISTORY_RETEY_UPLOAD("HISTORY_RETEY_UPLOAD"),
+
+    // 上传监听文件
+    CURRENT_UPLOAD("CURRENT_UPLOAD"),
+
+    // 重试上传
+    CURRENT_RETEY_UPLOAD("CURRENT_RETEY_UPLOAD"),
+
+    // 成功移动
+    SUCCESS_REMOVE("SUCCESS_REMOVE"),
+
+    // 第一次上传失败重试移动
+    RETRY_REMOVE("RETRY_REMOVE"),
+
+    // 第二次上传失败错误移动
+    ERROR_REMOVE("ERROR_REMOVE");
+
+    private String value;
+
+    RunnerAction(String value) {
+        this.value = value;
+    }
+
+    public String getValue() {
+        return this.value;
+    }
+}

+ 6 - 1
src/main/java/com/zskk/dicom/monitor/runner/SuccessRunner.java

@@ -27,7 +27,7 @@ public class SuccessRunner extends BaseRemoveRunner {
 
     @Override
     protected String getQueueName() {
-        return "SuccessQueue";
+        return SuccessQueue.getInstance().getQueueName();
     }
 
     @Override
@@ -39,4 +39,9 @@ public class SuccessRunner extends BaseRemoveRunner {
     protected String getTargetFilePath(String sourceFilePath) {
         return MonitorFileUtils.getBackupPath(sourceFilePath);
     }
+
+    @Override
+    protected RunnerAction action() {
+        return RunnerAction.SUCCESS_REMOVE;
+    }
 }

+ 7 - 0
src/main/java/com/zskk/dicom/monitor/uploader/BaseFileUploader.java

@@ -24,6 +24,13 @@ import java.util.UUID;
  */
 public class BaseFileUploader {
 
+	/**
+	 * 文件上传
+	 * @param filePath 文件路径
+	 * @param successQueue 上传成功后文件路径应该放入的队列
+	 * @param errorQueue 上传失败后文件路径应该放入的队列
+	 * @return
+	 */
 	public static boolean upload(String  filePath, IQueue<String> successQueue, IQueue<String> errorQueue) {
 		String msg = null;
 		boolean uploadResult = false;

+ 10 - 10
src/main/resources/project.properties

@@ -1,19 +1,19 @@
-#monitor.monitorDir=D:\\zskk\\zskk_system
-#monitor.monitorBackDir=D:\\zskk\\zskk_system_back12
-#monitor.monitorRetryDir=D:\\zskk\\zskk_system_Retry12
-#monitor.errorDir=D:\\zskk\\zskk_system_eorr12
-monitor.monitorDir=/Users/fuyu/Desktop/zzp/test/src
-monitor.monitorBackDir=/Users/fuyu/Desktop/zzp/test/target
-monitor.monitorRetryDir=/Users/fuyu/Desktop/zzp/test/retry
-monitor.errorDir=/Users/fuyu/Desktop/zzp/test/error
-monitor.hospitalId=test_zzp
+monitor.monitorDir=D:\\ZSKK_SYSTEM\\ScpServer\\Release\\DICOM
+monitor.monitorBackDir=D:\\ZSKK_SYSTEM\\ScpServer\\Release\\DICOM_BCK
+monitor.monitorRetryDir=D:\\ZSKK_SYSTEM\\ScpServer\\Release\\DICOM_RETRY
+monitor.errorDir=D:\\ZSKK_SYSTEM\\ScpServer\\Release\\DICOM_ERROR
+monitor.hospitalId=13000003
+#monitor.monitorDir=/Users/fuyu/Desktop/zzp/test/src
+#monitor.monitorBackDir=/Users/fuyu/Desktop/zzp/test/target
+#monitor.monitorRetryDir=/Users/fuyu/Desktop/zzp/test/retry
+#monitor.errorDir=/Users/fuyu/Desktop/zzp/test/error
+#monitor.hospitalId=13000003
 monitor.pool.successPoolsLength=2
 monitor.pool.oldRetryPoolsLength=2
 monitor.pool.currentUploadPoolsLength=4
 monitor.pool.oldUploadPoolsLength=4
 monitor.logDir=/Users/fuyu/Desktop
 monitor.archiveWay=oss
-#73090001
 monitor.postHost=api.pacsonline.cn
 monitor.postPort=80
 monitor.postUri=/upload

+ 1 - 1
target/classes/META-INF/spring-autoconfigure-metadata.properties

@@ -1,3 +1,3 @@
-#Sat Mar 23 15:49:26 CST 2019
+#Sat Mar 23 18:00:41 CST 2019
 com.zskk.dicom.UploaderZskkApplication.Configuration=
 com.zskk.dicom.UploaderZskkApplication=

BIN
target/classes/com/zskk/dicom/config/NetCodeConfig.class


BIN
target/classes/com/zskk/dicom/monitor/config/Constants.class


BIN
target/classes/com/zskk/dicom/monitor/monitors/FileAction.class


BIN
target/classes/com/zskk/dicom/monitor/monitors/RetryFileActionCallback.class


BIN
target/classes/com/zskk/dicom/monitor/queue/BaseQueue.class


BIN
target/classes/com/zskk/dicom/monitor/queue/CurrentRetryUploadQueue$CurrentRetryUploadQueueHolder.class


BIN
target/classes/com/zskk/dicom/monitor/queue/CurrentRetryUploadQueue.class


BIN
target/classes/com/zskk/dicom/monitor/queue/CurrentUploadQueue$CurrentUploadQueueHolder.class


BIN
target/classes/com/zskk/dicom/monitor/queue/CurrentUploadQueue.class


BIN
target/classes/com/zskk/dicom/monitor/queue/ErrorQueue$ErrorQueueHolder.class


BIN
target/classes/com/zskk/dicom/monitor/queue/ErrorQueue.class


BIN
target/classes/com/zskk/dicom/monitor/queue/IQueue.class


BIN
target/classes/com/zskk/dicom/monitor/queue/OldRetryQueue$OldRetryQueueHolder.class


BIN
target/classes/com/zskk/dicom/monitor/queue/OldRetryQueue.class


BIN
target/classes/com/zskk/dicom/monitor/queue/OldUploadQueue$OldUploadQueueHolder.class


BIN
target/classes/com/zskk/dicom/monitor/queue/OldUploadQueue.class


BIN
target/classes/com/zskk/dicom/monitor/queue/RemoveFile2RetryQueue$RemoveFile2RetryQueueHolder.class


BIN
target/classes/com/zskk/dicom/monitor/queue/RemoveFile2RetryQueue.class


BIN
target/classes/com/zskk/dicom/monitor/queue/SuccessQueue$SuccessQueueHolder.class


BIN
target/classes/com/zskk/dicom/monitor/queue/SuccessQueue.class


BIN
target/classes/com/zskk/dicom/monitor/runner/AbstractRemoveRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/AbstractUploadRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/AddHistory2QueueRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/AddRetryHistory2QueueRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/BaseAddHistory2QueueRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/BaseRemoveRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/BaseRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/BaseUploadRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/CurrentUploadRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/ErrorRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/HistoryUploadRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/RemoveFile2RetryRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/RetryCurrentUploadRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/RetryHistoryUploadRunner.class


BIN
target/classes/com/zskk/dicom/monitor/runner/SuccessRunner.class


BIN
target/classes/com/zskk/dicom/monitor/uploader/BaseFileUploader.class


BIN
target/classes/com/zskk/dicom/monitor/utils/ExceptionUtil.class


BIN
target/classes/com/zskk/dicom/monitor/utils/FileHashUtil.class


BIN
target/classes/com/zskk/dicom/monitor/utils/LogEnginer.class


BIN
target/classes/com/zskk/dicom/oss/BaseOSSHleper.class


BIN
target/classes/com/zskk/dicom/request/bean/ALiYunOSSCallbackBodyBean.class


BIN
target/classes/com/zskk/dicom/response/BaseResponse.class


BIN
target/classes/com/zskk/dicom/response/FileUploadChcekResponse.class


BIN
target/classes/com/zskk/dicom/response/ZskkResponseFactory$ZskkExceptionFactoryHoler.class


BIN
target/classes/com/zskk/dicom/response/ZskkResponseFactory.class


BIN
target/classes/com/zskk/dicom/response/bean/BaseResponseBean.class


BIN
target/classes/com/zskk/dicom/response/bean/FileUploadChcekResponseBean.class


BIN
target/classes/com/zskk/dicom/response/bean/FileUploadResponseBean.class


+ 10 - 10
target/classes/project.properties

@@ -1,19 +1,19 @@
-#monitor.monitorDir=D:\\zskk\\zskk_system
-#monitor.monitorBackDir=D:\\zskk\\zskk_system_back12
-#monitor.monitorRetryDir=D:\\zskk\\zskk_system_Retry12
-#monitor.errorDir=D:\\zskk\\zskk_system_eorr12
-monitor.monitorDir=/Users/fuyu/Desktop/zzp/test/src
-monitor.monitorBackDir=/Users/fuyu/Desktop/zzp/test/target
-monitor.monitorRetryDir=/Users/fuyu/Desktop/zzp/test/retry
-monitor.errorDir=/Users/fuyu/Desktop/zzp/test/error
-monitor.hospitalId=test_zzp
+monitor.monitorDir=D:\\ZSKK_SYSTEM\\ScpServer\\Release\\DICOM
+monitor.monitorBackDir=D:\\ZSKK_SYSTEM\\ScpServer\\Release\\DICOM_BCK
+monitor.monitorRetryDir=D:\\ZSKK_SYSTEM\\ScpServer\\Release\\DICOM_RETRY
+monitor.errorDir=D:\\ZSKK_SYSTEM\\ScpServer\\Release\\DICOM_ERROR
+monitor.hospitalId=13000003
+#monitor.monitorDir=/Users/fuyu/Desktop/zzp/test/src
+#monitor.monitorBackDir=/Users/fuyu/Desktop/zzp/test/target
+#monitor.monitorRetryDir=/Users/fuyu/Desktop/zzp/test/retry
+#monitor.errorDir=/Users/fuyu/Desktop/zzp/test/error
+#monitor.hospitalId=13000003
 monitor.pool.successPoolsLength=2
 monitor.pool.oldRetryPoolsLength=2
 monitor.pool.currentUploadPoolsLength=4
 monitor.pool.oldUploadPoolsLength=4
 monitor.logDir=/Users/fuyu/Desktop
 monitor.archiveWay=oss
-#73090001
 monitor.postHost=api.pacsonline.cn
 monitor.postPort=80
 monitor.postUri=/upload

Some files were not shown because too many files changed in this diff