package com.android_mvc.sample_project.domain; import android.app.Activity; import com.android_mvc.sample_project.activities.func_db.DBListActivity; import com.android_mvc.sample_project.db.dao.FriendDAO; import com.android_mvc.sample_project.db.entity.Friend; import com.android_mvc.framework.controller.action.ActionResult; import com.android_mvc.framework.controller.action.BaseAction; import com.android_mvc.framework.ui.UIUtil; /** * DB更新に関するBL。 * @author id:language_and_engineering * */ public class DBUpdateAction extends BaseAction { private DBListActivity activity; private Long friend_id; public DBUpdateAction(DBListActivity activity, Long friend_id) { this.activity = activity; this.friend_id = friend_id; } // BL本体 @Override public ActionResult exec() { // DB更新を実行 Friend f = new FriendDAO(activity).invertFavoriteFlag(friend_id); // 実行結果を返す DBUpdateActionResult ares = new DBUpdateActionResult(); ares.setRouteId("success"); ares.friend = f; return ares; } // NOTE: setRouteIdはBaseで定義したメソッドなので,返り値が合わないためメソッドチェインができず… // 実行結果オブジェクト static class DBUpdateActionResult extends ActionResult { private static final long serialVersionUID = 1L; protected Friend friend; @Override public void onNextActivityStarted(Activity activity) { UIUtil.longToast(activity, friend.getName() + "さんのお気に入りフラグを更新しました。"); } } }