亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? tasksmanager.java

?? 手機郵箱撒的方式方式方式的
?? JAVA
字號:
/*MujMail - Simple mail client for J2MECopyright (C) 2009 David Hauzar <david.hauzar.mujmail@gmail.com>This program is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2 of the License, or(at your option) any later version.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program; if not, write to the Free SoftwareFoundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */package mujmail.tasks;import java.util.Vector;import javax.microedition.lcdui.Displayable;import mujmail.util.Observable;import mujmail.util.Observer;/** * Static class for managing background tasks and getting information about them. * *  * @author David Hauzar */public class TasksManager {    static ChangableObservable endTaskObservable = new ChangableObservable();    static ChangableObservable startTaskObservable = new ChangableObservable();    static final int MAXIMUM_NUMBER_OF_RUNNING_TASKS = 2;    private static class ChangableObservable extends Observable {        public void setChanged() {            super.setChanged();        }    }    /**     * Checks whether there are some tasks running and if not, exits the     * application.     * If there are some tasks running, exits the application when all tasks     * will terminate. In this case it alsodisplays the dialog to user in that     * user can cancel exiting or confirm exiting despite of some tasks are     * running.     */    public static void conditionallyExit() {        ConditionalActionRunner exitActionRunner = new ConditionalActionRunner(                ConditionalActionRunner.ExitApplicationCondition.CONDITION,                ConditionalActionRunner.ExitApplicationAction.ACTION);        exitActionRunner.startAction(                new ConditionalActionRunnerUI(                    exitActionRunner,                    "Some tasks are still running",                    "There are incompleted tasks that are still running. The application will exit automatically when all will terminate.",                    "Exit anyway"));    }    /**     * Returns true if some task is running or waiting to start.     * @return true if some task is running or waiting to start.     */    public static boolean isSomeTaskRunningOrWaitingToStart() {        return !BackgroundTask.getRunningTasks().isEmpty() || ConditionalActionRunner.ConditionalTaskRunner.getNumberOfTasksWaitingForStart() != 0;    }    /**     * Gets the number of tasks either running or waiting to be started.     * @return the number of tasks either running or waiting to be started.     */    public static int numTasks() {        return BackgroundTask.getRunningTasks().size() + ConditionalActionRunner.ConditionalTaskRunner.getNumberOfTasksWaitingForStart();    }    /**     * Adds observer that will be notified whenever some task will end.     * @param endTaskObserver the object that will be notified whenever the some     *  task will end.     *  The argument of function notify will be the task that actually ended.     *  That is the object of type BackgroundTask.     * @see Observable#addObserver(mujmail.util.Observer)      */    public static void addEndTaskObserver(Observer endTaskObserver) {        endTaskObservable.addObserver(endTaskObserver);    }    /**     * Deletes observer that is notified whenever some task ends. This observer     * will be not notified any more.     * @param endTaskObserver the observer to be deleted.     * @see Observable#deleteObserver(mujmail.util.Observer)     */    public static void deleteEndTaskObserver(Observer endTaskObserver) {        endTaskObservable.deleteObserver(endTaskObserver);    }    /**     * Deletes all observers that are notified whenever some task ends. This     * observers will be not notified any more.     * @see Observable#deleteObservers()     */    public static void deleteEndTaskObservers() {        endTaskObservable.deleteObservers();    }    /**     * Adds observer that will be notified whenever some task will start.     * @param startTaskObserver the object that will be notified whenever the some     *  task will start.     *  The argument of function notify will be the task that actually started.     *  That is the object of type BackgroundTask.     * @see Observable#addObserver(mujmail.util.Observer)     */    public static void addStartTaskObserver(Observer startTaskObserver) {        startTaskObservable.addObserver(startTaskObserver);    }    /**     * Deletes observer that is notified whenever some task starts. This observer     * will be not notified any more.     * @param startTaskObserver the observer to be deleted.     * @see Observable#deleteObserver(mujmail.util.Observer)     */    public static void deleteStartTaskObserver(Observer startTaskObserver) {        startTaskObservable.deleteObserver(startTaskObserver);    }    /**     * Deletes all observers that are notified whenever some task starts. This     * observers will be not notified any more.     * @see Observable#deleteObservers()     */    public static void deleteStartTaskObservers() {        startTaskObservable.deleteObservers();    }    /**     * Do all task manager actions with task that actually ended.     * This method is called by BackgroundTask whenever the task ends.     * @param backgroundTask the task that ended     */    static void taskEnded(BackgroundTask backgroundTask) {        endTaskObservable.setChanged();        endTaskObservable.notifyObservers(backgroundTask);    }    /**     * Do all task manager action with task that actually started.     * This method is called by BackgroundTask whenever the task starts.     * @param backgroundTask the task that starts.     */    static void taskStarted(BackgroundTask backgroundTask) {        startTaskObservable.setChanged();        startTaskObservable.notifyObservers(backgroundTask);    }    /**     * Sets given screen as screen that will be displayed after termination     * of the task or pressing back button to all running tasks.     * @param screen the screen to be set.     */    public static void setScreenToAllTasks(Displayable screen) {        Vector allTasks = BackgroundTask.getRunningTasks();        for (int i = 0; i < allTasks.size(); i++) {            BackgroundTask task;            try {                task = (BackgroundTask) allTasks.elementAt(i);            } catch (Exception e) {                break;            }            task.setNextScreen(screen);            task.getProgressManager().setPrevScreen(screen);        }    }    /**     * Gets the Vector of running tasks.     * @return Vector of running tasks.     */    public static Vector getRunningTasks() {        return BackgroundTask.getRunningTasks();    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区二区在线观看视频播放| 国产三级一区二区| 欧美伊人久久大香线蕉综合69 | 国产午夜精品一区二区三区嫩草| 欧美综合天天夜夜久久| 国产精品12区| 日韩av二区在线播放| 国产精品久久久久久久久免费樱桃| 欧美高清视频www夜色资源网| 成人av在线资源网站| 激情六月婷婷久久| 日韩影院在线观看| 最新高清无码专区| 久久久亚洲综合| 日韩三级伦理片妻子的秘密按摩| 91黄色免费看| 成人av午夜影院| 国产精品亚洲第一| 欧美日韩国产欧美日美国产精品| 99久久久精品| av在线这里只有精品| 国产一区二区三区四区五区美女 | 亚洲一区在线视频观看| 国产成人福利片| 久久综合一区二区| 风间由美一区二区三区在线观看 | 高清shemale亚洲人妖| 日本中文字幕一区| 亚洲大尺度视频在线观看| 亚洲精品免费在线播放| 日韩一区有码在线| 国产精品欧美综合在线| 国产女主播视频一区二区| 精品国产凹凸成av人网站| 欧美一级高清大全免费观看| 6080午夜不卡| 欧美成人性福生活免费看| 日韩视频免费观看高清完整版 | 91美女视频网站| 91浏览器在线视频| 色悠悠亚洲一区二区| 91麻豆免费观看| 色素色在线综合| 粉嫩高潮美女一区二区三区 | 日韩一级免费一区| 7777精品伊人久久久大香线蕉 | 日精品一区二区三区| 亚州成人在线电影| 天天色 色综合| 秋霞电影一区二区| 久久99久久99| 国产在线视频不卡二| 国产在线视视频有精品| 国产99久久久国产精品免费看 | 精品一区二区三区视频在线观看| 国产综合色视频| 国产99精品视频| 91一区一区三区| 欧美电影在线免费观看| www国产精品av| 国产精品另类一区| 日韩美女视频19| 天天影视色香欲综合网老头| 天天综合色天天综合色h| 性感美女久久精品| 欧美二区三区的天堂| 日韩精品最新网址| 久久精品夜色噜噜亚洲aⅴ| 中文字幕在线观看不卡| 亚洲乱码日产精品bd| 亚洲二区视频在线| 韩国v欧美v亚洲v日本v| 99re66热这里只有精品3直播| 精品视频999| 精品国产免费一区二区三区香蕉| 国产精品美女一区二区在线观看| 亚洲综合免费观看高清完整版在线| 日韩和欧美一区二区| 国产乱对白刺激视频不卡| 色综合久久综合中文综合网| 91精品国产乱码| 国产精品二三区| 日本欧美在线观看| 风间由美性色一区二区三区| 欧美久久免费观看| 国产嫩草影院久久久久| 亚洲电影激情视频网站| 国产成人精品www牛牛影视| 91久久久免费一区二区| 欧美精品一区二区三区在线| 亚洲伦理在线精品| 精品一区二区影视| 欧美在线综合视频| 精品一区二区三区在线播放| 91视频91自| 久久免费午夜影院| 日韩中文字幕麻豆| 91丨国产丨九色丨pron| 2020国产精品久久精品美国| 亚洲午夜精品网| 99国产精品久久久| 精品毛片乱码1区2区3区| 一区二区三区日韩| 成人三级伦理片| 精品国产伦一区二区三区观看方式| 亚洲另类一区二区| 国产91精品一区二区麻豆网站 | 日韩av在线发布| 91色婷婷久久久久合中文| 亚洲精品在线免费播放| 亚洲午夜国产一区99re久久| 99久久er热在这里只有精品15| 26uuu精品一区二区| 亚洲成av人片在线观看| 91色九色蝌蚪| 日韩毛片一二三区| 成人午夜电影久久影院| 久久先锋影音av| 加勒比av一区二区| 欧美一区二区二区| 天天综合色天天综合| 欧美三级欧美一级| 亚洲欧美日韩一区二区| 99热在这里有精品免费| 国产精品久久久久久久浪潮网站 | 亚洲综合男人的天堂| 97se亚洲国产综合自在线不卡| 中文字幕 久热精品 视频在线 | 久久一区二区视频| 久久99精品一区二区三区三区| 日韩一区二区在线观看| 青青草97国产精品免费观看| 日韩一区二区三区视频| 日韩国产在线观看一区| 欧美一级二级三级蜜桃| 青青草国产成人av片免费| 欧美一级艳片视频免费观看| 青青草国产精品亚洲专区无| 日韩欧美中文字幕一区| 美女在线观看视频一区二区| 日韩精品资源二区在线| 国模冰冰炮一区二区| 久久久另类综合| 国产99久久久国产精品| 最新中文字幕一区二区三区| 91老师片黄在线观看| 亚洲专区一二三| 成人免费观看av| 国产91精品露脸国语对白| 在线观看网站黄不卡| 亚洲综合在线电影| 欧美优质美女网站| 午夜视频在线观看一区| 91精品久久久久久久99蜜桃| 卡一卡二国产精品| 国产午夜亚洲精品午夜鲁丝片| 成人动漫av在线| 亚洲线精品一区二区三区| 欧美一区二区大片| 国产福利精品一区二区| 亚洲色图在线视频| 欧美电影一区二区三区| 国产麻豆视频一区二区| 中文字幕一区av| 欧美三级在线看| 精品一区二区三区影院在线午夜| 国产精品乱码妇女bbbb| 欧美日韩国产电影| 黑人精品欧美一区二区蜜桃| 中文字幕在线免费不卡| 在线综合+亚洲+欧美中文字幕| 国产伦精品一区二区三区免费迷| 中文字幕一区二区在线播放| 欧美日韩aaaaaa| 成人午夜视频网站| 五月婷婷欧美视频| 国产肉丝袜一区二区| 欧美亚洲国产bt| 国产在线播放一区三区四| 亚洲美女在线国产| 欧美videofree性高清杂交| 91美女片黄在线| 韩国视频一区二区| 亚洲欧美另类小说| 精品久久久影院| 欧美综合视频在线观看| 国产精品资源网站| 亚洲第四色夜色| 国产精品每日更新在线播放网址| 制服丝袜一区二区三区| 不卡的av电影| 久久精品99国产精品| 亚洲精品免费视频| 久久女同性恋中文字幕| 欧美三区在线视频| 99热在这里有精品免费| 久久电影国产免费久久电影| 亚洲成a人片在线不卡一二三区| 欧美极品少妇xxxxⅹ高跟鞋 | 91精品国产色综合久久ai换脸|