Merge pull request #756 from embark-framework/feature/console-ipc-server-client

Console can be a client or server ipc
This commit is contained in:
Iuri Matias 2018-08-31 07:58:55 -04:00 committed by GitHub
commit a1c2d7e77a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 5 deletions

View File

@ -79,7 +79,8 @@ class EmbarkController {
context: self.context,
useDashboard: options.useDashboard,
webServerConfig: webServerConfig,
webpackConfigName: options.webpackConfigName
webpackConfigName: options.webpackConfigName,
ipcRole: 'server'
});
engine.init();
@ -247,7 +248,6 @@ class EmbarkController {
logFile: options.logFile,
logLevel: options.logLevel,
context: this.context,
ipcRole: 'client',
webpackConfigName: options.webpackConfigName
});
engine.init();

View File

@ -38,10 +38,23 @@ class Engine {
utils.interceptLogs(console, this.logger);
}
this.ipc = new IPC({logger: this.logger, ipcRole: this.ipcRole});
if (this.ipc.isServer()) {
this.ipc.serve();
if (this.ipcRole) {
this.ipc = new IPC({logger: this.logger, ipcRole: this.ipcRole});
if(this.ipc.isServer()) {
this.ipc.serve();
}
return;
}
this.ipc = new IPC({logger: this.logger, ipcRole: 'client'});
this.ipc.connect((err) => {
if(err) {
this.ipc = new IPC({logger: this.logger, ipcRole: 'server'});
this.ipc.serve();
}
});
}
registerModule(moduleName, options) {