- Fix
IllegalAccessException
inNullObject
(Closes #55). - Bump RxJava version to
1.3.4
. - Plugin: rename
split
tosplitPackages
- Small improvements
- Introduce a plugin for Gradle (Closes #50).
- Add support for JSR-305
Nullable
/Nonnull
annotations (Closes #49).
- Use dynamic proxying for nullsafe using view and router. (Closes #44).
- Added constructors for
Presenter
andViperPresenter
. (Closes #41). - Bump RxJava version to
1.2.4
. - Change root package
viper
->com.dzaitsev.rxviper
. (Closes #39).
- Now we have two types of presenters: simple
Presenter
for just MVP (it manages only View) andViperPresenter
for VIPER that additionally managesRouter
. (Closes #36). Mapper
implementsFunc1
. (Closes #37).
- Make
Presenter#getView()
andPresenter#getRouter()
protected. (Closes #31). - Change group id
rxviper
->com.dzaitsev.rxviper
- Licensed files
- update JavaDocs.
- Removed deprecated code.
- Updated RxJava version to 1.1.5.
- Prevent
Presenter
from taking nullable views and routers. - Do not hold strong references to view and router in
Presenter
. (Closes #18). - Added JavaDoc. (Closes #19).
- Ensure presenter drops the same view and router that were attached. (Closes #22).
Interactor.execute(lambda, param)
respects passed param. (Closes #9).
- Protect
Presenter
's methods from overriding. (Closes #7).
- Overload
Interactor#execute()
methods to allow using lambdas. (Closes #3). Interactor
implementsrx.Subscription
. (Closes #4).- Make
Interactor
'sexecute()
methodsfinal
. (Closes #5). - Removed
viper.View
in favor ofViewCallbacks
. (Closes #6).
View
was deprecated to avoid confusing naming withandroid.View
- Add
ViewCallbacks
interface instead.
- Remove
final
modifier fromInteractor#execute(subscriber, param)
(Closes #1) - Add
Interactor#execute(subscriber)
(Closes #2)
- Fixed visibility for
Presenter#dropView()
,Presenter#getRouter()
,Presenter#getView()
- Submitted first usable version