1313 * See the License for the specific language governing permissions and
1414 * limitations under the License.
1515 **/
16- "use strict"
16+
1717/**
1818 * @namespace RED.nodes
1919 */
2020
2121var runtime ;
2222
23+ function putNode ( node , enabled ) {
24+ var info ;
25+ var promise ;
26+ if ( ! node . err && node . enabled === enabled ) {
27+ promise = Promise . resolve ( node ) ;
28+ } else {
29+ if ( enabled ) {
30+ promise = runtime . nodes . enableNode ( node . id ) ;
31+ } else {
32+ promise = runtime . nodes . disableNode ( node . id ) ;
33+ }
34+ }
35+ return promise ;
36+ }
37+
2338var api = module . exports = {
2439 init : function ( _runtime ) {
2540 runtime = _runtime ;
@@ -37,7 +52,7 @@ var api = module.exports = {
3752 getNodeInfo : function ( opts ) {
3853 return new Promise ( function ( resolve , reject ) {
3954 var id = opts . id ;
40- var result = redNodes . getNodeInfo ( id ) ;
55+ var result = runtime . nodes . getNodeInfo ( id ) ;
4156 if ( result ) {
4257 runtime . log . audit ( { event : "nodes.info.get" , id :id } ) ;
4358 delete result . loaded ;
@@ -117,13 +132,12 @@ var api = module.exports = {
117132 */
118133 getModuleInfo : function ( opts ) {
119134 return new Promise ( function ( resolve , reject ) {
120- var module = opts . module ;
121- var result = redNodes . getModuleInfo ( module ) ;
135+ var result = runtime . nodes . getModuleInfo ( opts . module ) ;
122136 if ( result ) {
123- runtime . log . audit ( { event : "nodes.module.get" , id :id } ) ;
137+ runtime . log . audit ( { event : "nodes.module.get" , id :opts . module } ) ;
124138 return resolve ( result ) ;
125139 } else {
126- runtime . log . audit ( { event : "nodes.module.get" , id :id , error :"not_found" } ) ;
140+ runtime . log . audit ( { event : "nodes.module.get" , id :opts . module , error :"not_found" } ) ;
127141 var err = new Error ( ) ;
128142 err . code = "not_found" ;
129143 err . status = 404 ;
@@ -145,7 +159,7 @@ var api = module.exports = {
145159 return new Promise ( function ( resolve , reject ) {
146160 if ( ! runtime . settings . available ( ) ) {
147161 runtime . log . audit ( { event : "nodes.install" , error :"settings_unavailable" } ) ;
148- let err = new Error ( "Settings unavailable" ) ;
162+ var err = new Error ( "Settings unavailable" ) ;
149163 err . code = "settings_unavailable" ;
150164 err . status = 400 ;
151165 return reject ( err ) ;
@@ -155,14 +169,14 @@ var api = module.exports = {
155169 if ( existingModule ) {
156170 if ( ! opts . version || existingModule . version === opts . version ) {
157171 runtime . log . audit ( { event : "nodes.install" , module :opts . module , version :opts . version , error :"module_already_loaded" } ) ;
158- let err = new Error ( "Module already loaded" ) ;
172+ var err = new Error ( "Module already loaded" ) ;
159173 err . code = "module_already_loaded" ;
160174 err . status = 400 ;
161175 return reject ( err ) ;
162176 }
163- if ( ! module . local ) {
177+ if ( ! existingModule . local ) {
164178 runtime . log . audit ( { event : "nodes.install" , module :opts . module , version :opts . version , error :"module_not_local" } ) ;
165- let err = new Error ( "Module not locally installed" ) ;
179+ var err = new Error ( "Module not locally installed" ) ;
166180 err . code = "module_not_local" ;
167181 err . status = 400 ;
168182 return reject ( err ) ;
@@ -187,7 +201,7 @@ var api = module.exports = {
187201 } )
188202 } else {
189203 runtime . log . audit ( { event : "nodes.install" , module :opts . module , error :"invalid_request" } ) ;
190- let err = new Error ( "Invalid request" ) ;
204+ var err = new Error ( "Invalid request" ) ;
191205 err . code = "invalid_request" ;
192206 err . status = 400 ;
193207 return reject ( err ) ;
@@ -207,7 +221,7 @@ var api = module.exports = {
207221 return new Promise ( function ( resolve , reject ) {
208222 if ( ! runtime . settings . available ( ) ) {
209223 runtime . log . audit ( { event : "nodes.install" , error :"settings_unavailable" } ) ;
210- let err = new Error ( "Settings unavailable" ) ;
224+ var err = new Error ( "Settings unavailable" ) ;
211225 err . code = "settings_unavailable" ;
212226 err . status = 400 ;
213227 return reject ( err ) ;
@@ -229,10 +243,10 @@ var api = module.exports = {
229243 runtime . log . audit ( { event : "nodes.remove" , module :opts . module , error :err . code || "unexpected_error" , message :err . toString ( ) } ) ;
230244 return reject ( err ) ;
231245 } )
232- } catch ( err ) {
233- runtime . log . audit ( { event : "nodes.remove" , module :opts . module , error :err . code || "unexpected_error" , message :err . toString ( ) } ) ;
234- err . status = 400 ;
235- return reject ( err ) ;
246+ } catch ( error ) {
247+ runtime . log . audit ( { event : "nodes.remove" , module :opts . module , error :error . code || "unexpected_error" , message :error . toString ( ) } ) ;
248+ error . status = 400 ;
249+ return reject ( error ) ;
236250 }
237251 } ) ;
238252 } ,
@@ -247,16 +261,16 @@ var api = module.exports = {
247261 * @memberof RED.nodes
248262 */
249263 setModuleState : function ( opts ) {
264+ var mod = opts . module ;
250265 return new Promise ( function ( resolve , reject ) {
251266 if ( ! runtime . settings . available ( ) ) {
252267 runtime . log . audit ( { event : "nodes.module.set" , error :"settings_unavailable" } ) ;
253- let err = new Error ( "Settings unavailable" ) ;
268+ var err = new Error ( "Settings unavailable" ) ;
254269 err . code = "settings_unavailable" ;
255270 err . status = 400 ;
256271 return reject ( err ) ;
257272 }
258273 try {
259- var mod = opts . module ;
260274 var module = runtime . nodes . getModuleInfo ( mod ) ;
261275 if ( ! module ) {
262276 runtime . log . audit ( { event : "nodes.module.set" , module :mod , error :"not_found" } ) ;
@@ -277,10 +291,10 @@ var api = module.exports = {
277291 err . status = 400 ;
278292 return reject ( err ) ;
279293 } ) ;
280- } catch ( err ) {
281- runtime . log . audit ( { event : "nodes.module.set" , module :mod , enabled :opts . enabled , error :err . code || "unexpected_error" , message :err . toString ( ) } ) ;
282- err . status = 400 ;
283- return reject ( err ) ;
294+ } catch ( error ) {
295+ runtime . log . audit ( { event : "nodes.module.set" , module :mod , enabled :opts . enabled , error :error . code || "unexpected_error" , message :error . toString ( ) } ) ;
296+ error . status = 400 ;
297+ return reject ( error ) ;
284298 }
285299 } ) ;
286300 } ,
@@ -298,7 +312,7 @@ var api = module.exports = {
298312 return new Promise ( function ( resolve , reject ) {
299313 if ( ! runtime . settings . available ( ) ) {
300314 runtime . log . audit ( { event : "nodes.info.set" , error :"settings_unavailable" } ) ;
301- let err = new Error ( "Settings unavailable" ) ;
315+ var err = new Error ( "Settings unavailable" ) ;
302316 err . code = "settings_unavailable" ;
303317 err . status = 400 ;
304318 return reject ( err ) ;
@@ -325,9 +339,10 @@ var api = module.exports = {
325339 return reject ( err ) ;
326340 } ) ;
327341 }
328- } catch ( err ) {
329- runtime . log . audit ( { event : "nodes.info.set" , id :id , enabled :enabled , error :err . code || "unexpected_error" , message :err . toString ( ) } ) ;
330- res . status ( 400 ) . json ( { error :err . code || "unexpected_error" , message :err . toString ( ) } ) ;
342+ } catch ( error ) {
343+ runtime . log . audit ( { event : "nodes.info.set" , id :id , enabled :enabled , error :error . code || "unexpected_error" , message :error . toString ( ) } ) ;
344+ error . status = 400 ;
345+ return reject ( error ) ;
331346 }
332347 } ) ;
333348 } ,
0 commit comments