[aerogear-dev] [Android] Interfaces on Pipeline, Datamanager, and Authenticator

Summers Pittman supittma at redhat.com
Thu Nov 8 22:46:57 EST 2012


(See https://github.com/aerogear/aerogear-android/pull/33)[Yes it isn't coarsely separated, it is just a bunch of proof of concept stuff]

Right now in ag-android Pipeline and DataManager are final and concrete.  Authenticator is an interface implemented by the final class DefaultAuthenticator.  I have coded up a proposal where I've (among other things) split the other classes up.

Pros for Interface + final class:
Easier mocking for unit tests (thinking about users' unit tests not ours)
Better practice (is Josh Bloch is to be belived)

Cons:
Pipeline et all are entry point classes and we shouldn't encourage our users to write their own
We can make Pipeline et all non-final to allow users to mock them for their tests.

Thoughts from the list?


More information about the aerogear-dev mailing list