1
0
mirror of https://github.com/laurent22/joplin.git synced 2025-04-20 11:28:40 +02:00
joplin/ReactNativeClient/lib/SyncTargetFilesystem.js

41 lines
1014 B
JavaScript
Raw Normal View History

2018-03-09 17:49:35 +00:00
const BaseSyncTarget = require("lib/BaseSyncTarget.js");
const { _ } = require("lib/locale.js");
const Setting = require("lib/models/Setting.js");
const { FileApi } = require("lib/file-api.js");
const { FileApiDriverLocal } = require("lib/file-api-driver-local.js");
const { Synchronizer } = require("lib/synchronizer.js");
2017-11-24 19:09:15 +00:00
class SyncTargetFilesystem extends BaseSyncTarget {
static id() {
return 2;
}
static targetName() {
2018-03-09 17:49:35 +00:00
return "filesystem";
}
static label() {
2018-03-09 17:49:35 +00:00
return _("File system");
}
isAuthenticated() {
return true;
}
async initFileApi() {
2018-03-09 17:49:35 +00:00
const syncPath = Setting.value("sync.2.path");
const driver = new FileApiDriverLocal();
const fileApi = new FileApi(syncPath, driver);
fileApi.setLogger(this.logger());
2017-11-24 19:09:15 +00:00
fileApi.setSyncTargetId(SyncTargetFilesystem.id());
await driver.mkdir(syncPath);
return fileApi;
}
async initSynchronizer() {
2018-03-09 17:49:35 +00:00
return new Synchronizer(this.db(), await this.fileApi(), Setting.value("appType"));
}
}
2018-03-09 17:49:35 +00:00
module.exports = SyncTargetFilesystem;