Allow to define the input name for the JmsMetadataParser

This commit is contained in:
Vitaliy Chesnokov 2019-04-24 16:46:11 +03:00
parent b7464a93b9
commit 81274509da
No known key found for this signature in database
GPG Key ID: FD23DF1B48ECC3EB

View File

@ -87,7 +87,30 @@ class JmsMetadataParser implements ParserInterface, PostParserInterface
$className = $input['class'];
$groups = $input['groups'];
return $this->doParse($className, array(), $groups);
$result = $this->doParse($className, array(), $groups);
if (!isset($input['name']) || empty($input['name'])) {
return $result;
}
if (class_exists($className)) {
$parts = explode('\\', $className);
$dataType = sprintf('object (%s)', end($parts));
} else {
$dataType = sprintf('object (%s)', $className);
}
return array(
$input['name'] => array(
'required' => null,
'readonly' => null,
'default' => null,
'dataType' => $dataType,
'actualType' => DataTypes::MODEL,
'subType' => $dataType,
'children' => $result,
),
);
}
/**