-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathController.php
More file actions
39 lines (33 loc) · 992 Bytes
/
Controller.php
File metadata and controls
39 lines (33 loc) · 992 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
36
37
38
39
<?php
declare(strict_types=1);
namespace Tobion\OpenApiSymfonyRouting\Tests\Attributes\Fixtures\PathParameterPattern;
use mysql_xdevapi\Schema;
use OpenApi\Attributes as OA;
#[OA\Info(title: "My API", version: "1.0")]
class Controller
{
#[OA\Get(path: "/foo/{id}")]
#[OA\Response(response:"200", description:"Success")]
public function noPattern(
#[OA\Parameter]string $id
): void
{
}
#[OA\Get(path: "/baz/{id}")]
#[OA\Response(response:"200", description:"Success")]
public function noSchema(
#[OA\Parameter]string $id
): void
{
}
#[OA\Get(path: "/bar/{id}/{type}")]
#[OA\Response(response:"200", description:"Success")]
public function withPattern(
#[OA\PathParameter(required: true, schema: new OA\Schema(pattern:"^[a-zA-Z0-9]+$"))]
string $id,
#[OA\PathParameter(required: true, schema: new OA\Schema(enum: ["internal", "external"]))]
string $type
): void
{
}
}