// Path: app/src/main/java/com/camnter/easygank/bean/GankDaily.java
// public class GankDaily extends Error implements Serializable {
// 
//     @SerializedName("results") public DailyResults results;
// 
//     @SerializedName("category") public ArrayList<String> category;
// 
//     public class DailyResults {
// 
//         @SerializedName("福利") public ArrayList<BaseGankData> welfareData;
// 
//         @SerializedName("Android") public ArrayList<BaseGankData> androidData;
// 
//         @SerializedName("iOS") public ArrayList<BaseGankData> iosData;
// 
//         @SerializedName("前端") public ArrayList<BaseGankData> jsData;
// 
//         @SerializedName("休息视频") public ArrayList<BaseGankData> videoData;
// 
//         @SerializedName("拓展资源") public ArrayList<BaseGankData> resourcesData;
// 
//         @SerializedName("App") public ArrayList<BaseGankData> appData;
// 
//         @SerializedName("瞎推荐") public ArrayList<BaseGankData> recommendData;
//     }
// }
// 
// Path: app/src/main/java/com/camnter/easygank/bean/GankData.java
// public class GankData extends Error implements Serializable {
// 
//     @SerializedName("results") public ArrayList<BaseGankData> results;
// }


import com.camnter.easygank.bean.GankDaily;
import com.camnter.easygank.bean.GankData;
import retrofit.http.GET;
import retrofit.http.Path;
import rx.Observable;
/*
 * {EasyGank}  Copyright (C) {2015}  {CaMnter}
 *
 * This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
 * This is free software, and you are welcome to redistribute it
 * under certain conditions; type `show c' for details.
 *
 * The hypothetical commands `show w' and `show c' should show the appropriate
 * parts of the General Public License.  Of course, your program's commands
 * might be different; for a GUI interface, you would use an "about box".
 *
 * You should also get your employer (if you work as a programmer) or school,
 * if any, to sign a "copyright disclaimer" for the program, if necessary.
 * For more information on this, and how to apply and follow the GNU GPL, see
 * <http://www.gnu.org/licenses/>.
 *
 * The GNU General Public License does not permit incorporating your program
 * into proprietary programs.  If your program is a subroutine library, you
 * may consider it more useful to permit linking proprietary applications with
 * the library.  If this is what you want to do, use the GNU Lesser General
 * Public License instead of this License.  But first, please read
 * <http://www.gnu.org/philosophy/why-not-lgpl.html>.
 */

package com.camnter.easygank.gank;


/**
 * Description：GankService
 * Created by：CaMnter
 * Time：2016-01-03 16:18
 */
public interface GankService {

    /**
     * @param year year
     * @param month month
     * @param day day
     * @return Observable<GankDaily>
     */
    @GET("day/{year}/{month}/{day}") Observable<GankDaily> getDaily(
            @Path("year") int year, @Path("month") int month, @Path("day") int day);

    /**
     * 找妹子、Android、iOS、前端、扩展资源、休息视频
     *
     * @param type 数据类型
     * @param size 数据个数
     * @param page 第几页
     * @return Observable<GankWelfare>
     */
// Path: app/src/main/java/com/camnter/easygank/bean/GankDaily.java
// public class GankDaily extends Error implements Serializable {
// 
//     @SerializedName("results") public DailyResults results;
// 
//     @SerializedName("category") public ArrayList<String> category;
// 
//     public class DailyResults {
// 
//         @SerializedName("福利") public ArrayList<BaseGankData> welfareData;
// 
//         @SerializedName("Android") public ArrayList<BaseGankData> androidData;
// 
//         @SerializedName("iOS") public ArrayList<BaseGankData> iosData;
// 
//         @SerializedName("前端") public ArrayList<BaseGankData> jsData;
// 
//         @SerializedName("休息视频") public ArrayList<BaseGankData> videoData;
// 
//         @SerializedName("拓展资源") public ArrayList<BaseGankData> resourcesData;
// 
//         @SerializedName("App") public ArrayList<BaseGankData> appData;
// 
//         @SerializedName("瞎推荐") public ArrayList<BaseGankData> recommendData;
//     }
// }
// 
// Path: app/src/main/java/com/camnter/easygank/bean/GankData.java
// public class GankData extends Error implements Serializable {
// 
//     @SerializedName("results") public ArrayList<BaseGankData> results;
// }


// Path: app/src/main/java/com/camnter/easygank/gank/GankService.java
import com.camnter.easygank.bean.GankDaily;
import com.camnter.easygank.bean.GankData;
import retrofit.http.GET;
import retrofit.http.Path;
import rx.Observable;

/*
 * {EasyGank}  Copyright (C) {2015}  {CaMnter}
 *
 * This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
 * This is free software, and you are welcome to redistribute it
 * under certain conditions; type `show c' for details.
 *
 * The hypothetical commands `show w' and `show c' should show the appropriate
 * parts of the General Public License.  Of course, your program's commands
 * might be different; for a GUI interface, you would use an "about box".
 *
 * You should also get your employer (if you work as a programmer) or school,
 * if any, to sign a "copyright disclaimer" for the program, if necessary.
 * For more information on this, and how to apply and follow the GNU GPL, see
 * <http://www.gnu.org/licenses/>.
 *
 * The GNU General Public License does not permit incorporating your program
 * into proprietary programs.  If your program is a subroutine library, you
 * may consider it more useful to permit linking proprietary applications with
 * the library.  If this is what you want to do, use the GNU Lesser General
 * Public License instead of this License.  But first, please read
 * <http://www.gnu.org/philosophy/why-not-lgpl.html>.
 */

package com.camnter.easygank.gank;


/**
 * Description：GankService
 * Created by：CaMnter
 * Time：2016-01-03 16:18
 */
public interface GankService {

    /**
     * @param year year
     * @param month month
     * @param day day
     * @return Observable<GankDaily>
     */
    @GET("day/{year}/{month}/{day}") Observable<GankDaily> getDaily(
            @Path("year") int year, @Path("month") int month, @Path("day") int day);

    /**
     * 找妹子、Android、iOS、前端、扩展资源、休息视频
     *
     * @param type 数据类型
     * @param size 数据个数
     * @param page 第几页
     * @return Observable<GankWelfare>
     */
    @GET("data/{type}/{size}/{page}") Observable<GankData> getData(