package com.mathiasluo.designer.model.service;
import com.mathiasluo.designer.bean.AccessToken;
import com.mathiasluo.designer.bean.AuthBody;
import com.mathiasluo.designer.bean.Shot;
import com.mathiasluo.designer.bean.User;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Path;
import retrofit2.http.Query;
import rx.Observable;
/**
* Created by MathiasLuo on 2016/3/1.
*/
public interface ServiceAPI {
String API = "https://api.dribbble.com/v1/";
@GET("shots")
Observable<Shot[]> getShots(@Query("list") String list,
@Query("timeframe") String timeframe,
@Query("date") String date,
@Query("sort") String sort,
@Query("page") int page,
@Query("per_page") int per_page);
@GET("shots")
Observable<Shot[]> getShots(@Query("page") int page,
@Query("per_page") int per_page);
@POST("https://dribbble.com/oauth/token")
Observable<AccessToken> getAccessToken(@Body AuthBody body);
@GET("user")
Observable<User> getUserWithAccessToken(@Query("access_token") String accessToken);
@GET("users/{username}")
Observable<User> getUserInfo(@Path("username") String username);
@GET("shots/{shot_id}/likes")
Observable<User> getShotLikes(@Path("shot_id") String shot_id);
@GET("shots/{shot_id}/likes")
Observable cheakIsLikeShot(@Path("shot_id") String shot_id);
@POST("shots/{shot_id}/likes")
Observable likeShot(@Path("shot_id") String shot_id);
}