mirror of
https://github.com/terorie/od-database-crawler.git
synced 2025-04-19 02:16:43 +00:00
Pause file version
This commit is contained in:
parent
acbfd78a5d
commit
a3aebe4ef2
12
resume.go
12
resume.go
@ -84,10 +84,15 @@ func SaveTask(od *OD) (err error) {
|
||||
err = os.Mkdir(dir, 0777)
|
||||
if err != nil { return err }
|
||||
|
||||
// Open pause file
|
||||
pausedF, err := os.OpenFile(fPath, os.O_CREATE | os.O_WRONLY | os.O_TRUNC, 0666)
|
||||
if err != nil { return err }
|
||||
defer pausedF.Close()
|
||||
|
||||
// Write pause file version
|
||||
_, err = pausedF.Write([]byte("ODPAUSE-"))
|
||||
if err != nil { return err }
|
||||
|
||||
// Create save state
|
||||
paused := PausedOD {
|
||||
Task: &od.Task,
|
||||
@ -144,6 +149,13 @@ func resumeQueue(id uint64) (od *OD, err error) {
|
||||
BaseUri: &od.BaseUri,
|
||||
}
|
||||
|
||||
var version [8]byte
|
||||
_, err = io.ReadFull(pausedF, version[:])
|
||||
if err != nil { return nil, err }
|
||||
if !bytes.Equal(version[:], []byte("ODPAUSE-")) {
|
||||
return nil, fmt.Errorf("unsupported pause file")
|
||||
}
|
||||
|
||||
// Read pause settings
|
||||
pauseDec := gob.NewDecoder(pausedF)
|
||||
err = pauseDec.Decode(&paused)
|
||||
|
Loading…
x
Reference in New Issue
Block a user