florent37 / Rx.observe
Licence: apache-2.0
Transform any method to an Rx Observable ! (VIPER)
Stars: ✭ 34
Programming Languages
java
68154 projects - #9 most used programming language
Projects that are alternatives of or similar to Rx.observe
android-online-course
Android Online Course
Stars: ✭ 22 (-35.29%)
Mutual labels: rxjava, rxjava2, rxjava-android
Android Kotlin Mvp Architecture
This repository contains a detailed sample app that implements MVP architecture in Kotlin using Dagger2, Room, RxJava2, FastAndroidNetworking and PlaceholderView
Stars: ✭ 615 (+1708.82%)
Mutual labels: rxjava, rxjava2, rxjava-android
RxRetroAPICall
API call example using Retrofit and RxJava2
Stars: ✭ 16 (-52.94%)
Mutual labels: rxjava, rxjava2, rxjava-android
Rxjavapriorityscheduler
RxPS - RxJavaPriorityScheduler - A RxJava Priority Scheduler library for Android and Java applications
Stars: ✭ 138 (+305.88%)
Mutual labels: rxjava, rxjava2, rxjava-android
Rxcache
简单一步,缓存搞定。这是一个专用于 RxJava,解决 Android 中对任何 Observable 发出的结果做缓存处理的框架
Stars: ✭ 377 (+1008.82%)
Mutual labels: rxjava, rxjava2, rxjava-android
Android Clean Architecture Boilerplate
Apply clean architecture on Android
Stars: ✭ 141 (+314.71%)
Mutual labels: rxjava, rxjava2, architecture
Rxanime
Visualizer to understand RxJava operators
Stars: ✭ 261 (+667.65%)
Mutual labels: rxjava, rxjava2, rxjava-android
T Mvp
Android AOP Architecture by Apt, AspectJ, Javassisit, based on Realm+Databinding+MVP+Retrofit+Rxjava2
Stars: ✭ 2,740 (+7958.82%)
Mutual labels: rxjava, rxjava2, apt
Grox
Grox helps to maintain the state of Java / Android apps.
Stars: ✭ 336 (+888.24%)
Mutual labels: rxjava, rxjava2, rxjava-android
Freezer
A simple & fluent Android ORM, how can it be easier ? RxJava2 compatible
Stars: ✭ 326 (+858.82%)
Mutual labels: rxjava, rxjava2, rxjava-android
Mvpframes
整合大量主流开源项目并且可高度配置化的 Android MVP 快速集成框架,支持 AndroidX
Stars: ✭ 100 (+194.12%)
Mutual labels: rxjava, rxjava2, rxjava-android
Rxjava2 Operators Magician
你用不惯 RxJava,只因缺了这把钥匙 🔑 You are not used to RxJava, just because of the lack of this key.
Stars: ✭ 868 (+2452.94%)
Mutual labels: rxjava, rxjava2, rxjava-android
Thirtyinch
a MVP library for Android favoring a stateful Presenter
Stars: ✭ 1,052 (+2994.12%)
Mutual labels: rxjava, rxjava2, architecture
AndroidVIP
Android project to experiment the VIPER approach using mosby, RxJava and dagger2
Stars: ✭ 21 (-38.24%)
Mutual labels: viper, rxjava2, rxjava-android
Nybus
NYBus (RxBus) - A pub-sub library for Android and Java applications
Stars: ✭ 283 (+732.35%)
Mutual labels: rxjava, rxjava2, rxjava-android
Android Mvp Architecture
This repository contains a detailed sample app that implements MVP architecture using Dagger2, GreenDao, RxJava2, FastAndroidNetworking and PlaceholderView
Stars: ✭ 4,360 (+12723.53%)
Mutual labels: rxjava, rxjava2, rxjava-android
Traceur
Easier RxJava2 debugging with better stacktraces
Stars: ✭ 502 (+1376.47%)
Mutual labels: rxjava, rxjava2, rxjava-android
Retrofitclient
基于Retrofit2.x和Rxjava2.x封装的请求工具类(内含Retrofit2.x & rxjava1.x)
Stars: ✭ 532 (+1464.71%)
Mutual labels: rxjava, rxjava2
Swift Viper Module
Xcode template for VIPER Architecture written in Swift 4
Stars: ✭ 527 (+1450%)
Mutual labels: viper, architecture
Rxjava2 Android Samples
RxJava 2 Android Examples - Migration From RxJava 1 to RxJava 2 - How to use RxJava 2 in Android
Stars: ✭ 4,950 (+14458.82%)
Mutual labels: rxjava, rxjava2
Rx.Observe
RxJava2 ready !
Create an interface with @Observe
annotated method
public class User {
private int age;
@Observe
public int getAge() {
return age;
}
@Observe
public void setAge(int age) {
this.age = age;
}
}
Will generate 2 observables
Observable<Integer> getAge()
Observable<T> setAge(T toReturn, int age)
setAge is a void
method so it will return the first T toReturn
argument (useful for your flatmaps)
Those observable are accessible through Rx.observe(user)
Static
public class Calculator {
@Observe
public static int addOne(int number) {
return number + 1;
}
}
Will generate
Observable<T> addOne(int age)
Accessible through Rx.observeCalculator()
Example
User user = new User();
Rx.observe(user).setAge(user, 3)
.flatMap(u -> Rx.observe(u).getAge())
.flatMap(age -> Rx.observeCalculator().addOne(age))
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(integer -> {
Toast.makeText(getBaseContext(), "" + integer, Toast.LENGTH_SHORT).show();
});
RxJava2
Rx.Observable is also compatible with @Single
, @Flowable
, @Completable
Download
repositories {
google()
jcenter()
maven { url "https://dl.bintray.com/florent37/maven" }
// ...
}
provided 'com.github.florent37:rxobserve-annotations:1.0.0'
annotationProcessor 'com.github.florent37:rxobserve-compiler:1.0.0'
compile 'io.reactivex:rxjava2:2.0.7'
Credits
Author: Florent Champigny http://www.florentchampigny.com/
Blog : http://www.tutos-android-france.com/
Fiches Plateau Moto : https://www.fiches-plateau-moto.fr/
License
Copyright 2017 florent37, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].