From b605f875bcf3f613f29af1559fbf447a121d160a Mon Sep 17 00:00:00 2001 From: mmcw-dev Date: Wed, 20 Dec 2017 21:32:07 -0500 Subject: [PATCH] Declare intval object variables before init function --- lib/intval/index.js | 46 +++++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/lib/intval/index.js b/lib/intval/index.js index df40ad7..85a5972 100644 --- a/lib/intval/index.js +++ b/lib/intval/index.js @@ -38,6 +38,19 @@ const PINS = { /** Object representing the intval3 features */ const intval = {} +intval._frame = { + open : 250, //delay before pausing frame in open state + openBwd : 400, + closed : 100, //time that frame actually remains closed for + expected : 630 //expected length of frame, in ms +} +intval._release = { + min : 20, + seq : 1000 +} +intval._microDelay = 10 // delay after stop signal before stopping motors +intval._pin = {} + intval.init = function () { if (!fs.existsSync('./state')) fs.mkdirSync('./state') storage.init({ @@ -51,37 +64,26 @@ intval.init = function () { ttl: false, // ttl* [NEW], can be true for 24h default or a number in MILLISECONDS expiredInterval: 2 * 60 * 1000, // [NEW] every 2 minutes the process will clean-up the expired cache forgiveParseErrors: false // [NEW] - }).then((res) => { - //console.dir(res) - storage.getItem('_state', 'test').then(intval._setState).catch((err) => { - intval._setState(undefined) - log.error('init', err) - }) - }).catch((err) => { + }).then(intval._restoreState).catch((err) => { log.error('init', err) fs.rmdirSync('./state') log.warn('Restarting') - process.exit() + return process.exit(1) }) - intval._frame = { - open : 250, //delay before pausing frame in open state - openBwd : 400, - closed : 100, //time that frame actually remains closed for - expected : 630 //expected length of frame, in ms - } - intval._release = { - min : 20, - seq : 1000 - } - intval._microDelay = 10 // delay after stop signal before stopping motors - intval._pin = {} - - intval._declarePins() process.on('SIGINT', intval._undeclarePins) process.on('uncaughtException', intval._undeclarePins) } +intval._restoreState = function (res) { + //console.dir(res) + storage.getItem('_state', 'test').then(intval._setState).catch((err) => { + intval._setState(undefined) + log.error('init', err) + }) + intval._declarePins() +} + intval._setState = function (data) { if (typeof data !== 'undefined') { intval._state = data