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

Formal Logger, Auth and Session Classes #1310

Open
mariuswilms opened this issue Apr 11, 2017 · 2 comments
Open

Formal Logger, Auth and Session Classes #1310

mariuswilms opened this issue Apr 11, 2017 · 2 comments

Comments

@mariuswilms
Copy link
Member

The Cache class set the standard on how an formal adapter based class inside the framework looks like. Catalog already shares much of this formalism. Currently Logger, Auth and Session do not. We want to bring these classes on par with Cache. This will again bring us closer to homogeneous API design (for which the framework is well know for) and enable us to make changes to adapter based classes later easily in one go.

  • make specifying the configuration name a requirement
  • all methods take the configuration name as first parameter
  • when needed, classes may support true for name to operate on all configurations (see Catalog::read())
  • adapter methods should not return an implementation closure but simply execute immediately
  • per adapter filters are not supported anymore, instead the manager class’ methods should be filtered
  • abstract base Adapter class exists (see storage\cache\Adapter) and all class adapters inherit from it. This make creating adapters in userland a lot easier, as the base class is the documentation for which methods to implement.
  • Session to support multi-key operations for read/write/delete (see Cache)
@d1rk
Copy link
Member

d1rk commented Mar 13, 2018

@DavidPersson I could help with that. Can we have a chat about that?

@mariuswilms
Copy link
Member Author

@d1rk Ping me in case more information is needed. If you like to take this ticket, feel free to self-assign yourself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants