Skip to content
Snippets Groups Projects
Verified Commit 568f9f57 authored by Janne Mareike Koschinski's avatar Janne Mareike Koschinski
Browse files

feat: allow choosing sync algorithm via config

parent b8c138e8
No related branches found
No related tags found
No related merge requests found
Pipeline #2769 passed
......@@ -9,15 +9,28 @@ let errorMiddleware = require('./util/error-middleware');
let config = require('./load-config');
let { getAccountDb } = require('./account-db');
let simpleSync = require('./sync-simple');
let fullSync = require('./sync-full');
let actual = require('@actual-app/api');
let SyncPb = actual.internal.SyncProtoBuf;
const app = express();
app.use(errorMiddleware);
function getSyncAlgorithm() {
switch (config.sync) {
case 'simple':
console.info("Using simple sync algorithm")
return require('./sync-simple')
case 'full':
console.info("Using full sync algorithm")
return require('./sync-full')
default:
console.error("Unknown sync algorithm: " + config.sync)
process.abort()
}
}
const syncAlgorithm = getSyncAlgorithm()
async function init() {
let fileDir = join(process.env.ACTUAL_USER_FILES || config.userFiles);
......@@ -132,7 +145,7 @@ app.post('/sync', async (req, res) => {
// let simpleSync = require('./sync-simple');
// let {trie, newMessages } = simpleSync.sync(messages, since, file_id);
let { trie, newMessages } = await fullSync.sync(messages, since, file_id);
let { trie, newMessages } = await getSyncAlgorithm.sync(messages, since, file_id);
// encode it back...
let responsePb = new SyncPb.SyncResponse();
......
......@@ -11,7 +11,8 @@ try {
port: 5006,
hostname: '0.0.0.0',
serverFiles: join(root, 'server-files'),
userFiles: join(root, 'user-files')
userFiles: join(root, 'user-files'),
sync: 'full'
};
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment