mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 10:26:08 +01:00 
			
		
		
		
	cleaned up unused jobs implementation
This commit is contained in:
		| @@ -34,51 +34,6 @@ async function execute(ctx, script, paramsStr) { | ||||
|     return await (function() { return eval(`const api = this;\r\n(${script})(${paramsStr})`); }.call(ctx)); | ||||
| } | ||||
|  | ||||
| const timeouts = {}; | ||||
| const intervals = {}; | ||||
|  | ||||
| function clearExistingJob(name) { | ||||
|     if (timeouts[name]) { | ||||
|         clearTimeout(timeouts[name]); | ||||
|  | ||||
|         delete timeouts[name]; | ||||
|     } | ||||
|  | ||||
|     if (intervals[name]) { | ||||
|         clearInterval(intervals[name]); | ||||
|  | ||||
|         delete intervals[name]; | ||||
|     } | ||||
| } | ||||
|  | ||||
| async function executeJob(script, params, manualTransactionHandling) { | ||||
|     const ctx = new ScriptContext(); | ||||
|     const paramsStr = getParams(params); | ||||
|  | ||||
|     if (manualTransactionHandling) { | ||||
|         return await execute(ctx, script, paramsStr); | ||||
|     } | ||||
|     else { | ||||
|         return await sql.doInTransaction(async () => execute(ctx, script, paramsStr)); | ||||
|     } | ||||
| } | ||||
|  | ||||
| async function setJob(opts) { | ||||
|     const { name, runEveryMs, initialRunAfterMs } = opts; | ||||
|  | ||||
|     clearExistingJob(name); | ||||
|  | ||||
|     const jobFunc = () => executeJob(opts.job, opts.params, opts.manualTransactionHandling); | ||||
|  | ||||
|     if (runEveryMs && runEveryMs > 0) { | ||||
|         intervals[name] = setInterval(jobFunc, runEveryMs); | ||||
|     } | ||||
|  | ||||
|     if (initialRunAfterMs && initialRunAfterMs > 0) { | ||||
|         timeouts[name] = setTimeout(jobFunc, initialRunAfterMs); | ||||
|     } | ||||
| } | ||||
|  | ||||
| function getParams(params) { | ||||
|     if (!params) { | ||||
|         return params; | ||||
| @@ -152,7 +107,6 @@ ${note.content} | ||||
| module.exports = { | ||||
|     executeNote, | ||||
|     executeScript, | ||||
|     setJob, | ||||
|     getScriptBundle, | ||||
|     getRenderScript | ||||
| }; | ||||
		Reference in New Issue
	
	Block a user