Skip to content

Commit 6263aa6

Browse files
committed
#101098 Request class name with dir
1 parent db8376a commit 6263aa6

File tree

3 files changed

+16
-10
lines changed

3 files changed

+16
-10
lines changed

src/Generators/BaseGenerator.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,4 +111,18 @@ private function formattedGlobalParams(): array
111111

112112
return $params;
113113
}
114+
115+
protected function getActualClassNameAndNamespace(string $className, string $namespace): array
116+
{
117+
$parseClassName = explode('/', $className);
118+
if (count($parseClassName) > 1) {
119+
$className = array_pop($parseClassName);
120+
$namespace .= '\\' . implode('\\', $parseClassName);
121+
}
122+
123+
return [
124+
$className,
125+
$namespace
126+
];
127+
}
114128
}

src/Generators/ControllersGenerator.php

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,7 @@ private function extractControllers(SpecObjectInterface $specObject): array
5353
$requestClassName = $route->{'x-lg-request-class-name'} ?? ucfirst($route->operationId) . 'Request';
5454
$requestNamespace = $this->getReplacedNamespace($handler->namespace, 'Controllers', 'Requests');
5555

56-
$parseClassName = explode('/', $requestClassName);
57-
if (count($parseClassName) > 1) {
58-
$requestClassName = array_pop($parseClassName);
59-
$requestNamespace .= '\\' . implode('\\', $parseClassName);
60-
}
56+
list($requestClassName, $requestNamespace) = $this->getActualClassNameAndNamespace($requestClassName, $requestNamespace);
6157
$requestNamespace .= '\\' . ucfirst($requestClassName);
6258

6359
$controllers[$fqcn]['requestsNamespaces'][] = $requestNamespace;

src/Generators/RequestsGenerator.php

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,7 @@ protected function extractRequests(SpecObjectInterface $specObject, array $names
5656
continue;
5757
}
5858

59-
$parseClassName = explode('/', $className);
60-
if (count($parseClassName) > 1) {
61-
$className = array_pop($parseClassName);
62-
$newNamespace .= '\\' . implode('\\', $parseClassName);
63-
}
59+
list($className, $newNamespace) = $this->getActualClassNameAndNamespace($className, $newNamespace);
6460

6561
$validationRules = '//';
6662
$usesEnums = '';

0 commit comments

Comments
 (0)