package uk.ivanc.archi.model;
import java.util.List;
import retrofit2.Retrofit;
import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory;
import retrofit2.converter.gson.GsonConverterFactory;
import retrofit2.http.GET;
import retrofit2.http.Path;
import retrofit2.http.Url;
import rx.Observable;
public interface GithubService {
@GET("users/{username}/repos")
Observable<List<Repository>> publicRepositories(@Path("username") String username);
@GET
Observable<User> userFromUrl(@Url String userUrl);
class Factory {
public static GithubService create() {
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("https://api.github.com/")
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.build();
return retrofit.create(GithubService.class);
}
}
}