24 lines
702 B
TypeScript
24 lines
702 B
TypeScript
import * as plugins from './plugins.js'
|
|
import { Smartshell, type IExecResultStreaming } from './classes.smartshell.js';
|
|
|
|
export class SmartExecution {
|
|
public smartshell: Smartshell;
|
|
public currentStreamingExecution: IExecResultStreaming;
|
|
public commandString: string;
|
|
|
|
constructor(commandStringArg: string) {
|
|
this.commandString = commandStringArg;
|
|
}
|
|
|
|
public async restart() {
|
|
if (!this.smartshell) {
|
|
this.smartshell = new Smartshell({
|
|
executor: 'bash',
|
|
});
|
|
}
|
|
if (this.currentStreamingExecution) {
|
|
await this.currentStreamingExecution.kill();
|
|
}
|
|
this.currentStreamingExecution = await this.smartshell.execStreaming(this.commandString);
|
|
}
|
|
} |