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

Unify ActionSource and ActionSource2 #1832

Closed
tandraschko opened this issue Jul 27, 2023 · 12 comments
Closed

Unify ActionSource and ActionSource2 #1832

tandraschko opened this issue Jul 27, 2023 · 12 comments
Labels
mojarra-implemented API issue implemented by Mojarra myfaces-implemented API issue implemented by MyFaces
Milestone

Comments

@tandraschko
Copy link

anyone knows the history?

@jasondlee
Copy link
Contributor

IIRC, there was a need to extend ActionSource, but changing it directly would break any code that implemented it, so the new interface was created. Since default methods weren't a thing then, anything added to ActionSource would have to be implemented explicitly by impls, so the choice was made to maintain backwards compatibility and create the new interface.

@tandraschko tandraschko changed the title Unify classes like ActionSource and ActionSource2? Unify ActionSource and ActionSource2? Jul 27, 2023
@tandraschko
Copy link
Author

thanks!
@BalusC @arjantijms should we deprecate ActionSource2 for 4.1 then and add those methods to ActionSource?

@arjantijms
Copy link
Contributor

@tandraschko yes, sounds like a good plan!

@BalusC
Copy link
Member

BalusC commented Jul 28, 2023

If there are breaking changes isn't 5.0 a more correct target?

@tandraschko
Copy link
Author

I would deprecate in 4.1 and remove 5.0

@tandraschko
Copy link
Author

@BalusC i would suggest to add the get/setActionExpression to ActionSource and deprecate ActionSource2

@tandraschko
Copy link
Author

are you guys ok with that? i can prototype in MF

@BalusC
Copy link
Member

BalusC commented Sep 2, 2023

Go ahead. Basically just add new API introduced in ActionSource2 as default methods of ActionSource interface.

@BalusC
Copy link
Member

BalusC commented Oct 1, 2023

While implementing this I stumbled upon jakarta.faces.view.ActionSource2AttachedObjectHandler and jakarta.faces.view.ActionSource2AttachedObjectTarget, with the unfortunate 2 in the names. And there are no ActionSourceAttachedObjectHandler / ActionSourceAttachedObjectTarget classes so dropping the 2 will definitely be a breaking change on that. We should copy them into ones without 2 in the name and deprecate the originals.

@BalusC
Copy link
Member

BalusC commented Oct 1, 2023

I created a PR ^^

@tandraschko
Copy link
Author

Looks good

@tandraschko tandraschko added the mojarra-implemented API issue implemented by Mojarra label Oct 12, 2023
@tandraschko tandraschko added this to the 4.1 milestone Oct 12, 2023
@tandraschko
Copy link
Author

will start implementing in MF now

@tandraschko tandraschko changed the title Unify ActionSource and ActionSource2? Unify ActionSource and ActionSource2 Oct 12, 2023
@tandraschko tandraschko added the myfaces-implemented API issue implemented by MyFaces label Oct 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
mojarra-implemented API issue implemented by Mojarra myfaces-implemented API issue implemented by MyFaces
Projects
None yet
Development

No branches or pull requests

4 participants