chore(psr4): phase 3 — namespace Domain layer

Namespace all of Domain into XcVm\Domain\<Subdir> (33 classes across Bouquet,
Device, Epg, Line, Security, Server, Stream, User, Vod).

- Add namespace to every Domain class; add use to referrers across src/ and
  tests/; convert the leading-backslash refs qualified in earlier Core commits
  (\UserRepository, \ServerRepository, \BouquetService, \CategoryService,
  \ConnectionTracker, \BlocklistService, ...) to their FQCNs.
- Qualify still-global / built-in deps inside Domain with leading backslash
  (\RedisManager, \TMDB, \WatchService, \FFprobeRunner, \ProcessChecker,
  \Exception, \DateTime, \PDO, ...) — Infrastructure/Streaming/module classes
  migrate later.
- BruteforceGuard: string guards class_exists('ServerRepository'/'BlocklistService')
  → ::class FQCN; drop the now-always-true method_exists check.
- phpstan-baseline.neon regenerated (292→291).

Verified: php -l clean; PHPStan no errors; PHPUnit 295/295; leading-backslash
re-sweep across Domain classes is clean.
This commit is contained in:
Divarion-D
2026-06-25 18:39:28 +03:00
parent da291e20f8
commit 42d9ca8ea0
312 changed files with 825 additions and 162 deletions
+6 -2
View File
@@ -1,5 +1,9 @@
<?php
namespace XcVm\Domain\User;
use XcVm\Domain\Security\BlocklistService;
use XcVm\Domain\Bouquet\BouquetService;
use XcVm\Core\Util\GeoIP;
use XcVm\Core\GeoIP\GeoIPService;
use XcVm\Core\Auth\Authenticator;
@@ -506,7 +510,7 @@ class UserRepository {
} else {
$rUserInfo['forced_country'] = GeoIP::getCountry($rIP)['registered_country']['iso_code'];
if ($rCached) {
RedisManager::setSignal('forced_country/' . $rUserInfo['id'], $rUserInfo['forced_country']);
\RedisManager::setSignal('forced_country/' . $rUserInfo['id'], $rUserInfo['forced_country']);
} else {
$db->query('UPDATE `lines` SET `forced_country` = ? WHERE `id` = ?', $rUserInfo['forced_country'], $rUserInfo['id']);
}
@@ -558,7 +562,7 @@ class UserRepository {
if (!($rUserInfo['isp_violate'] == 0 && strtolower($rUserInfo['con_isp_name']) != strtolower($rUserInfo['isp_desc']))) {
} else {
if ($rCached) {
RedisManager::setSignal('isp/' . $rUserInfo['id'], json_encode(array($rUserInfo['con_isp_name'], $rUserInfo['isp_asn'])));
\RedisManager::setSignal('isp/' . $rUserInfo['id'], json_encode(array($rUserInfo['con_isp_name'], $rUserInfo['isp_asn'])));
} else {
$db->query('UPDATE `lines` SET `isp_desc` = ?, `as_number` = ? WHERE `id` = ?', $rUserInfo['con_isp_name'], $rUserInfo['isp_asn'], $rUserInfo['id']);
}