diff --git a/CHANGELOG.md b/CHANGELOG.md index 9fa3b49..30d83d1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,12 +14,14 @@ - 🧪测试: {类|方法} {测试结果} - 🛑更名: {旧名} ➡ {新名} - ❌移除: {模块|方法} + - 🚧施工 ------ ``` ------ # 目录 +* [V 1.0.6]() * [V 1.0.5]() * [V 1.0.4]() * [V 1.0.3]() @@ -27,6 +29,15 @@ * [V 1.0.1]() * [V 1.0.0]() +------ +## [V 1.0.6] - 2023.4.28 +### FileModule +- 🚧施工: 所有的`OSS`方法类,正在施工,不建议使用 + +### CreeperModule +- 🐞Bug: **#00003** `BarrageSaveFile` 文件初始化失败 +- ⛏修复: 修复 **#00003**, 应该创建主播文件夹但是创建的是文件,将主播文件创建修改成主播文件夹创建 + ------ ## [V 1.0.5] - 2023.4.28 ### SectionModule diff --git a/CreeperModule/src/main/java/org/example/core/control/impl/LoadTask_L_Bilibili.java b/CreeperModule/src/main/java/org/example/core/control/impl/LoadTask_L_Bilibili.java index 81c7a2e..6496590 100644 --- a/CreeperModule/src/main/java/org/example/core/control/impl/LoadTask_L_Bilibili.java +++ b/CreeperModule/src/main/java/org/example/core/control/impl/LoadTask_L_Bilibili.java @@ -5,6 +5,7 @@ import org.example.core.control.LoadTask; import org.example.core.factory.ProcessorFactory; import org.example.core.pipeline.PipelineWriteJson; import org.example.core.processor.Process_L_Bilibili; +import org.example.exception.FileCacheException; import org.example.pojo.download.LoadConfig; import org.example.utils.PachongConfig; import us.codecraft.webmagic.Request; @@ -25,7 +26,7 @@ public class LoadTask_L_Bilibili implements LoadTask { private final PipelineWriteJson pipelineWriteJson; - public LoadTask_L_Bilibili(LoadConfig loadConfig) { + public LoadTask_L_Bilibili(LoadConfig loadConfig) throws FileCacheException { process_l_bilibili = (Process_L_Bilibili) new ProcessorFactory().getProcessor(loadConfig); pipelineWriteJson = new PipelineWriteJson(loadConfig); } diff --git a/CreeperModule/src/main/java/org/example/core/control/impl/LoadTask_R_Douyu.java b/CreeperModule/src/main/java/org/example/core/control/impl/LoadTask_R_Douyu.java index 0ecb9bb..db14296 100644 --- a/CreeperModule/src/main/java/org/example/core/control/impl/LoadTask_R_Douyu.java +++ b/CreeperModule/src/main/java/org/example/core/control/impl/LoadTask_R_Douyu.java @@ -5,6 +5,7 @@ import org.example.core.control.LoadTask; import org.example.core.factory.ProcessorFactory; import org.example.core.pipeline.PipelineWriteJson; import org.example.core.processor.Process_R_Douyu; +import org.example.exception.FileCacheException; import org.example.pojo.download.LoadConfig; import org.example.utils.PachongConfig; import us.codecraft.webmagic.Request; @@ -25,7 +26,7 @@ public class LoadTask_R_Douyu implements LoadTask { private final PipelineWriteJson pipelineWriteJson; - public LoadTask_R_Douyu(LoadConfig loadConfig) { + public LoadTask_R_Douyu(LoadConfig loadConfig) throws FileCacheException { process_r_douyu = (Process_R_Douyu) new ProcessorFactory().getProcessor(loadConfig); pipelineWriteJson = new PipelineWriteJson(loadConfig); } diff --git a/CreeperModule/src/main/java/org/example/core/factory/TaskFactory.java b/CreeperModule/src/main/java/org/example/core/factory/TaskFactory.java index 1a7880b..dc7c739 100644 --- a/CreeperModule/src/main/java/org/example/core/factory/TaskFactory.java +++ b/CreeperModule/src/main/java/org/example/core/factory/TaskFactory.java @@ -3,6 +3,7 @@ package org.example.core.factory; import org.example.core.control.LoadTask; import org.example.core.control.impl.LoadTask_L_Bilibili; import org.example.core.control.impl.LoadTask_R_Douyu; +import org.example.exception.FileCacheException; import org.example.pojo.download.LoadConfig; import org.example.pojo.download.assign.LoadConfig_L_Bilibili; import org.example.pojo.download.assign.LoadConfig_R_Douyu; @@ -19,7 +20,7 @@ public class TaskFactory { * @param loadConfig * @return LoadTask */ - public LoadTask getLoadTask(LoadConfig loadConfig) { + public LoadTask getLoadTask(LoadConfig loadConfig) throws FileCacheException { if (loadConfig == null) { return null; diff --git a/CreeperModule/src/main/java/org/example/core/manager/LoadTaskManager.java b/CreeperModule/src/main/java/org/example/core/manager/LoadTaskManager.java index a38770d..cbd1d9d 100644 --- a/CreeperModule/src/main/java/org/example/core/manager/LoadTaskManager.java +++ b/CreeperModule/src/main/java/org/example/core/manager/LoadTaskManager.java @@ -2,6 +2,7 @@ package org.example.core.manager; import org.example.core.control.LoadTask; import org.example.core.factory.TaskFactory; +import org.example.exception.FileCacheException; import org.example.pojo.download.LoadConfig; import java.util.Collections; @@ -33,7 +34,7 @@ public class LoadTaskManager { } // 创建一个任务并返回唯一的 key - public String addTask(LoadConfig loadConfig) { + public String addTask(LoadConfig loadConfig) throws FileCacheException { // 根据主播名和时间戳生成唯一的 key String key = generateKey(loadConfig); diff --git a/CreeperModule/src/main/java/org/example/pojo/configfile/BarrageSaveFile.java b/CreeperModule/src/main/java/org/example/pojo/configfile/BarrageSaveFile.java index 826b6e0..ffbd4d9 100644 --- a/CreeperModule/src/main/java/org/example/pojo/configfile/BarrageSaveFile.java +++ b/CreeperModule/src/main/java/org/example/pojo/configfile/BarrageSaveFile.java @@ -48,7 +48,7 @@ public class BarrageSaveFile extends ConfigFile> //TODO 待移除 建立主播文件夹 try { - Files.createFile(Path.of(rootPath)); + Files.createDirectory(Path.of(rootPath)); } catch (IOException e) { return false; } diff --git a/CreeperModule/src/test/java/org/example/BarrageSaveFileAutoCreateTest.java b/CreeperModule/src/test/java/org/example/BarrageSaveFileAutoCreateTest.java new file mode 100644 index 0000000..87e5acf --- /dev/null +++ b/CreeperModule/src/test/java/org/example/BarrageSaveFileAutoCreateTest.java @@ -0,0 +1,21 @@ +package org.example; + +import org.example.exception.FileCacheException; +import org.example.pojo.configfile.BarrageSaveFile; +import org.example.pojo.download.LoadConfig; +import org.junit.jupiter.api.Test; + +import java.util.concurrent.ConcurrentLinkedQueue; + +/** + * @author Genius + * @date 2023/05/06 04:07 + **/ +public class BarrageSaveFileAutoCreateTest { + + @Test + public void test() throws FileCacheException { + LoadConfig loadConfig = new LoadConfig("斗鱼","Post","大司马"); + BarrageSaveFile barrageSaveFile = new BarrageSaveFile(loadConfig,new ConcurrentLinkedQueue<>()); + } +} diff --git a/CreeperModule/src/test/java/org/example/coreTest/CoreTest.java b/CreeperModule/src/test/java/org/example/coreTest/CoreTest.java index e0f3918..af2fee4 100644 --- a/CreeperModule/src/test/java/org/example/coreTest/CoreTest.java +++ b/CreeperModule/src/test/java/org/example/coreTest/CoreTest.java @@ -3,6 +3,7 @@ package org.example.coreTest; import org.example.core.control.LoadTask; import org.example.core.factory.TaskFactory; import org.example.core.manager.LoadTaskManager; +import org.example.exception.FileCacheException; import org.example.pojo.download.assign.LoadConfig_R_Douyu; import org.junit.jupiter.api.Test; @@ -13,7 +14,7 @@ import org.junit.jupiter.api.Test; public class CoreTest { @Test - public void HelloWorld() throws InterruptedException { + public void HelloWorld() throws InterruptedException, FileCacheException { // 创建一个任务管理器 LoadTaskManager manager = new LoadTaskManager(); // 创建一个斗鱼录播的配置类 @@ -50,7 +51,7 @@ public class CoreTest { } @Test - public void testTask() throws InterruptedException { + public void testTask() throws InterruptedException, FileCacheException { LoadConfig_R_Douyu dsm = new LoadConfig_R_Douyu("大司马", "Kp1QM8gb4ow7k4bj"); TaskFactory taskFactory = new TaskFactory(); LoadTask loadTask = taskFactory.getLoadTask(dsm); @@ -73,7 +74,7 @@ public class CoreTest { } @Test - public void testTaskManage() throws InterruptedException { + public void testTaskManage() throws InterruptedException, FileCacheException { LoadConfig_R_Douyu dsm = new LoadConfig_R_Douyu("大司马", "Kp1QM8gb4ow7k4bj"); LoadConfig_R_Douyu swk = new LoadConfig_R_Douyu("孙悟空", "X3JzMaObqDYvPQro"); LoadTaskManager manager = new LoadTaskManager(); diff --git a/FileModule/pom.xml b/FileModule/pom.xml index 18f5c3f..250b53f 100644 --- a/FileModule/pom.xml +++ b/FileModule/pom.xml @@ -19,7 +19,11 @@ - + + com.aliyun.oss + aliyun-sdk-oss + 3.10.2 + org.example common diff --git a/FileModule/src/main/java/org/example/pojo/configfile/ModuleSrcConfigFile.java b/FileModule/src/main/java/org/example/pojo/configfile/ModuleSrcConfigFile.java index 3a1c426..5351976 100644 --- a/FileModule/src/main/java/org/example/pojo/configfile/ModuleSrcConfigFile.java +++ b/FileModule/src/main/java/org/example/pojo/configfile/ModuleSrcConfigFile.java @@ -43,7 +43,7 @@ public class ModuleSrcConfigFile extends ConfigFile partETags = new ArrayList(); + for(int i=0;i fileNames, String bucketName) { + OSS ossClient = this.getOssInstance(); + try{ + DeleteObjectsRequest deleteObjectsRequest = new DeleteObjectsRequest(bucketName); + deleteObjectsRequest.setKeys(fileNames); + ossClient.deleteObjects(deleteObjectsRequest); + }catch (OSSException e){ + loggerError(e); + return false; + }finally { + shutDown(ossClient); + } + return true; + } + + + private void loggerError(OSSException e){ + logger.error("Error Message:{}",e.getErrorMessage()); + logger.error("Error Code:{}" + e.getErrorCode()); + logger.error("Request ID:{}" + e.getRequestId()); + logger.error("Host ID:{}" + e.getHostId()); + } + + private void shutDown(OSS ossClient){ + if(ossClient != null){ + ossClient.shutdown(); + } + } +} diff --git a/FileModule/src/main/java/org/example/pojo/oss/OssAble.java b/FileModule/src/main/java/org/example/pojo/oss/OssAble.java new file mode 100644 index 0000000..1714034 --- /dev/null +++ b/FileModule/src/main/java/org/example/pojo/oss/OssAble.java @@ -0,0 +1,22 @@ +package org.example.pojo.oss; + +import java.io.File; +import java.io.InputStream; +import java.util.List; + +public interface OssAble { + + String simpleUpload(String filePath,String bucketName,String objectName); + + String simpleUpload(InputStream inputStream,String bucketName,String objectName); + + String multipartUpload(String filePath,String bucketName,String objectName); + + boolean endPointUpload(String filePath,String bucketName,String objectName); + + File downloadFile(String downloadPath,String bucketName,String objectName); + + boolean deleteFile(String fileName,String bucketName); + + boolean deleteFiles(List fileNames,String bucketName); +} diff --git a/FileModule/src/main/java/org/example/util/OSSUtil.java b/FileModule/src/main/java/org/example/util/OSSUtil.java new file mode 100644 index 0000000..e500404 --- /dev/null +++ b/FileModule/src/main/java/org/example/util/OSSUtil.java @@ -0,0 +1,8 @@ +package org.example.util; + +/** + * @author Genius + * @date 2023/05/01 16:34 + **/ +public class OSSUtil { +} diff --git a/console/pom.xml b/console/pom.xml index a3766f9..e57f167 100644 --- a/console/pom.xml +++ b/console/pom.xml @@ -18,6 +18,11 @@ + + org.example + CreeperModule + 1.0-SNAPSHOT + org.example FileModule