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

Decoupling controller functionality #324

Open
sashman opened this issue Jan 17, 2018 · 1 comment
Open

Decoupling controller functionality #324

sashman opened this issue Jan 17, 2018 · 1 comment

Comments

@sashman
Copy link

sashman commented Jan 17, 2018

Hey,

I'm very interested in coherence and the functionality it provides, however, I'd like to experiment with combining its functionality with other frameworks, for example ueberauth, or just in the case where I would like to use my customer controllers.

I have noticed that a lot of the meat is inside the coherence controllers, for example in order to fully create a new session you require to use Coherence.SessionController.create/2. Would it be a good idea to separate this functionality into a separate module so it could be used outside of coherence?

If this seems sensible I could start with a PR to pull out session functionality? I'm not 100% sure what the *_service.ex modules are intended for, but this would be a place I'd refactor the functionality to.

How does this sound?

@smpallen99
Copy link
Owner

I know I'm late on responding to this. I would be interested in a discussion around what you see.

I'm not a fan of the Service abstraction I was using for a while. Perhaps something else though.

You may want to do a quick proof of concept on 1 controller for something to discuss.

There is a change I would like to make to the generated controllers. Instead of a complete copy of the Coherence controllers, I would like to have them use a module that injects the actions with def overrides. This way, updating coherence may be a lot easier...

Perhaps there may be a good marriage of these two ideas.

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