improved mc quit handling
This commit is contained in:
parent
f4681da6c5
commit
51e2fde2b0
@ -89,7 +89,7 @@ class ManiaControl implements CallbackListener, CommandListener, TimerListener {
|
|||||||
/*
|
/*
|
||||||
* Private Properties
|
* Private Properties
|
||||||
*/
|
*/
|
||||||
private $shutdownRequested = false;
|
private $requestQuitMessage = null;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Construct ManiaControl
|
* Construct ManiaControl
|
||||||
@ -280,7 +280,7 @@ class ManiaControl implements CallbackListener, CommandListener, TimerListener {
|
|||||||
$this->authenticationManager->sendNotAllowed($player);
|
$this->authenticationManager->sendNotAllowed($player);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$this->quit("ManiaControl Shutdown requested by '{$player->login}'!");
|
$this->requestQuit("ManiaControl Shutdown requested by '{$player->login}'!");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -317,12 +317,12 @@ class ManiaControl implements CallbackListener, CommandListener, TimerListener {
|
|||||||
$this->chat->sendInformation('ManiaControl v' . self::VERSION . ' successfully started!');
|
$this->chat->sendInformation('ManiaControl v' . self::VERSION . ' successfully started!');
|
||||||
|
|
||||||
// Main loop
|
// Main loop
|
||||||
while (!$this->shutdownRequested) {
|
while (!$this->requestQuitMessage) {
|
||||||
$this->loop();
|
$this->loop();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Shutdown
|
// Shutdown
|
||||||
$this->quit();
|
$this->quit($this->requestQuitMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -399,6 +399,15 @@ class ManiaControl implements CallbackListener, CommandListener, TimerListener {
|
|||||||
* Handle Server Stop Callback
|
* Handle Server Stop Callback
|
||||||
*/
|
*/
|
||||||
public function handleServerStopCallback() {
|
public function handleServerStopCallback() {
|
||||||
$this->quit('The Server has been shut down!');
|
$this->requestQuit('The Server has been shut down!');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Request ManiaControl to quit
|
||||||
|
*
|
||||||
|
* @param mixed $message
|
||||||
|
*/
|
||||||
|
public function requestQuit($message = true) {
|
||||||
|
$this->requestQuitMessage = $message;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -233,9 +233,9 @@ class ServerCommands implements CallbackListener, CommandListener, ManialinkPage
|
|||||||
*
|
*
|
||||||
* @param string $login
|
* @param string $login
|
||||||
*/
|
*/
|
||||||
private function shutdownServer($login = '#') {
|
private function shutdownServer($login = '-') {
|
||||||
|
$this->maniaControl->log("Server shutdown requested by '{$login}'!");
|
||||||
$this->maniaControl->client->stopServer();
|
$this->maniaControl->client->stopServer();
|
||||||
$this->maniaControl->quit("Server shutdown requested by '{$login}'");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user