Catch exceptions for Worker::AddContact()

This commit is contained in:
Philipp 2022-05-18 22:37:17 +02:00
parent 7d958e8804
commit c33611c484
No known key found for this signature in database
GPG Key ID: 24A7501396EB5432

View File

@ -21,8 +21,10 @@
namespace Friendica\Worker;
use Friendica\Core\Logger;
use Friendica\DI;
use Friendica\Model\Contact;
use Friendica\Network\HTTPException\InternalServerErrorException;
use Friendica\Network\HTTPException\NotFoundException;
class AddContact
{
@ -33,14 +35,22 @@ class AddContact
*/
public static function execute(int $uid, string $url)
{
try {
if ($uid == 0) {
// Adding public contact
$result = Contact::getIdForURL($url);
Logger::info('Added public contact', ['url' => $url, 'result' => $result]);
DI::logger()->info('Added public contact', ['url' => $url, 'result' => $result]);
return;
}
$result = Contact::createFromProbeForUser($uid, $url);
Logger::info('Added contact for user', ['uid' => $uid, 'url' => $url, 'result' => $result]);
DI::logger()->info('Added contact for user', ['uid' => $uid, 'url' => $url, 'result' => $result]);
} catch (InternalServerErrorException $e) {
DI::logger()->warning('Internal server error.', ['exception' => $e, 'uid' => $uid, 'url' => $url]);
} catch (NotFoundException $e) {
DI::logger()->notice('uid not found.', ['exception' => $e, 'uid' => $uid, 'url' => $url]);
} catch (\ImagickException $e) {
DI::logger()->notice('Imagick not found.', ['exception' => $e, 'uid' => $uid, 'url' => $url]);
}
}
}