@@ -29,6 +29,9 @@ class ApiResource
29
29
protected $ uriTemplate ;
30
30
protected $ shortName ;
31
31
protected $ description ;
32
+ /**
33
+ * @var string|string[]|null
34
+ */
32
35
protected $ types ;
33
36
/**
34
37
* @var array|mixed|string|null
@@ -121,48 +124,48 @@ class ApiResource
121
124
protected $ extraProperties ;
122
125
123
126
/**
124
- * @param array| null $types The RDF types of this resource
125
- * @param mixed|null $operations
126
- * @param array|string|null $formats https://api-platform.com/docs/core/content-negotiation/#configuring-formats-for-a-specific-resource-or-operation
127
- * @param array|string|null $inputFormats https://api-platform.com/docs/core/content-negotiation/#configuring-formats-for-a-specific-resource-or-operation
128
- * @param array|string|null $outputFormats https://api-platform.com/docs/core/content-negotiation/#configuring-formats-for-a-specific-resource-or-operation
129
- * @param mixed|null $uriVariables
130
- * @param string|null $routePrefix https://api-platform.com/docs/core/operations/#prefixing-all-routes-of-all-operations
131
- * @param string|null $sunset https://api-platform.com/docs/core/deprecations/#setting-the-sunset-http-header-to-indicate-when-a-resource-or-an-operation-will-be-removed
132
- * @param string|null $deprecationReason https://api-platform.com/docs/core/deprecations/#deprecating-resource-classes-operations-and-properties
133
- * @param array|null $cacheHeaders https://api-platform.com/docs/core/performance/#setting-custom-http-cache-headers
134
- * @param array|null $normalizationContext https://api-platform.com/docs/core/serialization/#using-serialization-groups
135
- * @param array|null $denormalizationContext https://api-platform.com/docs/core/serialization/#using-serialization-groups
136
- * @param string[]|null $hydraContext https://api-platform.com/docs/core/extending-jsonld-context/#hydra
137
- * @param array|null $openapiContext https://api-platform.com/docs/core/openapi/#using-the-openapi-and-swagger-contexts
138
- * @param array|null $validationContext https://api-platform.com/docs/core/validation/#using-validation-groups
139
- * @param string[]|null $filters https://api-platform.com/docs/core/filters/#doctrine-orm-and-mongodb-odm-filters
140
- * @param bool|null $elasticsearch https://api-platform.com/docs/core/elasticsearch/
141
- * @param mixed|null $mercure https://api-platform.com/docs/core/mercure
142
- * @param mixed|null $messenger https://api-platform.com/docs/core/messenger/#dispatching-a-resource-through-the-message-bus
143
- * @param mixed|null $input https://api-platform.com/docs/core/dto/#specifying-an-input-or-an-output-data-representation
144
- * @param mixed|null $output https://api-platform.com/docs/core/dto/#specifying-an-input-or-an-output-data-representation
145
- * @param array|null $order https://api-platform.com/docs/core/default-order/#overriding-default-order
146
- * @param bool|null $fetchPartial https://api-platform.com/docs/core/performance/#fetch-partial
147
- * @param bool|null $forceEager https://api-platform.com/docs/core/performance/#force-eager
148
- * @param bool|null $paginationClientEnabled https://api-platform.com/docs/core/pagination/#for-a-specific-resource-1
149
- * @param bool|null $paginationClientItemsPerPage https://api-platform.com/docs/core/pagination/#for-a-specific-resource-3
150
- * @param bool|null $paginationClientPartial https://api-platform.com/docs/core/pagination/#for-a-specific-resource-6
151
- * @param array|null $paginationViaCursor https://api-platform.com/docs/core/pagination/#cursor-based-pagination
152
- * @param bool|null $paginationEnabled https://api-platform.com/docs/core/pagination/#for-a-specific-resource
153
- * @param bool|null $paginationFetchJoinCollection https://api-platform.com/docs/core/pagination/#controlling-the-behavior-of-the-doctrine-orm-paginator
154
- * @param int|null $paginationItemsPerPage https://api-platform.com/docs/core/pagination/#changing-the-number-of-items-per-page
155
- * @param int|null $paginationMaximumItemsPerPage https://api-platform.com/docs/core/pagination/#changing-maximum-items-per-page
156
- * @param bool|null $paginationPartial https://api-platform.com/docs/core/performance/#partial-pagination
157
- * @param string|null $paginationType https://api-platform.com/docs/core/graphql/#using-the-page-based-pagination
158
- * @param string|null $security https://api-platform.com/docs/core/security
159
- * @param string|null $securityMessage https://api-platform.com/docs/core/security/#configuring-the-access-control-error-message
160
- * @param string|null $securityPostDenormalize https://api-platform.com/docs/core/security/#executing-access-control-rules-after-denormalization
161
- * @param string|null $securityPostDenormalizeMessage https://api-platform.com/docs/core/security/#configuring-the-access-control-error-message
162
- * @param string $securityPostValidation https://api-platform.com/docs/core/security/#executing-access-control-rules-after-validtion
163
- * @param string $securityPostValidationMessage https://api-platform.com/docs/core/security/#configuring-the-access-control-error-message
164
- * @param mixed| null $provider
165
- * @param mixed| null $processor
127
+ * @param string|string[]| null $types The RDF types of this resource
128
+ * @param mixed|null $operations
129
+ * @param array|string|null $formats https://api-platform.com/docs/core/content-negotiation/#configuring-formats-for-a-specific-resource-or-operation
130
+ * @param array|string|null $inputFormats https://api-platform.com/docs/core/content-negotiation/#configuring-formats-for-a-specific-resource-or-operation
131
+ * @param array|string|null $outputFormats https://api-platform.com/docs/core/content-negotiation/#configuring-formats-for-a-specific-resource-or-operation
132
+ * @param mixed|null $uriVariables
133
+ * @param string|null $routePrefix https://api-platform.com/docs/core/operations/#prefixing-all-routes-of-all-operations
134
+ * @param string|null $sunset https://api-platform.com/docs/core/deprecations/#setting-the-sunset-http-header-to-indicate-when-a-resource-or-an-operation-will-be-removed
135
+ * @param string|null $deprecationReason https://api-platform.com/docs/core/deprecations/#deprecating-resource-classes-operations-and-properties
136
+ * @param array|null $cacheHeaders https://api-platform.com/docs/core/performance/#setting-custom-http-cache-headers
137
+ * @param array|null $normalizationContext https://api-platform.com/docs/core/serialization/#using-serialization-groups
138
+ * @param array|null $denormalizationContext https://api-platform.com/docs/core/serialization/#using-serialization-groups
139
+ * @param string[]|null $hydraContext https://api-platform.com/docs/core/extending-jsonld-context/#hydra
140
+ * @param array|null $openapiContext https://api-platform.com/docs/core/openapi/#using-the-openapi-and-swagger-contexts
141
+ * @param array|null $validationContext https://api-platform.com/docs/core/validation/#using-validation-groups
142
+ * @param string[]|null $filters https://api-platform.com/docs/core/filters/#doctrine-orm-and-mongodb-odm-filters
143
+ * @param bool|null $elasticsearch https://api-platform.com/docs/core/elasticsearch/
144
+ * @param mixed|null $mercure https://api-platform.com/docs/core/mercure
145
+ * @param mixed|null $messenger https://api-platform.com/docs/core/messenger/#dispatching-a-resource-through-the-message-bus
146
+ * @param mixed|null $input https://api-platform.com/docs/core/dto/#specifying-an-input-or-an-output-data-representation
147
+ * @param mixed|null $output https://api-platform.com/docs/core/dto/#specifying-an-input-or-an-output-data-representation
148
+ * @param array|null $order https://api-platform.com/docs/core/default-order/#overriding-default-order
149
+ * @param bool|null $fetchPartial https://api-platform.com/docs/core/performance/#fetch-partial
150
+ * @param bool|null $forceEager https://api-platform.com/docs/core/performance/#force-eager
151
+ * @param bool|null $paginationClientEnabled https://api-platform.com/docs/core/pagination/#for-a-specific-resource-1
152
+ * @param bool|null $paginationClientItemsPerPage https://api-platform.com/docs/core/pagination/#for-a-specific-resource-3
153
+ * @param bool|null $paginationClientPartial https://api-platform.com/docs/core/pagination/#for-a-specific-resource-6
154
+ * @param array|null $paginationViaCursor https://api-platform.com/docs/core/pagination/#cursor-based-pagination
155
+ * @param bool|null $paginationEnabled https://api-platform.com/docs/core/pagination/#for-a-specific-resource
156
+ * @param bool|null $paginationFetchJoinCollection https://api-platform.com/docs/core/pagination/#controlling-the-behavior-of-the-doctrine-orm-paginator
157
+ * @param int|null $paginationItemsPerPage https://api-platform.com/docs/core/pagination/#changing-the-number-of-items-per-page
158
+ * @param int|null $paginationMaximumItemsPerPage https://api-platform.com/docs/core/pagination/#changing-maximum-items-per-page
159
+ * @param bool|null $paginationPartial https://api-platform.com/docs/core/performance/#partial-pagination
160
+ * @param string|null $paginationType https://api-platform.com/docs/core/graphql/#using-the-page-based-pagination
161
+ * @param string|null $security https://api-platform.com/docs/core/security
162
+ * @param string|null $securityMessage https://api-platform.com/docs/core/security/#configuring-the-access-control-error-message
163
+ * @param string|null $securityPostDenormalize https://api-platform.com/docs/core/security/#executing-access-control-rules-after-denormalization
164
+ * @param string|null $securityPostDenormalizeMessage https://api-platform.com/docs/core/security/#configuring-the-access-control-error-message
165
+ * @param string $securityPostValidation https://api-platform.com/docs/core/security/#executing-access-control-rules-after-validtion
166
+ * @param string $securityPostValidationMessage https://api-platform.com/docs/core/security/#configuring-the-access-control-error-message
167
+ * @param string|callable| null $provider
168
+ * @param string|callable| null $processor
166
169
*/
167
170
public function __construct (
168
171
?string $ uriTemplate = null ,
@@ -233,7 +236,7 @@ public function __construct(
233
236
$ this ->uriTemplate = $ uriTemplate ;
234
237
$ this ->shortName = $ shortName ;
235
238
$ this ->description = $ description ;
236
- $ this ->types = $ types ;
239
+ $ this ->types = null === $ types ? null : ( array ) $ types ;
237
240
$ this ->formats = $ formats ;
238
241
$ this ->inputFormats = $ inputFormats ;
239
242
$ this ->outputFormats = $ outputFormats ;
0 commit comments