Commit c50a620009b9dab493fe409b79f21e7821982b6d

Authored by Adhidarma Hadiwinoto
1 parent 668d5d29ef
Exists in master

Verbose on lock

Showing 1 changed file with 10 additions and 2 deletions Inline Diff

1 'use strict'; 1 'use strict';
2 2
3 const locks = require('locks'); 3 const locks = require('locks');
4 const logger = require('komodo-sdk/logger');
4 5
5 const mutexWaitForOK = locks.createMutex(); 6 const mutexWaitForOK = locks.createMutex();
6 const mutexCommand = locks.createMutex(); 7 const mutexCommand = locks.createMutex();
7 8
8 const mutexSubCommand = locks.createMutex(); 9 const mutexSubCommand = locks.createMutex();
9 10
10 function setLockWaitForOK() { 11 function setLockWaitForOK() {
12 logger.verbose('Entering MUTEX OK');
11 return new Promise((resolve) => { 13 return new Promise((resolve) => {
12 mutexWaitForOK.lock(() => { 14 mutexWaitForOK.lock(() => {
15 logger.verbose('MUTEX OK entered');
13 resolve(true); 16 resolve(true);
14 }); 17 });
15 }); 18 });
16 } 19 }
17 20
18 function releaseLockWaitForOK() { 21 function releaseLockWaitForOK() {
19 try { 22 try {
23 logger.verbose('Leaving MUTEX OK');
20 mutexWaitForOK.unlock(); 24 mutexWaitForOK.unlock();
21 } catch (e) { 25 } catch (e) {
22 // 26 //
23 } 27 }
24 } 28 }
25 29
26 function setLockWaitForCommand() { 30 function setLockWaitForCommand() {
31 logger.verbose('Entering MUTEX Command');
27 return new Promise((resolve) => { 32 return new Promise((resolve) => {
28 mutexCommand.lock(() => { 33 mutexCommand.lock(() => {
34 logger.verbose('MUTEX Command entered');
29 resolve(true); 35 resolve(true);
30 }); 36 });
31 }); 37 });
32 } 38 }
33 39
34 function tryLockWaitForCommand() { 40 function tryLockWaitForCommand() {
35 return mutexCommand.tryLock(); 41 return mutexCommand.tryLock();
36 } 42 }
37 43
38 44
39 function releaseLockWaitForCommand() { 45 function releaseLockWaitForCommand() {
40 try { 46 try {
47 logger.verbose('Leaving MUTEX Command');
41 mutexCommand.unlock(); 48 mutexCommand.unlock();
42 } catch (e) { 49 } catch (e) {
43 // 50 //
44 } 51 }
45 } 52 }
46 53
47 function setLockWaitForSubCommand() { 54 function setLockWaitForSubCommand() {
55 logger.verbose('Entering MUTEX SUBCOMMAND');
48 return new Promise((resolve) => { 56 return new Promise((resolve) => {
49 mutexSubCommand.lock(() => { 57 mutexSubCommand.lock(() => {
58 logger.verbose('MUTEX SUBCOMMAND entered');
50 resolve(true); 59 resolve(true);
51 }); 60 });
52 }); 61 });
53 } 62 }
54 63
55 function releaseLockWaitForSubCommand() { 64 function releaseLockWaitForSubCommand() {
56 // mutexSubCommand.unlock();
57
58 try { 65 try {
66 logger.verbose('Leaving MUTEX SUBCOMMAND');
59 mutexSubCommand.unlock(); 67 mutexSubCommand.unlock();
60 } catch (e) { 68 } catch (e) {
61 // 69 //
62 } 70 }
63 } 71 }
64 72
65 exports.setLockWaitForOK = setLockWaitForOK; 73 exports.setLockWaitForOK = setLockWaitForOK;
66 exports.releaseLockWaitForOK = releaseLockWaitForOK; 74 exports.releaseLockWaitForOK = releaseLockWaitForOK;
67 75
68 exports.setLockWaitForCommand = setLockWaitForCommand; 76 exports.setLockWaitForCommand = setLockWaitForCommand;
69 exports.releaseLockWaitForCommand = releaseLockWaitForCommand; 77 exports.releaseLockWaitForCommand = releaseLockWaitForCommand;
70 exports.tryLockWaitForCommand = tryLockWaitForCommand; 78 exports.tryLockWaitForCommand = tryLockWaitForCommand;
71 79
72 exports.setLockWaitForSubCommand = setLockWaitForSubCommand; 80 exports.setLockWaitForSubCommand = setLockWaitForSubCommand;