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

Remove PersistenceInterface inheritance from ImpersonationInterface #650

Merged
merged 1 commit into from
Dec 27, 2023

Conversation

segy
Copy link
Contributor

@segy segy commented Nov 29, 2023

solves #648

@dereuromark
Copy link
Member

Instead of changing the existing one, which is also somewhat BC breaking
Would it work to create your own StatelessImpersationInterface extends ImpersonationInterface instead?
And for your case just throw NotImplementedException instead in those methods of the PersistenceInterface?

@dereuromark
Copy link
Member

dereuromark commented Dec 15, 2023

I do agree that

extends AbstractAuthenticator implements PersistenceInterface, ImpersonationInterface

is not clean, though.
As it duplicates the interface contract for the persistence part.

As such, maybe the change is fine after all - given that the changelog could outline the behavior change.

It seems to work because

interface AuthenticationServiceInterface extends PersistenceInterface

so the now "removed" part of Persistence on Impersonation

class AuthenticationService implements AuthenticationServiceInterface, ImpersonationInterface

is covered by that interface.

@ADmad ADmad changed the base branch from 3.x to 3.next December 27, 2023 02:49
@dereuromark dereuromark merged commit 4e0a4f2 into cakephp:3.next Dec 27, 2023
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants