mirror of
https://github.com/Combodo/iTop.git
synced 2026-02-13 07:24:13 +01:00
N°4621 Fix naming inconsistencies in sources/*
This commit is contained in:
91
sources/Application/Status/Status.php
Normal file
91
sources/Application/Status/Status.php
Normal file
@@ -0,0 +1,91 @@
|
||||
<?php
|
||||
|
||||
namespace Combodo\iTop\Application\Status;
|
||||
|
||||
use Config;
|
||||
use Exception;
|
||||
use MetaModel;
|
||||
|
||||
define('STATUS_ERROR', 'ERROR');
|
||||
define('STATUS_RUNNING', 'RUNNING');
|
||||
|
||||
class Status
|
||||
{
|
||||
|
||||
/**
|
||||
* @throws \CoreException
|
||||
* @throws \DictExceptionUnknownLanguage
|
||||
* @throws \MySQLException
|
||||
*/
|
||||
public function __construct(Config $oConfig = null)
|
||||
{
|
||||
$this->StatusStartup($oConfig);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get approot.inc.php
|
||||
* Move to a function for allowing a better testing
|
||||
*
|
||||
* @param string $sAppRootFilename
|
||||
*
|
||||
* @throws \Exception
|
||||
*/
|
||||
private function StatusGetAppRoot($sAppRootFilename = 'approot.inc.php')
|
||||
{
|
||||
$sAppRootFile = __DIR__.'/../../../'.$sAppRootFilename;
|
||||
|
||||
/*
|
||||
* Check that the approot file exists and has the appropriate access rights
|
||||
*/
|
||||
if (!file_exists($sAppRootFile) || !is_readable($sAppRootFile)) {
|
||||
throw new Exception($sAppRootFilename.' is not readable');
|
||||
}
|
||||
@require_once($sAppRootFile);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check iTop's config File existence and readability
|
||||
* Move to a function for allowing a better testing
|
||||
*
|
||||
* @param string $sConfigFilename
|
||||
*
|
||||
* @throws \Exception
|
||||
*/
|
||||
private function StatusCheckConfigFile($sConfigFilename = 'config-itop.php')
|
||||
{
|
||||
$this->StatusGetAppRoot();
|
||||
|
||||
$sConfigFile = APPCONF.ITOP_DEFAULT_ENV.'/'.$sConfigFilename;
|
||||
|
||||
/**
|
||||
* Check that the configuration file exists and has the appropriate access rights
|
||||
*/
|
||||
if (!file_exists($sConfigFile) || !is_readable($sConfigFile)) {
|
||||
throw new Exception($sConfigFilename.' is not readable');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Start iTop's application for checking with its internal basic test every it's alright (DB connection, ...)
|
||||
* Move to a function for allowing a better testing
|
||||
*
|
||||
* @param \Config|null $oConfig
|
||||
*
|
||||
* @throws \CoreException
|
||||
* @throws \DictExceptionUnknownLanguage
|
||||
* @throws \MySQLException
|
||||
*/
|
||||
private function StatusStartup(Config $oConfig = null)
|
||||
{
|
||||
$this->StatusCheckConfigFile();
|
||||
|
||||
require_once(APPROOT.'/core/cmdbobject.class.inc.php');
|
||||
require_once(APPROOT.'/application/utils.inc.php');
|
||||
require_once(APPROOT.'/core/contexttag.class.inc.php');
|
||||
|
||||
$soConfigFile = (null === $oConfig) ? ITOP_DEFAULT_CONFIG_FILE : $oConfig;
|
||||
|
||||
//Check if application could be started
|
||||
MetaModel::Startup($soConfigFile, true);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user