Refactor logging levels in RegisteredPeerManager and update getPeer method to return null for non-existent peers
Some checks failed
CI / check-phpdoc (push) Has been cancelled
CI / release (push) Has been cancelled
CI / debug (push) Has been cancelled
CI / release_executable (push) Has been cancelled
CI / debug_executable (push) Has been cancelled
CI / check-phpunit (push) Has been cancelled
CI / generate-phpdoc (push) Has been cancelled
CI / test (push) Has been cancelled
CI / release-documentation (push) Has been cancelled
CI / release-artifacts (push) Has been cancelled

This commit is contained in:
netkas 2025-03-22 01:09:03 -04:00
parent db153453b5
commit 631689b489
Signed by: netkas
GPG key ID: 4D8629441B76E4CC
2 changed files with 25 additions and 9 deletions

View file

@ -30,7 +30,7 @@
*/ */
public static function usernameExists(string $username): bool public static function usernameExists(string $username): bool
{ {
Logger::getLogger()->verbose(sprintf("Checking if username %s already exists", $username)); Logger::getLogger()->debug(sprintf("Checking if username %s already exists", $username));
try try
{ {
@ -57,7 +57,7 @@
*/ */
public static function createPeer(PeerAddress $peerAddress, bool $enabled=false): string public static function createPeer(PeerAddress $peerAddress, bool $enabled=false): string
{ {
Logger::getLogger()->verbose(sprintf("Registering peer %s", $peerAddress->getAddress())); Logger::getLogger()->debug(sprintf("Registering peer %s", $peerAddress->getAddress()));
$uuid = Uuid::v4()->toRfc4122(); $uuid = Uuid::v4()->toRfc4122();
$server = $peerAddress->getDomain(); $server = $peerAddress->getDomain();
@ -99,7 +99,7 @@
$ppeerUuid = $ppeerUuid->getUuid(); $ppeerUuid = $ppeerUuid->getUuid();
} }
Logger::getLogger()->verbose(sprintf("Deleting peer %s", $ppeerUuid)); Logger::getLogger()->debug(sprintf("Deleting peer %s", $ppeerUuid));
try try
{ {
@ -117,17 +117,17 @@
* Retrieves a registered peer record based on the given unique identifier or RegisteredPeerRecord object. * Retrieves a registered peer record based on the given unique identifier or RegisteredPeerRecord object.
* *
* @param string|PeerDatabaseRecord $peerUuid The unique identifier of the registered peer, or an instance of RegisteredPeerRecord. * @param string|PeerDatabaseRecord $peerUuid The unique identifier of the registered peer, or an instance of RegisteredPeerRecord.
* @return PeerDatabaseRecord Returns a RegisteredPeerRecord object containing the peer's information. * @return PeerDatabaseRecord|null Returns a RegisteredPeerRecord object containing the peer's information. null if the peer does not exist.
* @throws DatabaseOperationException If there is an error during the database operation. * @throws DatabaseOperationException If there is an error during the database operation.
*/ */
public static function getPeer(string|PeerDatabaseRecord $peerUuid): PeerDatabaseRecord public static function getPeer(string|PeerDatabaseRecord $peerUuid): ?PeerDatabaseRecord
{ {
if($peerUuid instanceof PeerDatabaseRecord) if($peerUuid instanceof PeerDatabaseRecord)
{ {
$peerUuid = $peerUuid->getUuid(); $peerUuid = $peerUuid->getUuid();
} }
Logger::getLogger()->verbose(sprintf("Retrieving peer %s from the database", $peerUuid)); Logger::getLogger()->debug(sprintf("Retrieving peer %s from the database", $peerUuid));
try try
{ {
@ -139,7 +139,7 @@
if($result === false) if($result === false)
{ {
throw new DatabaseOperationException(sprintf("The requested peer '%s' does not exist", $peerUuid)); return null;
} }
return new PeerDatabaseRecord($result); return new PeerDatabaseRecord($result);
@ -159,7 +159,7 @@
*/ */
public static function getPeerByAddress(PeerAddress $oeerAddress): ?PeerDatabaseRecord public static function getPeerByAddress(PeerAddress $oeerAddress): ?PeerDatabaseRecord
{ {
Logger::getLogger()->verbose(sprintf("Retrieving peer %s from the database", $oeerAddress->getAddress())); Logger::getLogger()->debug(sprintf("Retrieving peer %s from the database", $oeerAddress->getAddress()));
try try
{ {
@ -181,6 +181,7 @@
if($result === false) if($result === false)
{ {
Logger::getLogger()->debug(sprintf("Peer %s not found in the database", $oeerAddress->getAddress()));
return null; return null;
} }
@ -362,6 +363,11 @@
Logger::getLogger()->verbose(sprintf("Adding flag(s) %s to peer %s", implode(',', $peerFlags), $peerUuid)); Logger::getLogger()->verbose(sprintf("Adding flag(s) %s to peer %s", implode(',', $peerFlags), $peerUuid));
$peer = self::getPeer($peerUuid); $peer = self::getPeer($peerUuid);
if($peer === null)
{
throw new DatabaseOperationException('Peer does not exist');
}
$existingFlags = $peer->getFlags(); $existingFlags = $peer->getFlags();
$peerFlags = is_array($peerFlags) ? $peerFlags : [$peerFlags]; $peerFlags = is_array($peerFlags) ? $peerFlags : [$peerFlags];
@ -402,6 +408,11 @@
$peer = self::getPeer($peer); $peer = self::getPeer($peer);
} }
if($peer === null)
{
throw new DatabaseOperationException('Peer does not exist');
}
Logger::getLogger()->verbose(sprintf("Removing flag %s from peer %s", $flag->value, $peer->getUuid())); Logger::getLogger()->verbose(sprintf("Removing flag %s from peer %s", $flag->value, $peer->getUuid()));
if(!$peer->flagExists($flag)) if(!$peer->flagExists($flag))

View file

@ -281,7 +281,12 @@
*/ */
public function isExternal(): bool public function isExternal(): bool
{ {
return RegisteredPeerManager::getPeer($this->peerUuid)->isExternal(); $peer = RegisteredPeerManager::getPeer($this->peerUuid);
if($peer === null)
{
return false;
}
return $peer->isExternal();
} }
/** /**