vscode-xml/src/services/ChildProcess.ts
Josh Johnson bc4e7823bc Fix #21
2016-01-18 15:43:10 -05:00

32 lines
No EOL
871 B
TypeScript

'use strict';
let child_process = require('child_process');
export class ChildProcess {
static async spawnAsync(executable: string, args: string[]): Promise<void> {
return new Promise<void>((resolve, reject) => {
let output: string = '';
let handle = child_process.spawn(executable, args);
handle.stdout.on('data', (data: string) => {
output += data;
});
handle.stderr.on('data', (data: string) => {
output += data;
});
handle.on('close', (code: string) => {
if (code == '0') {
resolve();
}
else {
reject({ code: code, message: output });
}
});
});
}
}