Skip to content

Commit 8e9a599

Browse files
committed
refactor: Add more typing
- repairs job - database - redis And remove Helpertest which was unused outside of some tests. Signed-off-by: Carl Schwan <[email protected]>
1 parent 1ea4c49 commit 8e9a599

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+383
-1126
lines changed

apps/settings/lib/AppInfo/Application.php

Lines changed: 21 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
use OC\AppFramework\Utility\TimeFactory;
1212
use OC\Authentication\Events\AppPasswordCreatedEvent;
1313
use OC\Authentication\Token\IProvider;
14-
use OC\Server;
14+
use OC\Settings\Manager;
1515
use OCA\Settings\ConfigLexicon;
1616
use OCA\Settings\Hooks;
1717
use OCA\Settings\Listener\AppPasswordCreatedActivityListener;
@@ -84,25 +84,28 @@
8484
use OCP\AppFramework\Bootstrap\IBootContext;
8585
use OCP\AppFramework\Bootstrap\IBootstrap;
8686
use OCP\AppFramework\Bootstrap\IRegistrationContext;
87-
use OCP\AppFramework\IAppContainer;
8887
use OCP\Defaults;
8988
use OCP\Group\Events\GroupDeletedEvent;
9089
use OCP\Group\Events\UserAddedEvent;
9190
use OCP\Group\Events\UserRemovedEvent;
92-
use OCP\IServerContainer;
91+
use OCP\IConfig;
92+
use OCP\IURLGenerator;
93+
use OCP\L10N\IFactory;
94+
use OCP\Mail\IMailer;
95+
use OCP\Security\ICrypto;
96+
use OCP\Security\ISecureRandom;
97+
use OCP\Server;
9398
use OCP\Settings\Events\DeclarativeSettingsGetValueEvent;
9499
use OCP\Settings\Events\DeclarativeSettingsSetValueEvent;
95100
use OCP\Settings\IManager;
96101
use OCP\User\Events\PasswordUpdatedEvent;
97102
use OCP\User\Events\UserChangedEvent;
98103
use OCP\Util;
104+
use Psr\Container\ContainerInterface;
99105

100106
class Application extends App implements IBootstrap {
101107
public const APP_ID = 'settings';
102108

103-
/**
104-
* @param array $urlParams
105-
*/
106109
public function __construct(array $urlParams = []) {
107110
parent::__construct(self::APP_ID, $urlParams);
108111
}
@@ -139,32 +142,23 @@ public function register(IRegistrationContext $context): void {
139142
/**
140143
* Core class wrappers
141144
*/
142-
$context->registerService(IProvider::class, function (IAppContainer $appContainer) {
143-
/** @var IServerContainer $serverContainer */
144-
$serverContainer = $appContainer->query(IServerContainer::class);
145-
return $serverContainer->query(IProvider::class);
145+
$context->registerService(IProvider::class, function (): IProvider {
146+
return Server::get(IProvider::class);
146147
});
147-
$context->registerService(IManager::class, function (IAppContainer $appContainer) {
148-
/** @var IServerContainer $serverContainer */
149-
$serverContainer = $appContainer->query(IServerContainer::class);
150-
return $serverContainer->getSettingsManager();
148+
$context->registerService(IManager::class, function (): Manager {
149+
return Server::get(Manager::class);
151150
});
152151

153-
$context->registerService(NewUserMailHelper::class, function (IAppContainer $appContainer) {
154-
/** @var Server $server */
155-
$server = $appContainer->query(IServerContainer::class);
156-
/** @var Defaults $defaults */
157-
$defaults = $server->query(Defaults::class);
158-
152+
$context->registerService(NewUserMailHelper::class, function (ContainerInterface $appContainer) {
159153
return new NewUserMailHelper(
160-
$defaults,
161-
$server->getURLGenerator(),
162-
$server->getL10NFactory(),
163-
$server->getMailer(),
164-
$server->getSecureRandom(),
154+
Server::get(Defaults::class),
155+
$appContainer->get(IURLGenerator::class),
156+
$appContainer->get(IFactory::class),
157+
$appContainer->get(IMailer::class),
158+
$appContainer->get(ISecureRandom::class),
165159
new TimeFactory(),
166-
$server->getConfig(),
167-
$server->getCrypto(),
160+
$appContainer->get(IConfig::class),
161+
$appContainer->get(ICrypto::class),
168162
Util::getDefaultEmailAddress('no-reply')
169163
);
170164
});

apps/user_ldap/lib/User/OfflineUser.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ public function getOCName() {
101101
* getter for LDAP uid
102102
* @return string
103103
*/
104-
public function getUID() {
104+
public function getUID(): string {
105105
if ($this->uid === null) {
106106
$this->fetchDetails();
107107
}

build/psalm-baseline.xml

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -2265,33 +2265,6 @@
22652265
<code><![CDATA[Response]]></code>
22662266
</InvalidReturnType>
22672267
</file>
2268-
<file src="apps/settings/lib/AppInfo/Application.php">
2269-
<DeprecatedInterface>
2270-
<code><![CDATA[$serverContainer]]></code>
2271-
<code><![CDATA[$serverContainer]]></code>
2272-
<code><![CDATA[IAppContainer]]></code>
2273-
<code><![CDATA[IAppContainer]]></code>
2274-
<code><![CDATA[IAppContainer]]></code>
2275-
</DeprecatedInterface>
2276-
<DeprecatedMethod>
2277-
<code><![CDATA[getConfig]]></code>
2278-
<code><![CDATA[getCrypto]]></code>
2279-
<code><![CDATA[getL10NFactory]]></code>
2280-
<code><![CDATA[getMailer]]></code>
2281-
<code><![CDATA[getSecureRandom]]></code>
2282-
<code><![CDATA[getURLGenerator]]></code>
2283-
<code><![CDATA[query]]></code>
2284-
<code><![CDATA[query]]></code>
2285-
<code><![CDATA[query]]></code>
2286-
<code><![CDATA[query]]></code>
2287-
<code><![CDATA[query]]></code>
2288-
<code><![CDATA[query]]></code>
2289-
<code><![CDATA[query]]></code>
2290-
</DeprecatedMethod>
2291-
<UndefinedInterfaceMethod>
2292-
<code><![CDATA[getSettingsManager]]></code>
2293-
</UndefinedInterfaceMethod>
2294-
</file>
22952268
<file src="apps/settings/lib/BackgroundJobs/VerifyUserData.php">
22962269
<DeprecatedConstant>
22972270
<code><![CDATA[IAccountManager::PROPERTY_TWITTER]]></code>
@@ -3935,16 +3908,6 @@
39353908
<code><![CDATA[array]]></code>
39363909
</ImplementedReturnTypeMismatch>
39373910
</file>
3938-
<file src="lib/private/Remote/Instance.php">
3939-
<InvalidScalarArgument>
3940-
<code><![CDATA[$response]]></code>
3941-
</InvalidScalarArgument>
3942-
</file>
3943-
<file src="lib/private/Repair/Owncloud/CleanPreviews.php">
3944-
<InvalidArgument>
3945-
<code><![CDATA[false]]></code>
3946-
</InvalidArgument>
3947-
</file>
39483911
<file src="lib/private/Repair/RemoveLinkShares.php">
39493912
<InvalidPropertyAssignmentValue>
39503913
<code><![CDATA[$this->userToNotify]]></code>

core/Command/Memcache/RedisCommand.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,9 @@ protected function execute(InputInterface $input, OutputInterface $output): int
4444
return 1;
4545
}
4646

47-
$redis->setOption(\Redis::OPT_REPLY_LITERAL, true);
47+
if ($redis instanceof \Redis) {
48+
$redis->setOption(\Redis::OPT_REPLY_LITERAL, true);
49+
}
4850
$result = $redis->rawCommand(...$command);
4951
if ($result === false) {
5052
$output->writeln('<error>Redis command failed</error>');

lib/composer/composer/LICENSE

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
Copyright (c) Nils Adermann, Jordi Boggiano
32

43
Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -18,4 +17,3 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1817
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1918
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
2019
THE SOFTWARE.
21-

lib/composer/composer/autoload_classmap.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2112,7 +2112,6 @@
21122112
'OC\\Share20\\UserDeletedListener' => $baseDir . '/lib/private/Share20/UserDeletedListener.php',
21132113
'OC\\Share20\\UserRemovedListener' => $baseDir . '/lib/private/Share20/UserRemovedListener.php',
21142114
'OC\\Share\\Constants' => $baseDir . '/lib/private/Share/Constants.php',
2115-
'OC\\Share\\Helper' => $baseDir . '/lib/private/Share/Helper.php',
21162115
'OC\\Share\\Share' => $baseDir . '/lib/private/Share/Share.php',
21172116
'OC\\Snowflake\\APCuSequence' => $baseDir . '/lib/private/Snowflake/APCuSequence.php',
21182117
'OC\\Snowflake\\Decoder' => $baseDir . '/lib/private/Snowflake/Decoder.php',

lib/composer/composer/autoload_static.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2153,7 +2153,6 @@ class ComposerStaticInit749170dad3f5e7f9ca158f5a9f04f6a2
21532153
'OC\\Share20\\UserDeletedListener' => __DIR__ . '/../../..' . '/lib/private/Share20/UserDeletedListener.php',
21542154
'OC\\Share20\\UserRemovedListener' => __DIR__ . '/../../..' . '/lib/private/Share20/UserRemovedListener.php',
21552155
'OC\\Share\\Constants' => __DIR__ . '/../../..' . '/lib/private/Share/Constants.php',
2156-
'OC\\Share\\Helper' => __DIR__ . '/../../..' . '/lib/private/Share/Helper.php',
21572156
'OC\\Share\\Share' => __DIR__ . '/../../..' . '/lib/private/Share/Share.php',
21582157
'OC\\Snowflake\\APCuSequence' => __DIR__ . '/../../..' . '/lib/private/Snowflake/APCuSequence.php',
21592158
'OC\\Snowflake\\Decoder' => __DIR__ . '/../../..' . '/lib/private/Snowflake/Decoder.php',

lib/private/NavigationManager.php

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,17 +22,16 @@
2222
use Psr\Log\LoggerInterface;
2323

2424
/**
25-
* Manages the ownCloud navigation
25+
* Manages the nextcloud navigation
2626
*/
2727

2828
class NavigationManager implements INavigationManager {
29-
protected $entries = [];
30-
protected $closureEntries = [];
29+
protected array $entries = [];
30+
protected array $closureEntries = [];
31+
/** @var string $activeEntry */
3132
protected $activeEntry;
32-
protected $unreadCounters = [];
33-
34-
/** @var bool */
35-
protected $init = false;
33+
protected array $unreadCounters = [];
34+
protected bool $init = false;
3635
/** User defined app order (cached for the `add` function) */
3736
private array $customAppOrder;
3837

lib/private/Preview/WatcherConnector.php

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@
1616
use OCP\Server;
1717

1818
class WatcherConnector {
19+
private ?Watcher $watcher = null;
20+
1921
public function __construct(
2022
private IRootFolder $root,
2123
private SystemConfig $config,
@@ -24,7 +26,11 @@ public function __construct(
2426
}
2527

2628
private function getWatcher(): Watcher {
27-
return Server::get(Watcher::class);
29+
if ($this->watcher !== null) {
30+
return $this->watcher;
31+
}
32+
$this->watcher = Server::get(Watcher::class);
33+
return $this->watcher;
2834
}
2935

3036
public function connectWatcher(): void {

lib/private/RedisFactory.php

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,21 +13,15 @@ class RedisFactory {
1313
public const REDIS_MINIMAL_VERSION = '4.0.0';
1414
public const REDIS_EXTRA_PARAMETERS_MINIMAL_VERSION = '5.3.0';
1515

16-
/** @var \Redis|\RedisCluster */
17-
private $instance;
16+
private \Redis|\RedisCluster|null $instance = null;
1817

19-
/**
20-
* RedisFactory constructor.
21-
*
22-
* @param SystemConfig $config
23-
*/
2418
public function __construct(
2519
private SystemConfig $config,
2620
private IEventLogger $eventLogger,
2721
) {
2822
}
2923

30-
private function create() {
24+
private function create(): void {
3125
$isCluster = in_array('redis.cluster', $this->config->getKeys(), true);
3226
$config = $isCluster
3327
? $this->config->getValue('redis.cluster', [])
@@ -121,10 +115,9 @@ private function create() {
121115
* Get the ssl context config
122116
*
123117
* @param array $config the current config
124-
* @return array|null
125118
* @throws \UnexpectedValueException
126119
*/
127-
private function getSslContext($config) {
120+
private function getSslContext(array $config): ?array {
128121
if (isset($config['ssl_context'])) {
129122
if (!$this->isConnectionParametersSupported()) {
130123
throw new \UnexpectedValueException(\sprintf(
@@ -137,14 +130,18 @@ private function getSslContext($config) {
137130
return null;
138131
}
139132

140-
public function getInstance() {
133+
public function getInstance(): \Redis|\RedisCluster {
141134
if (!$this->isAvailable()) {
142135
throw new \Exception('Redis support is not available');
143136
}
144-
if (!$this->instance instanceof \Redis) {
137+
if ($this->instance === null) {
145138
$this->create();
146139
}
147140

141+
if ($this->instance === null) {
142+
throw new \Exception('Redis support is not available');
143+
}
144+
148145
return $this->instance;
149146
}
150147

0 commit comments

Comments
 (0)