Track client connections and autostop server add-ons when all clients leave

Reviewed By: mweststrate

Differential Revision: D34045584

fbshipit-source-id: 1ad0cfffb9d304f0359c973d76d6956f7e932f72
This commit is contained in:
Andrey Goncharov
2022-02-28 03:50:34 -08:00
committed by Facebook GitHub Bot
parent 9113006851
commit 3b390b74ff
9 changed files with 87 additions and 46 deletions

View File

@@ -101,8 +101,13 @@ export class SandyDevicePluginInstance extends BasePluginInstance {
private startServerAddOn() {
const {serverAddOn, name} = this.definition.details;
if (serverAddOn) {
this.serverAddOnControls.start(name).catch((e) => {
console.warn('Failed to start a server add on', name, e);
this.serverAddOnControls.start(name, this.device.serial).catch((e) => {
console.warn(
'Failed to start a server add on',
name,
this.device.serial,
e,
);
});
}
}
@@ -110,8 +115,13 @@ export class SandyDevicePluginInstance extends BasePluginInstance {
private stopServerAddOn() {
const {serverAddOn, name} = this.definition.details;
if (serverAddOn) {
this.serverAddOnControls.stop(name).catch((e) => {
console.warn('Failed to start a server add on', name, e);
this.serverAddOnControls.stop(name, this.device.serial).catch((e) => {
console.warn(
'Failed to start a server add on',
name,
this.device.serial,
e,
);
});
}
}