Skip to content

Commit 23eb832

Browse files
committed
Reduce $isMap checks
1 parent 6f8efe7 commit 23eb832

File tree

1 file changed

+5
-12
lines changed

1 file changed

+5
-12
lines changed

src/Command/Project/ProjectInfoCommand.php

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -116,11 +116,14 @@ protected function setProperty(string $property, string $value, Project $project
116116
$isMap = str_contains($property, '.');
117117
if ($isMap) {
118118
[$mapName, $mapKey] = explode('.', $property, 2);
119-
}
120-
if ($isMap) {
121119
$type = $this->getType($mapName . '.*');
120+
$currentMap = $project->getProperty($mapName) ?? [];
121+
$currentValue = $currentMap[$mapKey] ?? null;
122+
$update = [$mapName => [$mapKey => $value]];
122123
} else {
123124
$type = $this->getType($property);
125+
$currentValue = $project->getProperty($property);
126+
$update = [$property => $value];
124127
}
125128

126129
if (!$type) {
@@ -132,12 +135,6 @@ protected function setProperty(string $property, string $value, Project $project
132135
}
133136
settype($value, $type);
134137

135-
if ($isMap) {
136-
$currentMap = $project->getProperty($mapName) ?? [];
137-
$currentValue = $currentMap[$mapKey] ?? null;
138-
} else {
139-
$currentValue = $project->getProperty($property);
140-
}
141138
if ($currentValue === $value) {
142139
$this->stdErr->writeln(
143140
"Property <info>$property</info> already set as: " . $this->propertyFormatter->format($value, $property),
@@ -147,10 +144,6 @@ protected function setProperty(string $property, string $value, Project $project
147144

148145
}
149146

150-
$update = [$property => $value];
151-
if ($isMap) {
152-
$update = [$mapName => [$mapKey => $value]];
153-
}
154147
$project->ensureFull();
155148
$result = $project->update($update);
156149
$this->stdErr->writeln(sprintf(

0 commit comments

Comments
 (0)