package com.shaweibo.biu.dao.favo; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import com.shaweibo.biu.dao.UrlConstants; import com.shaweibo.biu.dao.HttpClientUtils; import com.shaweibo.biu.dao.timeline.StatusTimeLineDao; import com.shaweibo.biu.db.tables.FavListTable; import com.shaweibo.biu.global.Constants; import com.shaweibo.biu.model.FavoListModel; import com.shaweibo.biu.model.MessageListModel; import com.shaweibo.biu.dao.WeiboParameters; import com.google.gson.Gson; import java.io.IOException; /** * Created by shaw on 2015/7/23. */ public class FavoTimeLineDao extends StatusTimeLineDao { public FavoTimeLineDao(Context context) { super(context, ""); } @Override public void cache() { SQLiteDatabase db = mHelper.getWritableDatabase(); db.beginTransaction(); db.execSQL(Constants.SQL_DROP_TABLE + FavListTable.NAME); db.execSQL(FavListTable.CREATE); ContentValues values = new ContentValues(); values.put(FavListTable.ID, 1); values.put(FavListTable.JSON, new Gson().toJson(mListModel)); db.insert(FavListTable.NAME, null, values); db.setTransactionSuccessful(); db.endTransaction(); } @Override public Cursor query() { return mHelper.getReadableDatabase().query(FavListTable.NAME, null, null, null, null, null, null); } @Override public MessageListModel load() { WeiboParameters params = new WeiboParameters(); params.put("count", Constants.HOME_TIMELINE_PAGE_SIZE); params.put("page", ++mCurrentPage); MessageListModel listModel=null; try { String jsonStr= HttpClientUtils.doGetRequstWithAceesToken(UrlConstants.FAVORITES_LIST, params); listModel = new Gson().fromJson(jsonStr,FavoListModel.class).toMsgList(); } catch (IOException e) { e.printStackTrace(); } return listModel; } }