2026-06-16 14:03:36 +03:00
|
|
|
<?php declare(strict_types=1);
|
|
|
|
|
|
|
|
|
|
namespace Nechaev\Reports\Core;
|
|
|
|
|
|
2026-06-16 15:50:22 +03:00
|
|
|
use Nechaev\Reports\Features\Jira\JiraApiClient;
|
|
|
|
|
|
2026-06-16 14:03:36 +03:00
|
|
|
/**
|
|
|
|
|
* Class App
|
|
|
|
|
* @package Nechaev\Reports\Core
|
|
|
|
|
*/
|
|
|
|
|
final class App {
|
|
|
|
|
private static Config|null $config = null;
|
|
|
|
|
public static function getConfig() {
|
|
|
|
|
if (self::$config === null) {
|
|
|
|
|
self::$config = new Config();
|
|
|
|
|
}
|
|
|
|
|
return self::$config;
|
|
|
|
|
}
|
2026-06-16 15:50:22 +03:00
|
|
|
|
|
|
|
|
private static JiraApiClient|null $jiraApiClient = null;
|
|
|
|
|
|
|
|
|
|
public static function getJiraApiClient(): JiraApiClient {
|
|
|
|
|
if (self::$jiraApiClient === null) {
|
|
|
|
|
self::$jiraApiClient = new JiraApiClient(self::getConfig()->jira_url, self::getConfig()->jira_token);
|
|
|
|
|
}
|
|
|
|
|
return self::$jiraApiClient;
|
|
|
|
|
}
|
2026-06-16 14:03:36 +03:00
|
|
|
}
|