35 lines
		
	
	
		
			844 B
		
	
	
	
		
			PHP
		
	
			
		
		
	
	
			35 lines
		
	
	
		
			844 B
		
	
	
	
		
			PHP
		
	
<?php
 | 
						|
 | 
						|
class Server {
 | 
						|
    private $db;
 | 
						|
 | 
						|
    public function __construct($database) {
 | 
						|
        $this->db = $database->getConnection();
 | 
						|
    }
 | 
						|
 | 
						|
    // get Jilo Server status
 | 
						|
    public function getServerStatus($host = '127.0.0.1', $port = 8080, $endpoint = '/health') {
 | 
						|
        $url = "http://$host:$port$endpoint";
 | 
						|
        $options = [
 | 
						|
            'http' => [
 | 
						|
                'method'    => 'GET',
 | 
						|
                'timeout'   => 3,
 | 
						|
            ],
 | 
						|
        ];
 | 
						|
        $context = stream_context_create($options);
 | 
						|
        $response = @file_get_contents($url, false, $context);
 | 
						|
 | 
						|
        // We check the response if it's 200 OK
 | 
						|
        if ($response !== false && isset($http_response_header) && strpos($http_response_header[0], '200 OK') !== false) {
 | 
						|
            return true;
 | 
						|
        }
 | 
						|
 | 
						|
        // If it's not 200 OK
 | 
						|
        return false;
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
?>
 |