From a8b3ffecab3493f8a6ad91c4317355771a7faab2 Mon Sep 17 00:00:00 2001 From: Paula Date: Wed, 29 Jun 2016 15:35:48 -0300 Subject: [PATCH] return promise on startServer - garantee that server is started before continuing --- lib/serve.js | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/lib/serve.js b/lib/serve.js index 72f9198..f54fb88 100644 --- a/lib/serve.js +++ b/lib/serve.js @@ -490,14 +490,18 @@ Serve.startServer = function startServer(options, app) { // Listen + var q = Q.defer(); app.use(server); try { - runningServer = app.listen(options.port, options.address); + runningServer = app.listen(options.port, options.address,function(){ + logging.logger.info('Running dev server: '.green.bold, options.devServer); + q.resolve() + }); }catch(ex) { - Utils.fail('Failed to start the Ionic server: ', ex.message); + q.reject(Utils.fail('Failed to start the Ionic server: ', ex.message)); } - logging.logger.info('Running dev server: '.green.bold, options.devServer); + return q.promise; }; Serve.start = function start(options) { @@ -990,11 +994,17 @@ Serve.host = function host(address, port) { Serve.stopServer = function stopServer() { - if (runningServer) { + if(!runningServer && !lrServer){ + logging.logger.info('Server not running'); + return; + } + + if(runningServer){ runningServer.close(); + } + if(lrServer){ lrServer.close(); - logging.logger.info('Server closed'); - } else { - logging.logger.info('Server not running'); } + + logging.logger.info('Server closed'); }