stormpath / Turnstile

An authentication framework for Swift.
Apache License 2.0
165 stars 29 forks source link

Allow `createSession` to throw #18

Open hhanesand opened 7 years ago

hhanesand commented 7 years ago

As I was writing my implementation of the protocol SessionManager, I realized I needed the createSession to be able to throw errors. After I create my session, I need to persist it to the our database, and that introduces a source of possible thrown errors that can not be propagated back to the network stack as createSession can not throw.

Would it be possible to change the method signature of the createSession method from

func createSession(account: Account) -> String

to

func createSession(account: Account) throws -> String

?

This would allow me to return an error in the HTTP request that initiated the session creation if the save operation failed.

edjiang commented 7 years ago

Yeah, this makes sense. Let me look into this more tomorrow and see what we can do =]

hhanesand commented 7 years ago

I can throw a pull request your way if that makes things easier for you.

patched one together @ #20