Ver código fonte

修复重构的代码问题

Signed-off-by: allan716 <[email protected]>
allan716 3 anos atrás
pai
commit
9467268935

+ 1 - 1
cmd/chinesesubfinder/main.go

@@ -70,7 +70,7 @@ func main() {
 	nowPort := readCustomPortFile()
 	log_helper.GetLogger().Infoln(fmt.Sprintf("WebUI will listen at 0.0.0.0:%d", nowPort))
 	// 支持在外部配置特殊的端口号,以防止本地本占用了无法使用
-	backend.StartBackEnd(nowPort, cronHelper)
+	backend.StartBackEnd(fileDownloader, nowPort, cronHelper)
 }
 
 func readCustomPortFile() int {

+ 3 - 2
internal/backend/backend.go

@@ -6,6 +6,7 @@ import (
 	"github.com/allanpk716/ChineseSubFinder/internal/backend/routers"
 	"github.com/allanpk716/ChineseSubFinder/internal/backend/ws_helper"
 	"github.com/allanpk716/ChineseSubFinder/internal/logic/cron_helper"
+	"github.com/allanpk716/ChineseSubFinder/internal/logic/file_downloader"
 	"github.com/allanpk716/ChineseSubFinder/internal/pkg/log_helper"
 	"github.com/gin-contrib/cors"
 	"github.com/gin-gonic/gin"
@@ -14,7 +15,7 @@ import (
 )
 
 // StartBackEnd 开启后端的服务器
-func StartBackEnd(httpPort int, cronHelper *cron_helper.CronHelper) {
+func StartBackEnd(fileDownloader *file_downloader.FileDownloader, httpPort int, cronHelper *cron_helper.CronHelper) {
 
 	gin.SetMode(gin.ReleaseMode)
 	gin.DefaultWriter = ioutil.Discard
@@ -22,7 +23,7 @@ func StartBackEnd(httpPort int, cronHelper *cron_helper.CronHelper) {
 	engine := gin.Default()
 	// 默认所有都通过
 	engine.Use(cors.Default())
-	routers.InitRouter(engine, cronHelper)
+	routers.InitRouter(fileDownloader, engine, cronHelper)
 
 	engine.GET("/", func(c *gin.Context) {
 		c.Header("content-type", "text/html;charset=utf-8")

+ 4 - 4
internal/backend/controllers/base/controller_base.go

@@ -1,20 +1,20 @@
 package base
 
 import (
+	"github.com/allanpk716/ChineseSubFinder/internal/logic/file_downloader"
 	"github.com/allanpk716/ChineseSubFinder/internal/pkg/log_helper"
 	"github.com/allanpk716/ChineseSubFinder/internal/types/backend"
 	"github.com/gin-gonic/gin"
-	"github.com/sirupsen/logrus"
 	"net/http"
 )
 
 type ControllerBase struct {
-	log *logrus.Logger
+	fileDownloader *file_downloader.FileDownloader
 }
 
-func NewControllerBase(_logger *logrus.Logger) *ControllerBase {
+func NewControllerBase(fileDownloader *file_downloader.FileDownloader) *ControllerBase {
 	return &ControllerBase{
-		log: _logger,
+		fileDownloader: fileDownloader,
 	}
 }
 

+ 4 - 6
internal/backend/controllers/base/proxy.go

@@ -31,13 +31,11 @@ func (cb *ControllerBase) CheckProxyHandler(c *gin.Context) {
 
 	// 使用提交过来的这个代理地址,测试多个字幕网站的可用性
 	subSupplierHub := subSupplier.NewSubSupplierHub(
-		tmpSettings,
-		cb.log,
 		// 这里无需传递下载字幕的缓存实例
-		zimuku.NewSupplier(tmpSettings, cb.log, nil),
-		xunlei.NewSupplier(tmpSettings, cb.log, nil),
-		shooter.NewSupplier(tmpSettings, cb.log, nil),
-		subhd.NewSupplier(tmpSettings, cb.log, nil),
+		zimuku.NewSupplier(cb.fileDownloader),
+		xunlei.NewSupplier(cb.fileDownloader),
+		shooter.NewSupplier(cb.fileDownloader),
+		subhd.NewSupplier(cb.fileDownloader),
 	)
 
 	outStatus := subSupplierHub.CheckSubSiteStatus()

+ 3 - 3
internal/backend/routers/base_router.go

@@ -5,13 +5,13 @@ import (
 	v1 "github.com/allanpk716/ChineseSubFinder/internal/backend/controllers/v1"
 	"github.com/allanpk716/ChineseSubFinder/internal/backend/middle"
 	"github.com/allanpk716/ChineseSubFinder/internal/logic/cron_helper"
-	"github.com/allanpk716/ChineseSubFinder/internal/pkg/log_helper"
+	"github.com/allanpk716/ChineseSubFinder/internal/logic/file_downloader"
 	"github.com/gin-gonic/gin"
 )
 
-func InitRouter(router *gin.Engine, cronHelper *cron_helper.CronHelper) {
+func InitRouter(fileDownloader *file_downloader.FileDownloader, router *gin.Engine, cronHelper *cron_helper.CronHelper) {
 
-	cbBase := base.NewControllerBase(log_helper.GetLogger())
+	cbBase := base.NewControllerBase(fileDownloader)
 	cbV1 := v1.NewControllerBase(cronHelper)
 	// 基础的路由
 	router.GET("/system-status", cbBase.SystemStatusHandler)

+ 1 - 2
internal/logic/cron_helper/cron_helper.go

@@ -232,8 +232,7 @@ func (ch *CronHelper) scanVideoProcessAdd2DownloadQueue() {
 	// ----------------------------------------------------------------------------------------
 	// 扫描有那些视频需要下载字幕,放入队列中,然后会有下载者去这个队列取出来进行下载
 	videoScanAndRefreshHelper := video_scan_and_refresh_helper.NewVideoScanAndRefreshHelper(
-		ch.sets,
-		ch.log,
+		ch.fileDownloader,
 		ch.downloadQueue)
 
 	ch.log.Infoln("Video Scan Started...")