lib/model: Create folders via newFolder
GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/4329
This commit is contained in:
committed by
Audrius Butkevicius
parent
c7221b035d
commit
ddf6d64faa
@@ -9,10 +9,13 @@ package model
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
"github.com/syncthing/syncthing/lib/config"
|
||||||
)
|
)
|
||||||
|
|
||||||
type folder struct {
|
type folder struct {
|
||||||
stateTracker
|
stateTracker
|
||||||
|
config.FolderConfiguration
|
||||||
|
|
||||||
scan folderScanner
|
scan folderScanner
|
||||||
model *Model
|
model *Model
|
||||||
@@ -21,9 +24,23 @@ type folder struct {
|
|||||||
initialScanFinished chan struct{}
|
initialScanFinished chan struct{}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *folder) IndexUpdated() {
|
func newFolder(model *Model, cfg config.FolderConfiguration) folder {
|
||||||
|
ctx, cancel := context.WithCancel(context.Background())
|
||||||
|
|
||||||
|
return folder{
|
||||||
|
stateTracker: newStateTracker(cfg.ID),
|
||||||
|
FolderConfiguration: cfg,
|
||||||
|
|
||||||
|
scan: newFolderScanner(cfg),
|
||||||
|
ctx: ctx,
|
||||||
|
cancel: cancel,
|
||||||
|
model: model,
|
||||||
|
initialScanFinished: make(chan struct{}),
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (f *folder) IndexUpdated() {
|
||||||
|
}
|
||||||
func (f *folder) DelayScan(next time.Duration) {
|
func (f *folder) DelayScan(next time.Duration) {
|
||||||
f.scan.Delay(next)
|
f.scan.Delay(next)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
package model
|
package model
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/syncthing/syncthing/lib/config"
|
"github.com/syncthing/syncthing/lib/config"
|
||||||
@@ -21,23 +20,10 @@ func init() {
|
|||||||
|
|
||||||
type sendOnlyFolder struct {
|
type sendOnlyFolder struct {
|
||||||
folder
|
folder
|
||||||
config.FolderConfiguration
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func newSendOnlyFolder(model *Model, cfg config.FolderConfiguration, _ versioner.Versioner, _ fs.Filesystem) service {
|
func newSendOnlyFolder(model *Model, cfg config.FolderConfiguration, _ versioner.Versioner, _ fs.Filesystem) service {
|
||||||
ctx, cancel := context.WithCancel(context.Background())
|
return &sendOnlyFolder{folder: newFolder(model, cfg)}
|
||||||
|
|
||||||
return &sendOnlyFolder{
|
|
||||||
folder: folder{
|
|
||||||
stateTracker: newStateTracker(cfg.ID),
|
|
||||||
scan: newFolderScanner(cfg),
|
|
||||||
ctx: ctx,
|
|
||||||
cancel: cancel,
|
|
||||||
model: model,
|
|
||||||
initialScanFinished: make(chan struct{}),
|
|
||||||
},
|
|
||||||
FolderConfiguration: cfg,
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *sendOnlyFolder) Serve() {
|
func (f *sendOnlyFolder) Serve() {
|
||||||
|
|||||||
@@ -7,7 +7,6 @@
|
|||||||
package model
|
package model
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"math/rand"
|
"math/rand"
|
||||||
@@ -81,7 +80,6 @@ type dbUpdateJob struct {
|
|||||||
|
|
||||||
type sendReceiveFolder struct {
|
type sendReceiveFolder struct {
|
||||||
folder
|
folder
|
||||||
config.FolderConfiguration
|
|
||||||
|
|
||||||
fs fs.Filesystem
|
fs fs.Filesystem
|
||||||
versioner versioner.Versioner
|
versioner versioner.Versioner
|
||||||
@@ -98,18 +96,8 @@ type sendReceiveFolder struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func newSendReceiveFolder(model *Model, cfg config.FolderConfiguration, ver versioner.Versioner, fs fs.Filesystem) service {
|
func newSendReceiveFolder(model *Model, cfg config.FolderConfiguration, ver versioner.Versioner, fs fs.Filesystem) service {
|
||||||
ctx, cancel := context.WithCancel(context.Background())
|
|
||||||
|
|
||||||
f := &sendReceiveFolder{
|
f := &sendReceiveFolder{
|
||||||
folder: folder{
|
folder: newFolder(model, cfg),
|
||||||
stateTracker: newStateTracker(cfg.ID),
|
|
||||||
scan: newFolderScanner(cfg),
|
|
||||||
ctx: ctx,
|
|
||||||
cancel: cancel,
|
|
||||||
model: model,
|
|
||||||
initialScanFinished: make(chan struct{}),
|
|
||||||
},
|
|
||||||
FolderConfiguration: cfg,
|
|
||||||
|
|
||||||
fs: fs,
|
fs: fs,
|
||||||
versioner: ver,
|
versioner: ver,
|
||||||
|
|||||||
Reference in New Issue
Block a user