From 09e7f09f4c2ac28fefd9e0cf1750ade53c54bbd4 Mon Sep 17 00:00:00 2001
From: cdf <857448963@qq.com>
Date: Wed, 16 Oct 2024 09:55:15 +0800
Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=8E=B7=E5=8F=96=E6=9C=80?=
=?UTF-8?q?=E6=96=B0=E6=96=87=E4=BB=B6=E6=96=B9=E6=B3=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 6 +--
.../com/njcn/huawei/obs/util/OBSUtil.java | 41 +++++++++++++++++++
2 files changed, 44 insertions(+), 3 deletions(-)
diff --git a/pom.xml b/pom.xml
index 587283f..cda2cb2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -10,12 +10,12 @@
nexus-releases
Nexus Release Repository
- http://192.168.1.13:8001/nexus/content/repositories/releases/
+ http://192.168.1.22:8001/nexus/content/repositories/releases/
nexus-snapshots
Nexus Snapshot Repository
- http://192.168.1.13:8001/nexus/content/repositories/snapshots/
+ http://192.168.1.22:8001/nexus/content/repositories/snapshots/
@@ -56,4 +56,4 @@
-
\ No newline at end of file
+
diff --git a/src/main/java/com/njcn/huawei/obs/util/OBSUtil.java b/src/main/java/com/njcn/huawei/obs/util/OBSUtil.java
index c2c5814..2391a1d 100644
--- a/src/main/java/com/njcn/huawei/obs/util/OBSUtil.java
+++ b/src/main/java/com/njcn/huawei/obs/util/OBSUtil.java
@@ -1,5 +1,6 @@
package com.njcn.huawei.obs.util;
+import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.StrUtil;
import com.njcn.huawei.obs.config.HuaweiObsProperties;
import com.njcn.huawei.obs.constant.ExceptionConstant;
@@ -11,6 +12,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;
+import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
@@ -208,6 +210,45 @@ public class OBSUtil {
}
+ /**
+ * 目前只给审计日志使用
+ *
+ * @author cdf
+ * @date 2024/10/15
+ */
+ public File getLastFile(String directory) {
+ File file = null;
+ ObsClient obsClient = null;
+ try {
+ ListObjectsRequest listObjectsRequest = new ListObjectsRequest(huaweiObsProperties.getObs().getBucket());
+ listObjectsRequest.setPrefix(directory);
+ obsClient = this.huaweiObsProperties.getInstance();
+ ObjectListing objectListing = obsClient.listObjects(listObjectsRequest);
+ ObsObject latestObsObject = null;
+ for (ObsObject obsObject : objectListing.getObjects()) {
+ System.out.println("Object Key: " + obsObject.getMetadata());
+
+ ObjectMetadata item = obsObject.getMetadata();
+ if (latestObsObject == null || item.getLastModified().after(latestObsObject.getMetadata().getLastModified())) {
+ latestObsObject = obsObject;
+ }
+ }
+ if (latestObsObject != null) {
+ System.out.println("文件对象--------------" + latestObsObject.getObjectKey());
+ InputStream stream = latestObsObject.getObjectContent();
+ file = File.createTempFile("lastObsLogs", "xlsx");
+ FileUtil.writeFromStream(stream, file);
+ }
+ } catch (Exception e) {
+ log.error("获取指定目录下面最新文件失败");
+ e.printStackTrace();
+ }finally {
+ huaweiObsProperties.destroy(obsClient);
+ }
+ return file;
+ }
+
+
/***
* 暂时未知河北现场的桶是否固定,将多个业务文件存在一个桶内也没问题
* 判断是否存在桶,不存在则创建通