Skip to content

Commit de51535

Browse files
authored
Merge pull request #2594 from tarlepp/feat/open-api-annotations-to-attributes
Feat - Use Open API attributes instead of annotations
2 parents d516430 + fd27fa1 commit de51535

13 files changed

+60
-68
lines changed

config/packages/nelmio_api_doc.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ nelmio_api_doc:
1616
path_patterns:
1717
- ^/api/doc
1818
- ^/api/doc.json
19-
- ^/(auth|healthz|version|profile|localization)
19+
- ^/(healthz|version|v1/auth|v1/profile|v1/localization)
2020
internal:
2121
path_patterns: # an array of regexps
2222
- ^/[a-z]

src/Controller/v1/Localization/TimeZoneController.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,12 @@ public function __construct(
7676
],
7777
type: 'object'
7878
),
79-
example: ['en', 'fi']
79+
example: [
80+
'timezone' => 'Europe',
81+
'identifier' => 'Europe/Helsinki',
82+
'offset' => 'GMT+2:00',
83+
'value' => 'Europe/Helsinki',
84+
],
8085
),
8186
)]
8287
public function __invoke(): JsonResponse

src/Controller/v1/Profile/GroupsController.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,14 +44,13 @@ public function __construct(
4444
methods: [Request::METHOD_GET],
4545
)]
4646
#[IsGranted(AuthenticatedVoter::IS_AUTHENTICATED_FULLY)]
47-
#[OA\SecurityScheme(
48-
securityScheme: 'bearerAuth',
49-
type: 'http',
47+
#[OA\Parameter(
48+
name: 'Authorization',
5049
description: 'Authorization header',
51-
name: 'bearerAuth',
5250
in: 'header',
53-
bearerFormat: 'JWT',
54-
scheme: 'bearer',
51+
required: true,
52+
example: 'Bearer {token}',
53+
allowReserved: true,
5554
)]
5655
#[OA\Response(
5756
response: 200,

src/Controller/v1/Profile/IndexController.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -49,14 +49,13 @@ public function __construct(
4949
methods: [Request::METHOD_GET],
5050
)]
5151
#[IsGranted(AuthenticatedVoter::IS_AUTHENTICATED_FULLY)]
52-
#[OA\SecurityScheme(
53-
securityScheme: 'bearerAuth',
54-
type: 'http',
52+
#[OA\Parameter(
53+
name: 'Authorization',
5554
description: 'Authorization header',
56-
name: 'bearerAuth',
5755
in: 'header',
58-
bearerFormat: 'JWT',
59-
scheme: 'bearer',
56+
required: true,
57+
example: 'Bearer {token}',
58+
allowReserved: true,
6059
)]
6160
#[OA\Response(
6261
response: 200,

src/Controller/v1/Profile/RolesController.php

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,11 @@ public function __construct(
4242
methods: [Request::METHOD_GET],
4343
)]
4444
#[IsGranted(AuthenticatedVoter::IS_AUTHENTICATED_FULLY)]
45-
#[OA\SecurityScheme(
46-
securityScheme: 'bearerAuth',
47-
type: 'http',
45+
#[OA\Parameter(
46+
name: 'Authorization',
4847
description: 'Authorization header',
49-
name: 'bearerAuth',
5048
in: 'header',
51-
bearerFormat: 'JWT',
52-
scheme: 'bearer',
49+
example: 'Bearer {token}',
5350
)]
5451
#[OA\Response(
5552
response: 200,

src/Controller/v1/Role/InheritedRolesController.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,13 @@ public function __construct(
4848
methods: [Request::METHOD_GET],
4949
)]
5050
#[IsGranted(RoleEnum::ADMIN->value)]
51-
#[OA\SecurityScheme(
52-
securityScheme: 'bearerAuth',
53-
type: 'http',
51+
#[OA\Parameter(
52+
name: 'Authorization',
5453
description: 'Authorization header',
55-
name: 'bearerAuth',
5654
in: 'header',
57-
bearerFormat: 'JWT',
58-
scheme: 'bearer',
55+
required: true,
56+
example: 'Bearer {token}',
57+
allowReserved: true,
5958
)]
6059
#[OA\Response(
6160
response: 200,

src/Controller/v1/User/AttachUserGroupController.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -58,14 +58,13 @@ public function __construct(
5858
)]
5959
#[IsGranted(Role::ROOT->value)]
6060
#[OA\Tag(name: 'User Management')]
61-
#[OA\SecurityScheme(
62-
securityScheme: 'bearerAuth',
63-
type: 'http',
61+
#[OA\Parameter(
62+
name: 'Authorization',
6463
description: 'Authorization header',
65-
name: 'bearerAuth',
6664
in: 'header',
67-
bearerFormat: 'JWT',
68-
scheme: 'bearer',
65+
required: true,
66+
example: 'Bearer {token}',
67+
allowReserved: true,
6968
)]
7069
#[OA\Parameter(name: 'user', description: 'User GUID', in: 'path', required: true)]
7170
#[OA\Parameter(name: 'userGroup', description: 'User Group GUID', in: 'path', required: true)]

src/Controller/v1/User/DetachUserGroupController.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,13 @@ public function __construct(
5757
)]
5858
#[IsGranted(Role::ROOT->value)]
5959
#[OA\Tag(name: 'User Management')]
60-
#[OA\SecurityScheme(
61-
securityScheme: 'bearerAuth',
62-
type: 'http',
60+
#[OA\Parameter(
61+
name: 'Authorization',
6362
description: 'Authorization header',
64-
name: 'bearerAuth',
6563
in: 'header',
66-
bearerFormat: 'JWT',
67-
scheme: 'bearer',
64+
required: true,
65+
example: 'Bearer {token}',
66+
allowReserved: true,
6867
)]
6968
#[OA\Parameter(name: 'user', description: 'User GUID', in: 'path', required: true)]
7069
#[OA\Parameter(name: 'userGroup', description: 'User Group GUID', in: 'path', required: true)]

src/Controller/v1/User/UserGroupsController.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -49,14 +49,13 @@ public function __construct(
4949
)]
5050
#[IsGranted(new Expression('is_granted("IS_USER_HIMSELF", object) or "ROLE_ROOT" in role_names'), 'user')]
5151
#[OA\Tag(name: 'User Management')]
52-
#[OA\SecurityScheme(
53-
securityScheme: 'bearerAuth',
54-
type: 'http',
52+
#[OA\Parameter(
53+
name: 'Authorization',
5554
description: 'Authorization header',
56-
name: 'bearerAuth',
5755
in: 'header',
58-
bearerFormat: 'JWT',
59-
scheme: 'bearer',
56+
required: true,
57+
example: 'Bearer {token}',
58+
allowReserved: true,
6059
)]
6160
#[OA\Response(
6261
response: 200,

src/Controller/v1/User/UserRolesController.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,14 +47,13 @@ public function __construct(
4747
)]
4848
#[IsGranted(new Expression('is_granted("IS_USER_HIMSELF", object) or "ROLE_ROOT" in role_names'), 'user')]
4949
#[OA\Tag(name: 'User Management')]
50-
#[OA\SecurityScheme(
51-
securityScheme: 'bearerAuth',
52-
type: 'http',
50+
#[OA\Parameter(
51+
name: 'Authorization',
5352
description: 'Authorization header',
54-
name: 'bearerAuth',
5553
in: 'header',
56-
bearerFormat: 'JWT',
57-
scheme: 'bearer',
54+
required: true,
55+
example: 'Bearer {token}',
56+
allowReserved: true,
5857
)]
5958
#[OA\Response(
6059
response: 200,

src/Controller/v1/UserGroup/AttachUserController.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,13 @@ public function __construct(
5757
)]
5858
#[IsGranted(Role::ROOT->value)]
5959
#[OA\Tag(name: 'UserGroup Management')]
60-
#[OA\SecurityScheme(
61-
securityScheme: 'bearerAuth',
62-
type: 'http',
60+
#[OA\Parameter(
61+
name: 'Authorization',
6362
description: 'Authorization header',
64-
name: 'bearerAuth',
6563
in: 'header',
66-
bearerFormat: 'JWT',
67-
scheme: 'bearer',
64+
required: true,
65+
example: 'Bearer {token}',
66+
allowReserved: true,
6867
)]
6968
#[OA\Parameter(name: 'userGroup', description: 'User Group GUID', in: 'path', required: true)]
7069
#[OA\Parameter(name: 'user', description: 'User GUID', in: 'path', required: true)]

src/Controller/v1/UserGroup/DetachUserController.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,13 @@ public function __construct(
5757
)]
5858
#[IsGranted(Role::ROOT->value)]
5959
#[OA\Tag(name: 'UserGroup Management')]
60-
#[OA\SecurityScheme(
61-
securityScheme: 'bearerAuth',
62-
type: 'http',
60+
#[OA\Parameter(
61+
name: 'Authorization',
6362
description: 'Authorization header',
64-
name: 'bearerAuth',
6563
in: 'header',
66-
bearerFormat: 'JWT',
67-
scheme: 'bearer',
64+
required: true,
65+
example: 'Bearer {token}',
66+
allowReserved: true,
6867
)]
6968
#[OA\Parameter(name: 'userGroup', description: 'User Group GUID', in: 'path', required: true)]
7069
#[OA\Parameter(name: 'user', description: 'User GUID', in: 'path', required: true)]

src/Controller/v1/UserGroup/UsersController.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -54,14 +54,13 @@ public function __construct(
5454
)]
5555
#[IsGranted(Role::ROOT->value)]
5656
#[OA\Tag(name: 'UserGroup Management')]
57-
#[OA\SecurityScheme(
58-
securityScheme: 'bearerAuth',
59-
type: 'http',
57+
#[OA\Parameter(
58+
name: 'Authorization',
6059
description: 'Authorization header',
61-
name: 'bearerAuth',
6260
in: 'header',
63-
bearerFormat: 'JWT',
64-
scheme: 'bearer',
61+
required: true,
62+
example: 'Bearer {token}',
63+
allowReserved: true,
6564
)]
6665
#[OA\Response(
6766
response: 200,

0 commit comments

Comments
 (0)