forked from cnizzardini/cakephp-swagger-bake
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSwaggerController.php
More file actions
35 lines (30 loc) · 1001 Bytes
/
SwaggerController.php
File metadata and controls
35 lines (30 loc) · 1001 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
declare(strict_types=1);
namespace SwaggerBake\Controller;
use Cake\Event\Event;
use SwaggerBake\Controller\Component\SwaggerUiComponent;
class SwaggerController extends AppController
{
/** @var SwaggerUiComponent */
public $SwaggerUi;
public function initialize(): void
{
parent::initialize(); // TODO: Change the autogenerated stub
$this->loadComponent('SwaggerBake.SwaggerUi');
}
/**
* Controller action for displaying built-in Swagger UI
*
* @return \Cake\Http\Response|null|void Renders view
*/
public function index()
{
$config = $this->SwaggerUi->getSwaggerBakeConfiguration();
$title = $config->getTitleFromYml();
$url = $config->getWebPath();
$this->set(compact('title','url'));
$doctype = $this->SwaggerUi->getDocType($this->request);
$this->viewBuilder()->setLayout($config->getLayout($doctype));
return $this->render($config->getView($doctype));
}
}