Skip to content

WIP: Open Feign must support multiple interface inheritance #413

Open
@silkentrance

Description

@silkentrance

WIP Notice

I am currently working on this feature request across multiple repositories, so this this will be updated multiple times. Once finished, this notice will be removed. As soon as this notice gets removed, there will be a PR for spring-cloud-openfeign.

Problem

The current problem with OpenFeign is that one cannot inherit from multiple interfaces. And while the current contract,, i.e. single inheritance of annotated interfaces, should be supported in a backward compatitble way, I see no reason why one should prevent the user to inherit from multiple interfaces or marker interfaces even, and recursively so.

Describe the solution you'd like

Feign client interfaces should support multi-level, multiple inheritance.

Describe alternatives you've considered

There are no alternatives unless you come up with a better solution to the problem.

Additional context

I am currently working on a PR for the open feign project to incorporate such measures, meaning that the Contract.BaseContract functionality will be extended so that the IMO artificial restriction on inheritance will be removed altogether.

This will require no changes to spring-cloud except for updating the openfeign dependency.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions