Skip to content

Commit 44f6481

Browse files
committed
ServiceDefinition: deprecated parameters (BC break)
1 parent f9a31c1 commit 44f6481

File tree

5 files changed

+7
-114
lines changed

5 files changed

+7
-114
lines changed

src/DI/Config/Processor.php

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ class Processor
3232
'factory' => 'callable|Nette\DI\Definitions\Statement',
3333
'arguments' => 'array',
3434
'setup' => 'list',
35-
'parameters' => 'array',
3635
'inject' => 'bool',
3736
'autowired' => 'bool|string|array',
3837
'tags' => 'array',
@@ -225,10 +224,6 @@ private function updateServiceDefinition(Definitions\ServiceDefinition $definiti
225224
}
226225
}
227226

228-
if (isset($config['parameters'])) {
229-
$definition->setParameters($config['parameters']);
230-
}
231-
232227
if (isset($config['inject'])) {
233228
$definition->addTag(Extensions\InjectExtension::TAG_INJECT, $config['inject']);
234229
}

src/DI/Definitions/ServiceDefinition.php

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,6 @@
2424
*/
2525
final class ServiceDefinition extends Definition
2626
{
27-
/** @var array */
28-
public $parameters = [];
29-
3027
/** @var Statement|null */
3128
private $factory;
3229

@@ -135,18 +132,21 @@ public function addSetup($entity, array $args = [])
135132

136133

137134
/**
138-
* @return static
135+
* @deprecated
139136
*/
140137
public function setParameters(array $params)
141138
{
142-
$this->parameters = $params;
143-
return $this;
139+
throw new Nette\DeprecatedException(sprintf('Service %s: %s() is deprecated.', $this->getName(), __METHOD__));
144140
}
145141

146142

143+
/**
144+
* @deprecated
145+
*/
147146
public function getParameters(): array
148147
{
149-
return $this->parameters;
148+
trigger_error(sprintf('Service %s: %s() is deprecated.', $this->getName(), __METHOD__), E_USER_DEPRECATED);
149+
return [];
150150
}
151151

152152

@@ -224,8 +224,6 @@ public function complete(Nette\DI\Resolver $resolver): void
224224

225225
public function generateMethod(Nette\PhpGenerator\Method $method, Nette\DI\PhpGenerator $generator): void
226226
{
227-
$method->setParameters($generator->convertParameters($this->parameters));
228-
229227
$entity = $this->getFactory()->getEntity();
230228
$code = '$service = ' . $generator->formatStatement($this->getFactory()) . ";\n";
231229
$type = $this->getType();

src/DI/Resolver.php

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -186,12 +186,6 @@ public function completeStatement(Statement $statement, bool $currentServiceAllo
186186
break;
187187

188188
case $entity instanceof Reference:
189-
$params = [];
190-
foreach ($this->resolveReference($entity)->parameters as $k => $v) {
191-
$params[] = preg_replace('#\w+\z#', '\$$0', (is_int($k) ? $v : $k)) . (is_int($k) ? '' : ' = ' . PhpHelpers::dump($v));
192-
}
193-
$rm = new \ReflectionFunction(eval('return function(' . implode(', ', $params) . ') {};'));
194-
$arguments = $this->autowireArguments($rm, $arguments);
195189
break;
196190

197191
case is_array($entity):

tests/DI/Compiler.services.nonshared.phpt

Lines changed: 0 additions & 51 deletions
This file was deleted.

tests/DI/ContainerBuilder.nonshared.phpt

Lines changed: 0 additions & 43 deletions
This file was deleted.

0 commit comments

Comments
 (0)