Added dataLock

This commit is contained in:
mrfry 2020-11-18 15:43:28 +01:00
parent 803cb677ba
commit 68b0dd30aa

View file

@ -25,6 +25,7 @@ module.exports = {
const dataFile = './publicDirs/qminingPublic/data.json'
const recDataFile = './stats/recdata'
const dataLockFile = './data/lockData'
const logger = require('../utils/logger.js')
const { searchData, createQuestion } = require('../utils/classes.js')
@ -41,6 +42,7 @@ var currWrites = 0
function ProcessIncomingRequest(recievedData, qdb, dryRun, user) {
return new Promise((resolve, reject) => {
logger.DebugLog('Processing incoming request', 'actions', 1)
if (recievedData === undefined) {
logger.Log('\tRecieved data is undefined!', logger.GetColor('redbg'))
reject(new Error('Recieved data is undefined!'))
@ -63,6 +65,15 @@ function ProcessIncomingRequest(recievedData, qdb, dryRun, user) {
logger.log('Error writing recieved data.')
}
if (utils.FileExists(dataLockFile)) {
logger.Log(
'Data lock file exists, skipping recieved data processing',
logger.GetColor('red')
)
resolve(-1)
return
}
try {
// recievedData: { version: "", id: "", subj: "" quiz: {} }
let data = recievedData