(store, callback, ...args)
| 104 | } |
| 105 | |
| 106 | run(store, callback, ...args) { |
| 107 | // Avoid creation of an AsyncResource if store is already active |
| 108 | if (ObjectIs(store, this.getStore())) { |
| 109 | return ReflectApply(callback, null, args); |
| 110 | } |
| 111 | |
| 112 | this._enable(); |
| 113 | |
| 114 | const resource = executionAsyncResource(); |
| 115 | const oldStore = resource[this.kResourceStore]; |
| 116 | |
| 117 | resource[this.kResourceStore] = store; |
| 118 | |
| 119 | try { |
| 120 | return ReflectApply(callback, null, args); |
| 121 | } finally { |
| 122 | resource[this.kResourceStore] = oldStore; |
| 123 | } |
| 124 | } |
| 125 | |
| 126 | exit(callback, ...args) { |
| 127 | if (!this.enabled) { |
no test coverage detected