Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Make ApiResource shorter #5076

@tourze

Description

@tourze

Sometime we need to write a long code like :

#[ApiResource(
    routePrefix: '/live-chat',
    normalizationContext: ['groups' => ['restful_read']],
    denormalizationContext: ['groups' => ['restful_write']],
    openapiContext: ['tags' => ['LiveChat']],
    order: ['id' => 'DESC'],
    security: 'is_granted("ROLE_OPERATOR")'
)]

It is too long for person to read.
Can we just create a new Attribute class, class RestfulApi extends ApiResource, and move some normal logic into consturctor?
Then we just add code like this:

#[RestfulApi(
    routePrefix: '/live-chat',
)]

Related code:

if ($reflectionClass->getAttributes(ApiResource::class)) {

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions