package com.brady.jlulife.Models; import android.os.Handler; import android.os.Message; import com.brady.jlulife.Entities.News; import com.brady.jlulife.Models.Listener.OnListinfoGetListener; import com.brady.jlulife.Models.Listener.OnObjectGetListener; import com.loopj.android.http.AsyncHttpClient; import java.util.List; /** * Created by wang on 2015/10/10. */ public abstract class NewsModel { protected static final int MSG_GET_NEWSLIST_SUCCESS = 100001; protected static final int MSG_GET_NEWSDETAIL_SUCCESS = 100002; protected static final int MSG_GET_NEWSLIST_FAIL = 100003; protected static final int MSG_GET_NEWSDETAIL_FAIL = 100004; protected News mNews; OnListinfoGetListener mListinfoGetListener; OnObjectGetListener mNewsDetailinfoGetListener; AsyncHttpClient mClient; protected Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { switch (msg.what) { case MSG_GET_NEWSLIST_SUCCESS: { mListinfoGetListener.onGetInfoSuccess((List) msg.obj); break; } case MSG_GET_NEWSLIST_FAIL: { mListinfoGetListener.onGetInfoFail(); break; } case MSG_GET_NEWSDETAIL_SUCCESS: { mNewsDetailinfoGetListener.onGetInfoSuccess((News) msg.obj); break; } case MSG_GET_NEWSDETAIL_FAIL: { mNewsDetailinfoGetListener.onGetInfoFail(); } } } }; public abstract void getNewsDetail(String newsId, OnObjectGetListener newsDetailinfoGetListener); public abstract void getNewsList(int pageId, OnListinfoGetListener listinfoGetListener); protected void initClient() { if (mClient == null) mClient = new AsyncHttpClient(); } }