From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master

---
 jnpf-file/jnpf-file-storage/src/main/java/jnpf/fileStorage/dms/UuidV7Generator.java |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/jnpf-file/jnpf-file-storage/src/main/java/jnpf/fileStorage/dms/UuidV7Generator.java b/jnpf-file/jnpf-file-storage/src/main/java/jnpf/fileStorage/dms/UuidV7Generator.java
new file mode 100644
index 0000000..211bacc
--- /dev/null
+++ b/jnpf-file/jnpf-file-storage/src/main/java/jnpf/fileStorage/dms/UuidV7Generator.java
@@ -0,0 +1,21 @@
+package jnpf.fileStorage.dms;
+
+import java.security.SecureRandom;
+import java.util.UUID;
+
+public final class UuidV7Generator {
+    private static final SecureRandom RANDOM = new SecureRandom();
+
+    private UuidV7Generator() {
+    }
+
+    public static UUID generate() {
+        long timestamp = System.currentTimeMillis() & 0x0000FFFFFFFFFFFFL;
+        long randomA = RANDOM.nextInt(1 << 12);
+        long mostSignificantBits = (timestamp << 16) | 0x7000L | randomA;
+        long leastSignificantBits = RANDOM.nextLong();
+        leastSignificantBits = (leastSignificantBits & 0x3FFFFFFFFFFFFFFFL)
+                | 0x8000000000000000L;
+        return new UUID(mostSignificantBits, leastSignificantBits);
+    }
+}

--
Gitblit v1.8.0