0
0
Fork 0
mirror of https://github.com/nextcloud/server.git synced 2025-03-16 01:05:24 +00:00

Refactor contactsinteraction app

Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
This commit is contained in:
Hamid Dehnavi 2023-07-08 20:26:32 +03:30 committed by Daniel
parent 6f520f2304
commit e22742b910
5 changed files with 33 additions and 57 deletions

View file

@ -44,22 +44,17 @@ class AddressBook extends ExternalAddressBook implements IACL {
public const URI = 'recent';
private RecentContactMapper $mapper;
private IL10N $l10n;
private string $principalUri;
public function __construct(RecentContactMapper $mapper,
IL10N $l10n,
string $principalUri) {
public function __construct(
private RecentContactMapper $mapper,
private IL10N $l10n,
private string $principalUri,
) {
parent::__construct(Application::APP_ID, self::URI);
$this->mapper = $mapper;
$this->l10n = $l10n;
$this->principalUri = $principalUri;
}
/**
* @inheritDoc
* @throws Exception
*/
public function delete(): void {
throw new Exception("This addressbook is immutable");
@ -67,6 +62,7 @@ class AddressBook extends ExternalAddressBook implements IACL {
/**
* @inheritDoc
* @throws Exception
*/
public function createFile($name, $data = null) {
throw new Exception("This addressbook is immutable");
@ -131,6 +127,7 @@ class AddressBook extends ExternalAddressBook implements IACL {
/**
* @inheritDoc
* @throws Exception
*/
public function propPatch(PropPatch $propPatch) {
throw new Exception("This addressbook is immutable");
@ -139,7 +136,7 @@ class AddressBook extends ExternalAddressBook implements IACL {
/**
* @inheritDoc
*/
public function getProperties($properties) {
public function getProperties($properties): array {
return [
'principaluri' => $this->principalUri,
'{DAV:}displayname' => $this->l10n->t('Recently contacted'),

View file

@ -33,15 +33,10 @@ use OCP\IL10N;
class AddressBookProvider implements IAddressBookProvider {
/** @var RecentContactMapper */
private $mapper;
/** @var IL10N */
private $l10n;
public function __construct(RecentContactMapper $mapper, IL10N $l10n) {
$this->mapper = $mapper;
$this->l10n = $l10n;
public function __construct(
private RecentContactMapper $mapper,
private IL10N $l10n,
) {
}
/**

View file

@ -31,19 +31,19 @@ use OCP\BackgroundJob\IJob;
use OCP\BackgroundJob\TimedJob;
class CleanupJob extends TimedJob {
private RecentContactMapper $mapper;
public function __construct(ITimeFactory $time,
RecentContactMapper $mapper) {
public function __construct(
ITimeFactory $time,
private RecentContactMapper $mapper,
) {
parent::__construct($time);
$this->setInterval(24 * 60 * 60);
$this->setTimeSensitivity(IJob::TIME_INSENSITIVE);
$this->mapper = $mapper;
}
protected function run($argument) {
protected function run($argument): void {
$time = $this->time->getDateTime();
$time->modify('-7days');
$this->mapper->cleanUp($time->getTimestamp());

View file

@ -36,14 +36,11 @@ use Sabre\DAVACL\IACL;
class Card implements ICard, IACL {
use ACLTrait;
private RecentContact $contact;
private string $principal;
private array $acls;
public function __construct(RecentContact $contact, string $principal, array $acls) {
$this->contact = $contact;
$this->principal = $principal;
$this->acls = $acls;
public function __construct(
private RecentContact $contact,
private string $principal,
private array $acls,
) {
}
/**
@ -77,7 +74,7 @@ class Card implements ICard, IACL {
/**
* @inheritDoc
*/
public function get() {
public function get(): string {
return $this->contact->getCard();
}

View file

@ -46,28 +46,15 @@ class ContactInteractionListener implements IEventListener {
use TTransactional;
private RecentContactMapper $mapper;
private CardSearchDao $cardSearchDao;
private IUserManager $userManager;
private IDBConnection $dbConnection;
private ITimeFactory $timeFactory;
private IL10N $l10n;
private LoggerInterface $logger;
public function __construct(RecentContactMapper $mapper,
CardSearchDao $cardSearchDao,
IUserManager $userManager,
IDBConnection $connection,
ITimeFactory $timeFactory,
IL10N $l10nFactory,
LoggerInterface $logger) {
$this->mapper = $mapper;
$this->cardSearchDao = $cardSearchDao;
$this->userManager = $userManager;
$this->dbConnection = $connection;
$this->timeFactory = $timeFactory;
$this->l10n = $l10nFactory;
$this->logger = $logger;
public function __construct(
private RecentContactMapper $mapper,
private CardSearchDao $cardSearchDao,
private IUserManager $userManager,
private IDBConnection $dbConnection,
private ITimeFactory $timeFactory,
private IL10N $l10n,
private LoggerInterface $logger,
) {
}
public function handle(Event $event): void {