Android Open Source - android-mvc-framework Sequential Async Task






From Project

Back to project page android-mvc-framework.

License

The source code is released under:

Apache License

If you think the Android project android-mvc-framework listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.android_mvc.framework.task;
/*www. j a v a  2  s.c  om*/
import java.util.HashMap;

import com.android_mvc.framework.annotations.SuppressDebugLog;
import com.android_mvc.framework.common.FWUtil;


import android.os.AsyncTask;


/**
 * ?????????????????????????????
 * @author id:language_and_engineering
 *
 */
@SuppressDebugLog(false)
abstract public class SequentialAsyncTask extends AsyncTask<Void, Void, Void> // TODO:??????
{

    // TODO: API???13??????????????3.2??????????
    // AsyncTask#execute???????????????????????????????????????????
    // ????????????????????????????????????
    // @see http://www.swingingblue.net/mt/archives/003629.html
    // @see http://developer.android.com/intl/ja/guide/appendix/api-levels.html


    // NOTE: AsyncTask?????java.util.concurrent???????????????
    // UI???????????????????????????
    // https://github.com/android/platform_frameworks_base/blob/master/core/java/android/os/AsyncTask.java


    // ????????????????
    protected AsyncTasksRunner parent = null;

    // ???????????
    private boolean task_execution_result = true;

    // ??????????????
    private HashMap<String, Object> hash = new HashMap<String, Object>();

    // ?????????????????????????????????????
    protected boolean CONTINUE_TASKS = true;
    protected boolean BREAK_TASKS = false;


    /**
     * ????????????????
     */
    protected void onPreExecuteHook()
    {
        // Override me
    }


    /**
     * ???????????????????????????????????????
     */
    protected abstract boolean main();


    /**
     * ??????????????????????
     */
    public void kickByRunner( AsyncTasksRunner parent )
    {
        // ????????????????????
        this.parent = parent;

        // ??????
        execute();
        FWUtil.d("????????????????????????????????");
    }


    /**
     *  ???????????????????????????????
     */
    public boolean tasksContinuable()
    {
        return task_execution_result;
    }


    // ------------- ?????????????? ------------


    // NOTE: AsyncTask???????????????????

    /**
     * ???????
     */
    @Override
    protected void onPreExecute()
    {
        onPreExecuteHook();
    }


    /**
     * ???????
     */
    protected Void doInBackground(Void... unused)
    {
        // ??????????????????????????????????
        task_execution_result = main();
        FWUtil.d("????????????????????????????????????????" + task_execution_result);

        return null;
    }

    /**
     * ??????
     */
    protected void onPostExecute(Void unused)
    {
        // ??????????????
        parent.onCurrentTaskFinished();
    }


    // ------------- ???????????????????????????????? ------------


    /**
     * ?????????????????
     */
    protected void storeData( String key, Object val )
    {
        hash.put( key, val );
        FWUtil.d("????????" + key + "???????????????????????????????????????");
    }


    /**
     * ?????????
     */
    public HashMap<String, Object> getStoredObjects()
    {
        return hash;
    }


    // ------------- ?????????????????????????? ------------


    /**
     * ?????????????????????????????
     */
    protected Object getDataFromRunner( String key )
    {
        return parent.getDataByKey( key );
    }


}




Java Source Code List

com.android_mvc.framework.activities.CommonActivityUtil.java
com.android_mvc.framework.activities.IBaseActivity.java
com.android_mvc.framework.activities.base.BaseMapActivity.java
com.android_mvc.framework.activities.base.BaseNormalActivity.java
com.android_mvc.framework.activities.base.BaseTabHostActivity.java
com.android_mvc.framework.activities.installation.InstallAppFWBaseActivity.java
com.android_mvc.framework.annotations.SuppressDebugLog.java
com.android_mvc.framework.common.AbstractAppSettings.java
com.android_mvc.framework.common.BaseUtil.java
com.android_mvc.framework.common.FWUtil.java
com.android_mvc.framework.controller.BaseController.java
com.android_mvc.framework.controller.ControlFlowDetail.java
com.android_mvc.framework.controller.action.ActionResult.java
com.android_mvc.framework.controller.action.BLExecutor.java
com.android_mvc.framework.controller.action.BaseAction.java
com.android_mvc.framework.controller.routing.IntentPortable.java
com.android_mvc.framework.controller.routing.Router.java
com.android_mvc.framework.controller.routing.RoutingTable.java
com.android_mvc.framework.controller.routing.TabContentMapping.java
com.android_mvc.framework.controller.validation.ActivityParams.java
com.android_mvc.framework.controller.validation.BaseValidationsUtil.java
com.android_mvc.framework.controller.validation.NumberComparator.java
com.android_mvc.framework.controller.validation.ValidationExecutor.java
com.android_mvc.framework.controller.validation.ValidationResult.java
com.android_mvc.framework.db.DBHelper.java
com.android_mvc.framework.db.dao.BaseDAO.java
com.android_mvc.framework.db.dao.BaseDBDAO.java
com.android_mvc.framework.db.dao.BasePrefDAO.java
com.android_mvc.framework.db.dao.FWPrefDAO.java
com.android_mvc.framework.db.dao.Finder.java
com.android_mvc.framework.db.dao.IFWDAO.java
com.android_mvc.framework.db.entity.BaseLogicalEntity.java
com.android_mvc.framework.db.schema.AbstractSchemaDefinition.java
com.android_mvc.framework.db.schema.RDBColumn.java
com.android_mvc.framework.db.schema.RDBSchema.java
com.android_mvc.framework.db.schema.RDBTable.java
com.android_mvc.framework.db.transaction.todo.TxnListener.java
com.android_mvc.framework.db.transaction.todo.TxnScope.java
com.android_mvc.framework.net.HttpPostRequest.java
com.android_mvc.framework.net.HttpPostResponse.java
com.android_mvc.framework.net.old.HttpPostHandler.java
com.android_mvc.framework.net.old.HttpPostTask.java
com.android_mvc.framework.task.AsyncTasksRunner.java
com.android_mvc.framework.task.RunnerFollower.java
com.android_mvc.framework.task.SequentialAsyncTask.java
com.android_mvc.framework.ui.UIBuilder.java
com.android_mvc.framework.ui.UIUtil.java
com.android_mvc.framework.ui.menu.OptionMenuBuilder.java
com.android_mvc.framework.ui.menu.OptionMenuDescription.java
com.android_mvc.framework.ui.tab.TabDescription.java
com.android_mvc.framework.ui.tab.TabHostBuilder.java
com.android_mvc.framework.ui.view.IFWView.java
com.android_mvc.framework.ui.view.MButton.java
com.android_mvc.framework.ui.view.MCheckBox.java
com.android_mvc.framework.ui.view.MEditText.java
com.android_mvc.framework.ui.view.MLinearLayout.java
com.android_mvc.framework.ui.view.MTextView.java
com.android_mvc.sample_project.activities.func_db.DBEditActivity.java
com.android_mvc.sample_project.activities.func_db.DBListActivity.java
com.android_mvc.sample_project.activities.func_db.SampleTabHostActivity.java
com.android_mvc.sample_project.activities.func_net.HttpNetActivity.java
com.android_mvc.sample_project.activities.installation.InstallAppActivity.java
com.android_mvc.sample_project.activities.installation.InstallCompletedActivity.java
com.android_mvc.sample_project.activities.installation.lib.InstallAppUserBaseActivity.java
com.android_mvc.sample_project.activities.main.TopActivity.java
com.android_mvc.sample_project.common.AppSettings.java
com.android_mvc.sample_project.common.Util.java
com.android_mvc.sample_project.controller.FuncDBController.java
com.android_mvc.sample_project.controller.FuncDBValidation.java
com.android_mvc.sample_project.controller.FuncNetController.java
com.android_mvc.sample_project.controller.FuncNetValidation.java
com.android_mvc.sample_project.controller.MainController.java
com.android_mvc.sample_project.controller.util.ValidationsUtil.java
com.android_mvc.sample_project.db.dao.FriendDAO.java
com.android_mvc.sample_project.db.dao.PrefDAO.java
com.android_mvc.sample_project.db.dao.todo.HogeDAO.java
com.android_mvc.sample_project.db.entity.Friend.java
com.android_mvc.sample_project.db.entity.lib.LogicalEntity.java
com.android_mvc.sample_project.db.schema.SchemaDefinition.java
com.android_mvc.sample_project.domain.DBDeleteAction.java
com.android_mvc.sample_project.domain.DBEditAction.java
com.android_mvc.sample_project.domain.DBUpdateAction.java
com.android_mvc.sample_project.domain.HttpNetAction.java