mirror of
https://github.com/simon987/ws_bucket.git
synced 2025-04-10 14:06:46 +00:00
31 lines
637 B
Go
31 lines
637 B
Go
package api
|
|
|
|
import (
|
|
"github.com/sirupsen/logrus"
|
|
"os"
|
|
"path/filepath"
|
|
"time"
|
|
)
|
|
|
|
func (api *WebApi) DisposeStaleUploadSlots() {
|
|
|
|
var toDispose []UploadSlot
|
|
api.db.Where("? >= to_dispose_date", time.Now().Unix()).Find(&toDispose)
|
|
|
|
for _, slot := range toDispose {
|
|
path := filepath.Join(WorkDir, slot.FileName)
|
|
|
|
err := os.Remove(path)
|
|
api.db.Where("token = ?", slot.Token).Delete(UploadSlot{})
|
|
|
|
logrus.WithFields(logrus.Fields{
|
|
"fileName": slot.FileName,
|
|
"err": err,
|
|
}).Trace("Deleted file")
|
|
}
|
|
|
|
logrus.WithFields(logrus.Fields{
|
|
"staleUploadSlots": len(toDispose),
|
|
}).Info("Disposed stale upload slots")
|
|
}
|