diff --git a/server/utils/breakpoint_continue.go b/server/utils/breakpoint_continue.go index 05fb99cbf5406f7e29b1a5f4fa45dee3ef8913ac..7dbe7eb603ecf7854a196db7bbb6273fa0eda52c 100644 --- a/server/utils/breakpoint_continue.go +++ b/server/utils/breakpoint_continue.go @@ -14,6 +14,12 @@ import ( const breakpointDir = "./breakpointDir/" const finishDir = "./fileDir/" +//@author: [piexlmax](https://github.com/piexlmax) +//@function: BreakPointContinue +//@description: 断点续传 +//@param: content []byte, fileName string, contentNumber int, contentTotal int, fileMd5 string +//@return: error, string + func BreakPointContinue(content []byte, fileName string, contentNumber int, contentTotal int, fileMd5 string) (error, string) { path := breakpointDir + fileMd5 + "/" err := os.MkdirAll(path, os.ModePerm) @@ -25,6 +31,12 @@ func BreakPointContinue(content []byte, fileName string, contentNumber int, cont } +//@author: [piexlmax](https://github.com/piexlmax) +//@function: CheckMd5 +//@description: 检查Md5 +//@param: content []byte, chunkMd5 string +//@return: CanUpload bool + func CheckMd5(content []byte, chunkMd5 string) (CanUpload bool) { fileMd5 := MD5V(content) if fileMd5 == chunkMd5 { @@ -34,6 +46,12 @@ func CheckMd5(content []byte, chunkMd5 string) (CanUpload bool) { } } +//@author: [piexlmax](https://github.com/piexlmax) +//@function: makeFileContent +//@description: 创建切片内容 +//@param: content []byte, fileName string, FileDir string, contentNumber int +//@return: error, string + func makeFileContent(content []byte, fileName string, FileDir string, contentNumber int) (error, string) { path := FileDir + fileName + "_" + strconv.Itoa(contentNumber) f, err := os.Create(path) @@ -49,6 +67,12 @@ func makeFileContent(content []byte, fileName string, FileDir string, contentNum return nil, path } +//@author: [piexlmax](https://github.com/piexlmax) +//@function: makeFileContent +//@description: 创建切片文件 +//@param: fileName string, FileMd5 string +//@return: error, string + func MakeFile(fileName string, FileMd5 string) (error, string) { rd, err := ioutil.ReadDir(breakpointDir + FileMd5) if err != nil { @@ -68,6 +92,12 @@ func MakeFile(fileName string, FileMd5 string) (error, string) { return nil, finishDir + fileName } +//@author: [piexlmax](https://github.com/piexlmax) +//@function: RemoveChunk +//@description: 移除切片 +//@param: FileMd5 string +//@return: error + func RemoveChunk(FileMd5 string) error { err := os.RemoveAll(breakpointDir + FileMd5) return err