Skip to content

Commit

Permalink
simple singleton to keep information on orientation change
Browse files Browse the repository at this point in the history
  • Loading branch information
javiergamarra committed Nov 21, 2015
1 parent eadd5cb commit 6ae9866
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 18 deletions.
Expand Up @@ -6,15 +6,12 @@
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;

import com.nhpatt.androidrxinaction.retrofit.GitHubService;
import com.nhpatt.androidrxinaction.retrofit.Repo;

import java.util.ArrayList;
import java.util.List;

import retrofit.GsonConverterFactory;
import retrofit.Retrofit;
import retrofit.RxJavaCallAdapterFactory;
import rx.Observable;
import rx.android.schedulers.AndroidSchedulers;
import rx.schedulers.Schedulers;

Expand All @@ -33,22 +30,16 @@ protected void onCreate(Bundle savedInstanceState) {
recyclerView.setAdapter(adapter);
recyclerView.setLayoutManager(new LinearLayoutManager(this));

Retrofit retrofit = new Retrofit.Builder()
.baseUrl("https://api.github.com")
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.build();
GitHubService service = retrofit.create(GitHubService.class);

service.listRepos("nhpatt")
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(newRepos -> {
repos.addAll(newRepos);
adapter.notifyDataSetChanged();
});
github.subscribe(newRepos -> {
repos.addAll(newRepos);
adapter.notifyDataSetChanged();
});
}

static Observable<List<Repo>> github = RetrofitService.getGithub().listRepos("nhpatt")
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread()).cache();

private RepositoryAdapter adapter;
private List<Repo> repos = new ArrayList<>();
}
@@ -0,0 +1,21 @@
package com.nhpatt.androidrxinaction;

import com.nhpatt.androidrxinaction.retrofit.GitHubService;

import retrofit.GsonConverterFactory;
import retrofit.Retrofit;
import retrofit.RxJavaCallAdapterFactory;

/**
* @author Javier Gamarra
*/
public class RetrofitService {
public static GitHubService getGithub() {
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("https://api.github.com")
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.build();
return retrofit.create(GitHubService.class);
}
}

0 comments on commit 6ae9866

Please sign in to comment.