MCPcopy Create free account
hub / github.com/MCSManager/MCSManager / exitInstance

Method exitInstance

daemon/src/service/system_instance.ts:262–278  ·  view source on GitHub ↗
(instance: Instance, force = true)

Source from the content-addressed store, hash-verified

260 }
261
262 async exitInstance(instance: Instance, force = true) {
263 if (!this.isGlobalInstance(instance))
264 StorageSubsystem.store("InstanceConfig", instance.instanceUuid, instance.config);
265 if (instance.status() === Instance.STATUS_BUSY) {
266 logger.info(`Killing ${instance.config.nickname} (${instance.instanceUuid})...`);
267 await instance.execPreset("kill");
268 } else if (instance.status() !== Instance.STATUS_STOP) {
269 if (force) {
270 logger.info(`Force stopping ${instance.config.nickname} (${instance.instanceUuid})...`);
271 await instance.execPreset("kill");
272 } else {
273 logger.info(`Stopping ${instance.config.nickname} (${instance.instanceUuid})...`);
274 // BUG: Error: write EPIPE
275 await instance.execPreset("stop");
276 }
277 }
278 }
279
280 exit(force = false) {
281 const promises: Promise<void>[] = [];

Callers 2

exitMethod · 0.95
softExitMethod · 0.95

Calls 5

isGlobalInstanceMethod · 0.95
infoMethod · 0.80
storeMethod · 0.65
statusMethod · 0.65
execPresetMethod · 0.45

Tested by

no test coverage detected