Skip to content

Dependencies not resolved properly when a GET is a consumer of a DELETE producer #970

@jsajal

Description

@jsajal

Description

I have a set of endpoints where resource lifecycle is asynchronous i.e every CRUD op is asynchronous.
For every endpoint, there is an operation API which returns a jobId , this jobId is then given to a status endpoint and finally the same jobId is used to fetch the result.

Example

POST

/v2/api/view/global

  • Schedule Global View job

      GET
      /v2/api/view/global/{jobId}/status
      - Get Global View job status
      
      GET
      /v2/api/view/global/{jobId}/result
      - Get Global View job result
    

DELETE

/v2/api/view/global/{id}/delete

  • Start a view deletion job.

GET
/v2/api/view/global/{id}/delete/{jobId}/status

  • View deletion job status.

Now dependency management works fine in case of POST where get global view status and get global view result takes in jobId as produced by the POST request but it doesn't work correctly in case of DELETE. I verified this because if i change /v2/api/view/global/{id}/delete from a DELETE endpoint to a POST endpoint, the dependency inference works fine and grammar is generated correctly.

It almost feels like that DELETE is wired to never have any downstream consumer. Let me know if you need example logs or grammar produced

Steps to reproduce

Explained above

Expected results

No response

Actual results

No response

Environment details

macOs, Python 3.11.4, dotnet 6.0.427, restler 9.3.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions