2016-03-24 09:09:13 +01:00
|
|
|
// Copyright (C) 2016 The Syncthing Authors.
|
|
|
|
//
|
|
|
|
// This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
// License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
2017-02-09 07:52:18 +01:00
|
|
|
// You can obtain one at https://mozilla.org/MPL/2.0/.
|
2016-03-24 09:09:13 +01:00
|
|
|
|
2019-03-26 20:53:58 +01:00
|
|
|
package api
|
2016-03-24 09:09:13 +01:00
|
|
|
|
|
|
|
import (
|
2019-02-26 09:09:25 +01:00
|
|
|
"net"
|
2016-03-24 09:09:13 +01:00
|
|
|
"time"
|
|
|
|
|
2017-11-21 08:25:38 +01:00
|
|
|
"github.com/syncthing/syncthing/lib/connections"
|
2016-03-24 09:09:13 +01:00
|
|
|
"github.com/syncthing/syncthing/lib/db"
|
2016-04-15 12:59:41 +02:00
|
|
|
"github.com/syncthing/syncthing/lib/model"
|
2016-03-24 09:09:13 +01:00
|
|
|
"github.com/syncthing/syncthing/lib/protocol"
|
|
|
|
"github.com/syncthing/syncthing/lib/stats"
|
2020-06-23 10:47:15 +02:00
|
|
|
"github.com/syncthing/syncthing/lib/ur/contract"
|
2018-01-01 15:39:23 +01:00
|
|
|
"github.com/syncthing/syncthing/lib/versioner"
|
2016-03-24 09:09:13 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
type mockedModel struct{}
|
|
|
|
|
|
|
|
func (m *mockedModel) GlobalDirectoryTree(folder, prefix string, levels int, dirsonly bool) map[string]interface{} {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2016-08-12 08:41:43 +02:00
|
|
|
func (m *mockedModel) Completion(device protocol.DeviceID, folder string) model.FolderCompletion {
|
|
|
|
return model.FolderCompletion{}
|
2016-03-24 09:09:13 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) Override(folder string) {}
|
|
|
|
|
2018-07-12 10:15:57 +02:00
|
|
|
func (m *mockedModel) Revert(folder string) {}
|
|
|
|
|
2017-12-15 21:01:56 +01:00
|
|
|
func (m *mockedModel) NeedFolderFiles(folder string, page, perpage int) ([]db.FileInfoTruncated, []db.FileInfoTruncated, []db.FileInfoTruncated) {
|
|
|
|
return nil, nil, nil
|
|
|
|
}
|
|
|
|
|
2020-01-21 18:23:08 +01:00
|
|
|
func (m *mockedModel) FolderProgressBytesCompleted(_ string) int64 {
|
|
|
|
return 0
|
2016-03-24 09:09:13 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) ConnectionStats() map[string]interface{} {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2019-11-30 13:03:24 +01:00
|
|
|
func (m *mockedModel) DeviceStatistics() (map[string]stats.DeviceStatistics, error) {
|
|
|
|
return nil, nil
|
2016-03-24 09:09:13 +01:00
|
|
|
}
|
|
|
|
|
2019-11-30 13:03:24 +01:00
|
|
|
func (m *mockedModel) FolderStatistics() (map[string]stats.FolderStatistics, error) {
|
|
|
|
return nil, nil
|
2016-03-24 09:09:13 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) CurrentFolderFile(folder string, file string) (protocol.FileInfo, bool) {
|
|
|
|
return protocol.FileInfo{}, false
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) CurrentGlobalFile(folder string, file string) (protocol.FileInfo, bool) {
|
|
|
|
return protocol.FileInfo{}, false
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) ResetFolder(folder string) {
|
|
|
|
}
|
|
|
|
|
2018-04-16 20:08:50 +02:00
|
|
|
func (m *mockedModel) Availability(folder string, file protocol.FileInfo, block protocol.BlockInfo) []model.Availability {
|
2016-03-24 09:09:13 +01:00
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) GetIgnores(folder string) ([]string, []string, error) {
|
|
|
|
return nil, nil, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) SetIgnores(folder string, content []string) error {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2018-01-01 15:39:23 +01:00
|
|
|
func (m *mockedModel) GetFolderVersions(folder string) (map[string][]versioner.FileVersion, error) {
|
|
|
|
return nil, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) RestoreFolderVersions(folder string, versions map[string]time.Time) (map[string]string, error) {
|
|
|
|
return nil, nil
|
|
|
|
}
|
|
|
|
|
2016-03-24 09:09:13 +01:00
|
|
|
func (m *mockedModel) PauseDevice(device protocol.DeviceID) {
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) ResumeDevice(device protocol.DeviceID) {}
|
|
|
|
|
|
|
|
func (m *mockedModel) DelayScan(folder string, next time.Duration) {}
|
|
|
|
|
|
|
|
func (m *mockedModel) ScanFolder(folder string) error {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) ScanFolders() map[string]error {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2016-06-29 08:37:34 +02:00
|
|
|
func (m *mockedModel) ScanFolderSubdirs(folder string, subs []string) error {
|
2016-03-24 09:09:13 +01:00
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) BringToFront(folder, file string) {}
|
|
|
|
|
2017-11-21 08:25:38 +01:00
|
|
|
func (m *mockedModel) Connection(deviceID protocol.DeviceID) (connections.Connection, bool) {
|
|
|
|
return nil, false
|
2016-03-24 09:09:13 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) State(folder string) (string, time.Time, error) {
|
|
|
|
return "", time.Time{}, nil
|
|
|
|
}
|
2017-10-12 08:16:46 +02:00
|
|
|
|
2020-06-23 10:47:15 +02:00
|
|
|
func (m *mockedModel) UsageReportingStats(r *contract.Report, version int, preview bool) {
|
2017-10-12 08:16:46 +02:00
|
|
|
}
|
2018-01-14 18:01:06 +01:00
|
|
|
|
2018-11-07 11:04:41 +01:00
|
|
|
func (m *mockedModel) FolderErrors(folder string) ([]model.FileError, error) {
|
2018-01-14 18:01:06 +01:00
|
|
|
return nil, nil
|
|
|
|
}
|
2018-02-04 22:46:24 +01:00
|
|
|
|
|
|
|
func (m *mockedModel) WatchError(folder string) error {
|
|
|
|
return nil
|
|
|
|
}
|
2018-12-11 09:59:04 +01:00
|
|
|
|
2019-12-04 10:46:55 +01:00
|
|
|
func (m *mockedModel) Serve() {}
|
|
|
|
func (m *mockedModel) Stop() {}
|
|
|
|
|
|
|
|
func (m *mockedModel) Index(deviceID protocol.DeviceID, folder string, files []protocol.FileInfo) error {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) IndexUpdate(deviceID protocol.DeviceID, folder string, files []protocol.FileInfo) error {
|
|
|
|
return nil
|
2019-02-26 09:09:25 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) Request(deviceID protocol.DeviceID, folder, name string, size int32, offset int64, hash []byte, weakHash uint32, fromTemporary bool) (protocol.RequestResponse, error) {
|
|
|
|
return nil, nil
|
|
|
|
}
|
|
|
|
|
2019-12-04 10:46:55 +01:00
|
|
|
func (m *mockedModel) ClusterConfig(deviceID protocol.DeviceID, config protocol.ClusterConfig) error {
|
|
|
|
return nil
|
|
|
|
}
|
2019-02-26 09:09:25 +01:00
|
|
|
|
|
|
|
func (m *mockedModel) Closed(conn protocol.Connection, err error) {}
|
|
|
|
|
2019-12-04 10:46:55 +01:00
|
|
|
func (m *mockedModel) DownloadProgress(deviceID protocol.DeviceID, folder string, updates []protocol.FileDownloadProgressUpdate) error {
|
|
|
|
return nil
|
2019-02-26 09:09:25 +01:00
|
|
|
}
|
|
|
|
|
2020-09-29 13:17:38 +02:00
|
|
|
func (m *mockedModel) AddConnection(conn connections.Connection, hello protocol.Hello) {}
|
2019-02-26 09:09:25 +01:00
|
|
|
|
2020-09-29 13:17:38 +02:00
|
|
|
func (m *mockedModel) OnHello(protocol.DeviceID, net.Addr, protocol.Hello) error {
|
2019-02-26 09:09:25 +01:00
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) GetHello(protocol.DeviceID) protocol.HelloIntf {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedModel) StartDeadlockDetector(timeout time.Duration) {}
|
2020-01-21 18:23:08 +01:00
|
|
|
|
|
|
|
func (m *mockedModel) DBSnapshot(_ string) (*db.Snapshot, error) {
|
|
|
|
return nil, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
type mockedFolderSummaryService struct{}
|
|
|
|
|
|
|
|
func (m *mockedFolderSummaryService) Serve() {}
|
|
|
|
|
|
|
|
func (m *mockedFolderSummaryService) Stop() {}
|
|
|
|
|
|
|
|
func (m *mockedFolderSummaryService) Summary(folder string) (map[string]interface{}, error) {
|
|
|
|
return map[string]interface{}{"mocked": true}, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
func (m *mockedFolderSummaryService) OnEventRequest() {}
|