Skip to content

Instantly share code, notes, and snippets.

Jorge Garrido FireZenk

Block or report user

Report or block FireZenk

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View AnimationRendererSnippet.java
@Override public void render() {
setupAnimation();
animationTimer.subscribe(timerValue -> startAnimation());
}
View AnimationRendererAdapterSnippet.java
public CustomRendererBuilder(PublishSubject<Long> animationTimer) {
ListAdapteeCollection<Renderer<? extends Item>> prototypes = new
ListAdapteeCollection<>();
prototypes.add(new CustomRenderer(animationTimer));
setPrototypes(prototypes);
}
@Override protected Class getPrototypeClass(Item item) {
return CustomRenderer.class;
}
View AnimationAdapterSnippet.java
CustomRendererBuilder rendererBuilder = new CustomRendererBuilder(animationTimer)
RVRendererAdapter adapter = new RVRendererAdapter<>(rendererBuilder);
list.setAdapter(adapter);
View AnimationUnsubscriptionSnippet.java
@Override public void onDestroy() {
if (!animationSubscription.isUnsubscribed()) {
super.onDestroy();
animationSubscription.unsubscribe();
}
}
View AnimationSubscriptionSnippet.java
PublishSubject<Long> animationTimer;
Subscription animationSubscription;
animationSubscription = Observable.interval(1, TimeUnit.SECONDS)
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.newThread())
.subscribe(animationTimer = PublishSubject.create());
@FireZenk
FireZenk / CustomActivity.java
Created May 2, 2017
Synchronizing animations in RecyclerView
View CustomActivity.java
@Bind(R.id.my_recyclerview) RecyclerView myList;
private PublishSubject<Long> animationTimer;
private Subscription animationSubscription;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ButterKnife.bind(this);
animationSubscription = Observable.interval(1, TimeUnit.SECONDS)
@FireZenk
FireZenk / SchedulerProvider.java
Created Jan 2, 2017
UseCase executor, that takes handle use cases, their possible errors and return the subscription
View SchedulerProvider.java
package com.sample.app.ui.schedulers;
import android.support.annotation.NonNull;
import rx.Scheduler;
/**
* Project: app
*
* Created by Jorge Garrido Oval on 01/12/2016.
@FireZenk
FireZenk / RxSocketConnection.java
Created Dec 21, 2016
A working example of reactive implementation of a socket connection using okhttp3 socket api
View RxSocketConnection.java
import java.util.concurrent.TimeUnit;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import okhttp3.WebSocket;
import okhttp3.WebSocketListener;
import rx.Observable;
public class RxSocketConnection extends WebSocketListener {
@FireZenk
FireZenk / demo_data_layer.java
Last active Oct 13, 2016
Demo snippets from the "Clean Architecture: As we have applied in Mr.Milú" slides
View demo_data_layer.java
public class Mediator {
public Observable<Auth> login(Login loginModel) {
if (loginStrategy.isAlreadyLogged())
return Observable.from(authCache);
else
return repository.login(loginMapper.toRequest(loginModel))
.map(entity -> authMapper.fromResponse(entity));
}
}
You can’t perform that action at this time.