Back to project page ponyville-live-android.
The source code is released under:
Apache License
If you think the Android project ponyville-live-android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package com.ponyvillelive.app.net; /*from w ww.j a v a 2s . co m*/ import com.google.gson.Gson; import com.ponyvillelive.app.model.ArrayResponse; import com.ponyvillelive.app.model.MapResponse; import com.ponyvillelive.app.model.NowPlayingMeta; import com.ponyvillelive.app.model.ObjectResponse; import com.ponyvillelive.app.model.Show; import com.ponyvillelive.app.model.Station; import com.ponyvillelive.app.model.StationMeta; import retrofit.RestAdapter; import retrofit.client.Client; import retrofit.client.OkClient; import retrofit.converter.Converter; import retrofit.converter.GsonConverter; import retrofit.http.GET; import retrofit.http.Path; import rx.Observable; /** * <p>The code contract for the Ponyville Live! API as documented on * <a href="http://docs.ponyvillelive.apiary.io/">Apiary</a></p> */ public interface API { @GET("/nowplaying") public Observable<MapResponse<String, NowPlayingMeta>> getNowPlaying(); @GET("/nowplaying/index/id/{id}") public Observable<ObjectResponse<NowPlayingMeta>> getNowPlayingForStation(@Path("id")int id); @GET("/station/list") public Observable<ArrayResponse<Station>> getStationList(); @GET("/station/list/category/{category}") public Observable<ArrayResponse<Station>> getStationList(@Path("category")String category); @GET("/show/latest") public Observable<ArrayResponse<Show>> getShows(); @GET("/show/index") public Observable<ArrayResponse<Show>> getAllShows(); @GET("/show/index/id/{id}") public Observable<ObjectResponse<Show>> getEpisodesForShow(@Path("id")String id); /** * <p>A builder class for {@link com.ponyvillelive.app.net.API}. A default builder will use * http://ponyvillelive.com/api as the API host</p> */ public static class Builder { private String hostUrl; private Client client; private Converter converter; private RestAdapter.LogLevel logLevel; public Builder setHostUrl(String hostUrl) { this.hostUrl = hostUrl; return this; } public Builder setClient(Client client) { this.client = client; return this; } public Builder setConverter(Converter converter) { this.converter = converter; return this; } public Builder setLogLevel(RestAdapter.LogLevel logLevel) { this.logLevel = logLevel; return this; } public API build() { if(hostUrl == null) hostUrl = "http://ponyvillelive.com/api"; if(client == null) client = new OkClient(); if(converter == null) converter = new GsonConverter(new Gson()); if(logLevel == null) logLevel = RestAdapter.LogLevel.NONE; return new RestAdapter.Builder() .setEndpoint(hostUrl) .setClient(client) .setConverter(converter) .setLogLevel(logLevel) .build() .create(API.class); } } }