Post-parser support for response map models.

This commit is contained in:
Bez Hermoso 2014-07-28 12:18:55 -07:00
parent 9824a6ba3c
commit a8221d4515

View File

@ -334,12 +334,21 @@ class ApiDocExtractor
$normalizedModel = $this->normalizeClassParameter($modelName); $normalizedModel = $this->normalizeClassParameter($modelName);
$parameters = array(); $parameters = array();
$supportedParsers = array();
foreach ($this->getParsers($normalizedModel) as $parser) { foreach ($this->getParsers($normalizedModel) as $parser) {
if ($parser->supports($normalizedModel)) { if ($parser->supports($normalizedModel)) {
$supportedParsers[] = $parser;
$parameters = $this->mergeParameters($parameters, $parser->parse($normalizedModel)); $parameters = $this->mergeParameters($parameters, $parser->parse($normalizedModel));
} }
} }
foreach ($supportedParsers as $parser) {
if ($parser instanceof PostParserInterface) {
$mp = $parser->postParse($normalizedModel, $parameters);
$parameters = $this->mergeParameters($parameters, $mp);
}
}
$parameters = $this->clearClasses($parameters); $parameters = $this->clearClasses($parameters);
$parameters = $this->generateHumanReadableTypes($parameters); $parameters = $this->generateHumanReadableTypes($parameters);