use Sabre\DAVACL\IACL;
class AddressBook extends ExternalAddressBook implements IACL {
- public const URI = 'recent';
-
use ACLTrait;
- /** @var RecentContactMapper */
- private $mapper;
-
- /** @var IL10N */
- private $l10n;
+ public const URI = 'recent';
- /** @var string */
- private $principalUri;
+ private RecentContactMapper $mapper;
+ private IL10N $l10n;
+ private string $principalUri;
public function __construct(RecentContactMapper $mapper,
IL10N $l10n,
* @inheritDoc
* @throws NotFound
*/
- public function getChild($name) {
+ public function getChild($name): Card {
try {
return new Card(
$this->mapper->find(
/**
* @inheritDoc
*/
- public function childExists($name) {
+ public function childExists($name): bool {
try {
$this->mapper->find(
$this->getUid(),
/**
* @inheritDoc
*/
- public function getACL() {
+ public function getACL(): array {
return [
[
'privilege' => '{DAV:}read',
use OCP\BackgroundJob\TimedJob;
class CleanupJob extends TimedJob {
-
- /** @var RecentContactMapper */
- private $mapper;
+ private RecentContactMapper $mapper;
public function __construct(ITimeFactory $time,
RecentContactMapper $mapper) {
class Card implements ICard, IACL {
use ACLTrait;
- /** @var RecentContact */
- private $contact;
-
- /** @var string */
- private $principal;
-
- /** @var array */
- private $acls;
+ private RecentContact $contact;
+ private string $principal;
+ private array $acls;
public function __construct(RecentContact $contact, string $principal, array $acls) {
$this->contact = $contact;
use function stream_get_contents;
class CardSearchDao {
-
- /** @var IDBConnection */
- private $db;
+ private IDBConnection $db;
public function __construct(IDBConnection $db) {
$this->db = $db;
* @method int getLastContact()
*/
class RecentContact extends Entity {
-
- /** @var string */
- protected $actorUid;
-
- /** @var string|null */
- protected $uid;
-
- /** @var string|null */
- protected $email;
-
- /** @var string|null */
- protected $federatedCloudId;
-
- /** @var string */
- protected $card;
-
- /** @var int */
- protected $lastContact;
+ protected string $actorUid = '';
+ protected ?string $uid = null;
+ protected ?string $email = null;
+ protected ?string $federatedCloudId = null;
+ protected string $card = '';
+ protected int $lastContact = -1;
public function __construct() {
$this->addType('actorUid', 'string');
}
/**
- * @param string $uid
- * @param int $id
- *
- * @return RecentContact
* @throws DoesNotExistException
*/
public function find(string $uid, int $id): RecentContact {
}
/**
- * @param IUser $user
- * @param string|null $uid
- * @param string|null $email
- * @param string|null $cloudId
- *
* @return RecentContact[]
*/
public function findMatch(IUser $user,
return $this->findEntities($select);
}
- /**
- * @param string $uid
- * @return int|null
- */
- public function findLastUpdatedForUserId(string $uid):?int {
+ public function findLastUpdatedForUserId(string $uid): ?int {
$qb = $this->db->getQueryBuilder();
$select = $qb
->orderBy('last_contact', 'DESC')
->setMaxResults(1);
- $cursor = $select->execute();
+ $cursor = $select->executeQuery();
$row = $cursor->fetch();
if ($row === false) {
->delete($this->getTableName())
->where($qb->expr()->lt('last_contact', $qb->createNamedParameter($olderThan)));
- $delete->execute();
+ $delete->executeStatement();
}
}
use Throwable;
class ContactInteractionListener implements IEventListener {
-
- /** @var RecentContactMapper */
- private $mapper;
-
- /** @var CardSearchDao */
- private $cardSearchDao;
-
- /** @var IUserManager */
- private $userManager;
-
- /** @var ITimeFactory */
- private $timeFactory;
-
- /** @var IL10N */
- private $l10n;
-
- /** @var LoggerInterface */
- private $logger;
+ private RecentContactMapper $mapper;
+ private CardSearchDao $cardSearchDao;
+ private IUserManager $userManager;
+ private ITimeFactory $timeFactory;
+ private IL10N $l10n;
+ private LoggerInterface $logger;
public function __construct(RecentContactMapper $mapper,
CardSearchDao $cardSearchDao,
*/
private const DELIMITER = '--';
- /** @var string */
- private $appId;
-
- /** @var string */
- private $uri;
+ private string $appId;
+ private string $uri;
- /**
- * @param string $appId
- * @param string $uri
- */
public function __construct(string $appId, string $uri) {
$this->appId = $appId;
$this->uri = $uri;