package com.novelbook.android.netsubscribe; import android.util.Log; import com.novelbook.android.netutils.HttpMethods; import com.novelbook.android.netutils.OnSuccessAndFaultListener; import com.novelbook.android.netutils.OnSuccessAndFaultSub; import java.util.HashMap; import java.util.Map; import io.reactivex.Observable; import io.reactivex.observers.DisposableObserver; import okhttp3.ResponseBody; import retrofit2.http.Path; public class BookSubscribe { public final static String TAG = BookSubscribe.class.getSimpleName(); public static void getData(int pageNumber, int count, DisposableObserver subscriber) { Map map = new HashMap<>(); map.put("start",pageNumber); map.put("count",count); Observable observable = HttpMethods.getInstance().getHttpApi().getDataForMap(map); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getMastDomain(DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("/api/g").getHttpApi().getMasterDomain(); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getNovel(int novelId,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance(String.format("/api/n/%s",novelId)).getHttpApi().getNovel(novelId); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getNovelSites(int novelId,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance(String.format("/api/n/%s/mulu-urls",novelId)).getHttpApi().getNovelSites(novelId); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getSiteRule(String domain,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance(String.format("/api/s/%s.json",domain)).getHttpApi().getNovelRule(domain); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getFirstPage(int sex,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance(String.format("/api/page/index" )).getHttpApi().getFirstPage(sex); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getCates(int sex,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("/api/page/noveltype").getHttpApi().getCates(sex); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getCateNovelList(String cate,int pageno,int sex,int progress,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance(String.format("/api/search/nt/%s/%s",cate,pageno ) ).getHttpApi().getCateNovels(cate,pageno,sex,progress); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getNovelPaihang(String fn,int pageNo,int sex,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("/api/page/rank").getHttpApi().getNovelPaihang(fn,pageNo,sex); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getNovelsRelated(int novelId,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance(String.format("/api/n/%s/about",novelId ) ).getHttpApi().getNovelsRelated(novelId); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getNovelsSameAuthor(int novelId,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance(String.format("/api/n/%s/author",novelId ) ).getHttpApi().getNovelsSameAuthor(novelId); HttpMethods.getInstance().toSubscribe(observable, subscriber); } /* public static void getSiteRanks( int sex,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("/api/page/siteranks").getHttpApi().getSiteRanks(sex); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getSiteRankDetail( String fn,int pageNo,int sex,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("/api/page/siterank").getHttpApi().getSiteRankDetail(fn,pageNo,sex); HttpMethods.getInstance().toSubscribe(observable, subscriber); }*/ public static void getSearchNovelList( String keyWord,int pageNo,int sex,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance(String.format("/api/search/%s/%s",keyWord ,pageNo)).getHttpApi().getSeachNolvelist(keyWord,pageNo,sex); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getSearchTitles(int sex,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("/api/page/topdata").getHttpApi().getSearchTitles(sex); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getHotKeyWords(DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("/api/page/hot-keywords").getHttpApi().getSearchHotKeys(); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getNovelsByIds(String ids,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("/api/novels").getHttpApi().getNovelsByIds(ids); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getVersion(DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("download/version.xml").getHttpApi().getVersion(); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getPaihangBangCateList(int sex,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("page/category").getHttpApi().getPaihangBangCateList(sex,"rank"); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getPaihangBangByCate(int sex,int cid ,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("page/siteranks").getHttpApi().getPaihangBangByCate(sex,cid); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void getPaihangBangList(int sex,int pageNo,int cid ,DisposableObserver subscriber){ Observable observable = HttpMethods.getInstance("page/siterank").getHttpApi().getPaihangBangList(sex,cid,pageNo); HttpMethods.getInstance().toSubscribe(observable, subscriber); } public static void reportMsg(String actionType, String msg ){ Map map = new HashMap<>(); map.put("msg",msg ); Observable observable = HttpMethods.getInstance("r/").getHttpApi().reportMsg( actionType, map); Log.d( TAG,String.format("report actionType %s, msg %s",actionType,msg)); DisposableObserver subscriber = new OnSuccessAndFaultSub(new OnSuccessAndFaultListener() { @Override public void onSuccess(String result) { Log.d( TAG,String.format("report result %s",result)); } @Override public void onFault(String errorMsg) { Log.e( TAG,String.format("report error %s",errorMsg)); } }); HttpMethods.getInstance().toSubscribe(observable, subscriber); } }