From 4a12d449719eca2fd4b288f5def84c0ee38b7954 Mon Sep 17 00:00:00 2001 From: Yuri Kuznetsov Date: Tue, 2 Nov 2021 19:56:48 +0200 Subject: [PATCH] type fixes --- application/Espo/Core/Job/JobRunner.php | 1 + application/Espo/Core/Job/ScheduleUtil.php | 11 ++++---- application/Espo/Core/Mail/EmailSender.php | 2 +- application/Espo/Core/Record/Collection.php | 14 +++++----- application/Espo/Core/Utils/Config.php | 26 ++++++------------- .../Espo/Core/Utils/SystemRequirements.php | 1 - phpstan.neon | 1 + 7 files changed, 24 insertions(+), 32 deletions(-) diff --git a/application/Espo/Core/Job/JobRunner.php b/application/Espo/Core/Job/JobRunner.php index ebb8df9f96..9f555973bb 100644 --- a/application/Espo/Core/Job/JobRunner.php +++ b/application/Espo/Core/Job/JobRunner.php @@ -99,6 +99,7 @@ class JobRunner throw new Error(); } + /** @var JobEntity $jobEntity */ $jobEntity = $this->entityManager->getEntity(JobEntity::ENTITY_TYPE, $id); if (!$jobEntity) { diff --git a/application/Espo/Core/Job/ScheduleUtil.php b/application/Espo/Core/Job/ScheduleUtil.php index 1942342624..caaff24e20 100644 --- a/application/Espo/Core/Job/ScheduleUtil.php +++ b/application/Espo/Core/Job/ScheduleUtil.php @@ -86,9 +86,8 @@ class ScheduleUtil $runTime = date(DateTimeUtil::SYSTEM_DATE_TIME_FORMAT); } - $entityManager = $this->entityManager; - - $scheduledJob = $entityManager->getEntity(ScheduledJobEntity::ENTITY_TYPE, $scheduledJobId); + /** @var ScheduledJobEntity $scheduledJob */ + $scheduledJob = $this->entityManager->getEntity(ScheduledJobEntity::ENTITY_TYPE, $scheduledJobId); if (!$scheduledJob) { return; @@ -96,9 +95,9 @@ class ScheduleUtil $scheduledJob->set('lastRun', $runTime); - $entityManager->saveEntity($scheduledJob, ['silent' => true]); + $this->entityManager->saveEntity($scheduledJob, ['silent' => true]); - $scheduledJobLog = $entityManager->getEntity(ScheduledJobLogRecordEntity::ENTITY_TYPE); + $scheduledJobLog = $this->entityManager->getEntity(ScheduledJobLogRecordEntity::ENTITY_TYPE); $scheduledJobLog->set([ 'scheduledJobId' => $scheduledJobId, @@ -109,6 +108,6 @@ class ScheduleUtil 'targetType' => $targetType, ]); - $entityManager->saveEntity($scheduledJobLog); + $this->entityManager->saveEntity($scheduledJobLog); } } \ No newline at end of file diff --git a/application/Espo/Core/Mail/EmailSender.php b/application/Espo/Core/Mail/EmailSender.php index e834512ef6..f1c6f544a5 100644 --- a/application/Espo/Core/Mail/EmailSender.php +++ b/application/Espo/Core/Mail/EmailSender.php @@ -170,7 +170,7 @@ class EmailSender if (!$this->systemInboundEmailIsCached && $address) { $this->systemInboundEmail = $this->entityManager - ->getRepository('InboundEmail') + ->getRDBRepository('InboundEmail') ->where([ 'status' => 'Active', 'useSmtp' => true, diff --git a/application/Espo/Core/Record/Collection.php b/application/Espo/Core/Record/Collection.php index be1aaacc5c..245cc9e0bf 100644 --- a/application/Espo/Core/Record/Collection.php +++ b/application/Espo/Core/Record/Collection.php @@ -29,11 +29,10 @@ namespace Espo\Core\Record; -use Espo\ORM\{ - Collection as OrmCollection, -}; +use Espo\ORM\Collection as OrmCollection; +use Espo\ORM\EntityCollection; -use StdClass; +use stdClass; /** * Contains an an ORM collection and total number of records. @@ -73,11 +72,14 @@ class Collection /** * Get a value map list. * - * @return StdClass[] + * @return stdClass[] */ public function getValueMapList(): array { - if (!$this->collection->getEntityType()) { + if ( + $this->collection instanceof EntityCollection && + !$this->collection->getEntityType() + ) { $list = []; foreach ($this->collection as $e) { diff --git a/application/Espo/Core/Utils/Config.php b/application/Espo/Core/Utils/Config.php index 0fb038af2c..7ece0085f1 100644 --- a/application/Espo/Core/Utils/Config.php +++ b/application/Espo/Core/Utils/Config.php @@ -164,7 +164,7 @@ class Config } /** - * @deprecated Since v6.2.0. + * @deprecated Since v7.0. */ public function set($name, $value = null, bool $dontMarkDirty = false) { @@ -190,7 +190,7 @@ class Config } /** - * @deprecated Since v6.2.0. + * @deprecated Since v7.0. */ public function remove(string $name): bool { @@ -206,7 +206,7 @@ class Config } /** - * @deprecated Since v6.2.0. + * @deprecated Since v7.0. */ public function save() { @@ -253,24 +253,14 @@ class Config $data['microtime'] = $microtime = microtime(true); - $result = $this->fileManager->putPhpContents($configPath, $data, true); + $this->fileManager->putPhpContents($configPath, $data); - if ($result) { - $reloadedData = include($configPath); + $this->changedData = []; + $this->removeData = []; - if (!is_array($reloadedData) || $microtime !== ($reloadedData['microtime'] ?? null)) { - $result = $this->fileManager->putPhpContents($configPath, $data, false); - } - } + $this->load(); - if ($result) { - $this->changedData = []; - $this->removeData = []; - - $this->load(); - } - - return $result; + return true; } private function isLoaded(): bool diff --git a/application/Espo/Core/Utils/SystemRequirements.php b/application/Espo/Core/Utils/SystemRequirements.php index c344ee1b93..6104a43abd 100644 --- a/application/Espo/Core/Utils/SystemRequirements.php +++ b/application/Espo/Core/Utils/SystemRequirements.php @@ -228,7 +228,6 @@ class SystemRequirements $actualValue = $this->systemHelper->getPhpParam($name); $acceptable = ( - isset($actualValue) && Util::convertToByte($actualValue) >= Util::convertToByte($requiredValue) ) ? true : false; diff --git a/phpstan.neon b/phpstan.neon index fb358f33a8..013507214b 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -1,5 +1,6 @@ parameters: level: 1 + inferPrivatePropertyTypeFromConstructor: true paths: - application reportUnmatchedIgnoredErrors: false