Skip to content

Now written in Java!

Latest
Compare
Choose a tag to compare
@brianegan brianegan released this 25 Apr 22:15
· 30 commits to master since this release

This is a big change! Bansa is now written in Java, and no longer has a dependency on Rx. This drops the method count dramatically, and makes Bansa far easier to use in a normal Java Android app.

There is also a companion version available, called bansaKotlin, that provides more idiomatic interfaces for the Kotlin programming language.

I've also tried to keep the migration path simple. If you've been using Bansa, it shouldn't be a big rewrite of the way you were doing things before. The most important changes:

  • Reducers are no longer lambdas, but proper classes. I.e. move from { state: MyState, action: Any ->... to Reducer<MyState, Any> { state, action ->...
  • Bansa now provides it's own small Subscriber and Subscription interfaces, replacing RxJava versions.
  • The constructor for creating a store using Middleware has been simplified. createStore(intialState, reducer) is now BaseStore(initialState, reducer, Middleware...)