upload功能

Change-Id: Iad725ce3e2edd913531bf11705bf51000dde010d
diff --git a/src/main/java/com/pt5/pthouduan/entity/TrackerInitializer.java b/src/main/java/com/pt5/pthouduan/entity/TrackerInitializer.java
new file mode 100644
index 0000000..b9632ea
--- /dev/null
+++ b/src/main/java/com/pt5/pthouduan/entity/TrackerInitializer.java
@@ -0,0 +1,40 @@
+package com.pt5.pthouduan.entity;
+
+import com.pt5.pthouduan.service.PasskeyValidator;
+import com.pt5.pthouduan.service.UserService;
+import com.turn.ttorrent.tracker.Tracker;
+import com.turn.ttorrent.tracker.TorrentsRepository;
+import com.turn.ttorrent.tracker.TrackerRequestProcessor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.io.IOException;
+
+@Service
+public class TrackerInitializer {
+
+    @Autowired
+    private PasskeyValidator passkeyValidator;
+
+    public Tracker createTracker() throws IOException {
+        TorrentsRepository repository = new TorrentsRepository(1000);
+
+        // 1. 创建自定义的Processor
+        TrackerRequestProcessor processor = new PasskeyTrackerProcessor(
+                repository,
+                passkeyValidator
+        );
+
+        // 2. 使用四参数构造器
+        Tracker tracker = new Tracker(
+                6969,                       // 端口(与Nginx配置一致)
+                "http://127.0.0.1/announce",  // 对外公告地址
+                processor,                   // 自定义的Processor
+                repository                   // Torrent仓库
+        );
+        tracker.setAnnounceInterval(100);
+
+        tracker.setAcceptForeignTorrents(false); // 禁止未注册的种子
+        return tracker;
+    }
+}