Allow to define the input name for the JmsMetadataParser

This commit is contained in:
Ilyas Salikhov 2014-11-02 19:18:49 +03:00
parent 391d0e32d0
commit c6dbdc726e
2 changed files with 24 additions and 2 deletions

View File

@ -87,7 +87,30 @@ class JmsMetadataParser implements ParserInterface, PostParserInterface
$className = $input['class']; $className = $input['class'];
$groups = $input['groups']; $groups = $input['groups'];
return $this->doParse($className, array(), $groups); $result = $this->doParse($className, array(), $groups);
if (!isset($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' => false,
'readonly' => false,
'default' => null,
'dataType' => $dataType,
'actualType' => DataTypes::MODEL,
'subType' => $dataType,
'children' => $result,
),
);
} }
/** /**

View File

@ -86,7 +86,6 @@ class ValidationParser implements ParserInterface, PostParserInterface
$input['name'] => array( $input['name'] => array(
'required' => false, 'required' => false,
'readonly' => false, 'readonly' => false,
'description' => '',
'default' => null, 'default' => null,
'dataType' => $dataType, 'dataType' => $dataType,
'actualType' => DataTypes::MODEL, 'actualType' => DataTypes::MODEL,