Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make spring-cloud-bindings API extensible & reusable #52

Open
jxblum opened this issue Dec 10, 2020 · 3 comments
Open

Make spring-cloud-bindings API extensible & reusable #52

jxblum opened this issue Dec 10, 2020 · 3 comments
Labels
question Further information is requested

Comments

@jxblum
Copy link

jxblum commented Dec 10, 2020

As it stands currently, this project offers a nice API, but is not quite a Framework that others can easily reuse and extend.

This stems from 2 noticeable limitations:

  1. Both the Guards and MapMapper types are package-private, making them difficult to reuse in external implementations of the BindingsPropertiesProcessor interface for convenience.

  2. The Binding and Bindings classes really should not be final as it makes them difficult to mock, or at least spy on in a true Unit Test.

Making these changes will make the project more Framework-like, being 1) reusable and 2) "open for extension, but closed for modification".

Thank you for the consideration.

@jxblum
Copy link
Author

jxblum commented Dec 10, 2020

For one such example of an extension outside the spring-cloud-bindings project itself, see here.

@dmikusa
Copy link
Contributor

dmikusa commented Aug 21, 2021

Hi @jxblum I don't have any objection to the change, just curious as to why you would not instead consider submitting a PR to include your extension bindings here? That way they are all in one place.

Alternatively, we'd need to maintain a list of known external extensions so that users can easily discover what else exists, outside of this project. It's not insurmountable, we could list them in the README.

Just curious your rationale for wanting to maintain the bindings elsewhere. Thanks

@dmikusa dmikusa added the question Further information is requested label Aug 21, 2021
@dmikusa
Copy link
Contributor

dmikusa commented Mar 21, 2022

See for additional context, spring-projects/spring-boot-data-geode#95.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants