Skip to content

Commit 02dd7e5

Browse files
author
Yevhen Miroshnychenko
committed
MAGETWO-93042: [Backport to 2.2 ] Write Logs for Failed Process of Generating Factories in Extensions
1 parent 0f572b6 commit 02dd7e5

File tree

1 file changed

+18
-56
lines changed

1 file changed

+18
-56
lines changed

lib/internal/Magento/Framework/Code/Generator/EntityAbstract.php

Lines changed: 18 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -318,57 +318,6 @@ protected function _getNullDefaultValue()
318318
return $value;
319319
}
320320

321-
/**
322-
* @param \ReflectionParameter $parameter
323-
*
324-
* @return null|string
325-
*/
326-
private function extractParameterType(\ReflectionParameter $parameter)
327-
{
328-
/** @var string|null $typeName */
329-
$typeName = null;
330-
if ($parameter->hasType()) {
331-
if ($parameter->isArray()) {
332-
$typeName = 'array';
333-
} elseif ($parameter->getClass()) {
334-
$typeName = $this->_getFullyQualifiedClassName(
335-
$parameter->getClass()->getName()
336-
);
337-
} elseif ($parameter->isCallable()) {
338-
$typeName = 'callable';
339-
} else {
340-
$typeName = $parameter->getType()->getName();
341-
}
342-
343-
if ($parameter->allowsNull()) {
344-
$typeName = '?' . $typeName;
345-
}
346-
}
347-
348-
return $typeName;
349-
}
350-
351-
/**
352-
* @param \ReflectionParameter $parameter
353-
*
354-
* @return null|ValueGenerator
355-
*/
356-
private function extractParameterDefaultValue(\ReflectionParameter $parameter)
357-
{
358-
/** @var ValueGenerator|null $value */
359-
$value = null;
360-
if ($parameter->isOptional() && $parameter->isDefaultValueAvailable()) {
361-
$valueType = ValueGenerator::TYPE_AUTO;
362-
$defaultValue = $parameter->getDefaultValue();
363-
if ($defaultValue === null) {
364-
$valueType = ValueGenerator::TYPE_NULL;
365-
}
366-
$value = new ValueGenerator($defaultValue, $valueType);
367-
}
368-
369-
return $value;
370-
}
371-
372321
/**
373322
* Retrieve method parameter info
374323
*
@@ -380,13 +329,26 @@ protected function _getMethodParameterInfo(\ReflectionParameter $parameter)
380329
$parameterInfo = [
381330
'name' => $parameter->getName(),
382331
'passedByReference' => $parameter->isPassedByReference(),
383-
'variadic' => $parameter->isVariadic()
332+
'type' => $parameter->getType()
384333
];
385-
if ($type = $this->extractParameterType($parameter)) {
386-
$parameterInfo['type'] = $type;
334+
335+
if ($parameter->isArray()) {
336+
$parameterInfo['type'] = 'array';
337+
} elseif ($parameter->getClass()) {
338+
$parameterInfo['type'] = $this->_getFullyQualifiedClassName($parameter->getClass()->getName());
339+
} elseif ($parameter->isCallable()) {
340+
$parameterInfo['type'] = 'callable';
387341
}
388-
if ($default = $this->extractParameterDefaultValue($parameter)) {
389-
$parameterInfo['defaultValue'] = $default;
342+
343+
if ($parameter->isOptional() && $parameter->isDefaultValueAvailable()) {
344+
$defaultValue = $parameter->getDefaultValue();
345+
if (is_string($defaultValue)) {
346+
$parameterInfo['defaultValue'] = $parameter->getDefaultValue();
347+
} elseif ($defaultValue === null) {
348+
$parameterInfo['defaultValue'] = $this->_getNullDefaultValue();
349+
} else {
350+
$parameterInfo['defaultValue'] = $defaultValue;
351+
}
390352
}
391353

392354
return $parameterInfo;

0 commit comments

Comments
 (0)