<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Oracle神諭

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      284 隨筆 :: 9 文章 :: 106 評論 :: 0 Trackbacks

    9.2. Task instances|任務實例|
    A task instance can be assigned to an actorId (java.lang.String).|任務實例被分派給一個行為ID。| All task instances are stored in one table of the database (JBPM_TASKINSTANCE).|所有的實例都被存儲在數(shù)據(jù)庫的一個表格里(JBPM_TASKINSTANCE)。| By querying this table for all task instances for a given actorId, you get the task list for that perticular user. |通過查詢這個行為ID表的所有任務實例的表,你得到指定用戶的任務列表。|

    The jBPM task list mechanism can combine jBPM tasks with other tasks, even when those tasks are unrelated to a process execution.|jBPM任務列表機制可以與其它任務結(jié)合jBPM任務,甚至當這些任務與一個流程執(zhí)行無關(guān)。| That way jBPM developers can easily combine jBPM-process-tasks with tasks of other applications in one centralized task-list-repository.|那種方法jBPM開發(fā)人員可以和容易的使jBPM流程任務在一個集中的任務列表庫與其他程序中的任務|

    9.2.1. Task instance life cycle |任務實例生命周期|
    The task instance lifecycle is straightforward: After creation, task instances can optionally be started.|任務生命周期是 簡單的:在創(chuàng)建之后,任務實例可以隨意地被開始。| Then, task instances can be ended, which means that the task instance is marked as completed.|接著,任務實例可能被結(jié)束,它意味著任務實例已經(jīng)被標志已完成。|

    Note that for flexibility, assignment is not part of the life cycle.|注意適應性、委派不是生命周期的一部分。| So task instances can be assigned or not assigned.|所有任務實例可能被委派也可能不被委派。| Task instance assignment does not have an influence on the task instance life cycle.|任務實例委派不影響任務實例的生命周期。|

    Task instances are typically created by the process execution entering a task-node (with the method TaskMgmtInstance.createTaskInstance(...)).|任務實例被進入一個任務節(jié)點流程執(zhí)行代典型的創(chuàng)建(使用TaskMgmtInstance.createInstance(...)方法)| Then, a user interface component will query the database for the tasklists using the TaskMgmtSession.findTaskInstancesByActorId(...).|接著一個用戶接口組件將要為任務列表查詢數(shù)據(jù)庫使用TaskMgmtSession.findTaskInstancesByActorId(...)| Then, after collecting input from the user, the UI component calls TaskInstance.assign(String), TaskInstance.start() or TaskInstance.end(...).|接著,在收集從用戶收入之后,這個UI組件調(diào)用TaskIntsance.assign(String),TaskInstance.start() 或者 TaskInstance.end(...)。|

    A task instance maintains it's state by means of date-properties : create, start and end.|一個任務實例依靠日期屬性維護它的狀態(tài):創(chuàng)建、開始、結(jié)束。| Those properties can be accessed by their respective getters on the TaskInstance.|這些屬性可以通過它們的各自在任務實例上的的getters被訪問。|

    Currently, completed task instances are marked with an end date so that they are not fetched with subsequent queries for tasks lists.|通常地,完成的任務實例被標志為結(jié)束狀態(tài),所以他們并不通過對任務列表的子查詢獲得。| But they remain in the JBPM_TASKINSTANCE table.|但是他們?nèi)匀槐3衷贘BPM_TASKINGSTANCE表中。|

    9.2.2. Task instances and graph execution|任務實例和圖表執(zhí)行|
    Task instances are the items in an actor's tasklist.|任務實例是在行動者的任務列表中的項目。| Task instances can be signalling.|任務實例可以被發(fā)信號的| A signalling task instance is a task instance that, when completed, can send a signal to its token to continue the process execution.|一個發(fā)信號的任務實例是一個這樣的任務實例,當被完成時候,可以發(fā)送一個信號給它的令牌以繼續(xù)流程的執(zhí)行。| Task instances can be blocking, meaning that the related token (=path of execution) is not allowed to leave the task-node before the task instance is completed.|任務實例可以被模塊化,意味著有關(guān)系的令牌(執(zhí)行路徑)在任務實例完成之前允許離開任務節(jié)點。| By default task instances are signalling and non-blocking. |缺省的任務實例是被信號化且非模塊化的。|

    In case more than one task instance are associated with a task-node, the process developer can specify how completion of the task instances affects continuation of the process.|萬一超過一個的任務實例與一個任務節(jié)點關(guān)聯(lián),這個流程開發(fā)者可以定義 任務實例的完成如何影響流程的繼續(xù)。| Following is the list of values that can be given to the signal-property of a task-node.|接下來是值的列表可以指定給節(jié)點的信號屬性。|

    last: This is the default.|最后:這是缺省的。| Proceeds execution when the last task instance is completed.|當最后流程執(zhí)行完畢,繼續(xù)進行執(zhí)行。| When no tasks are created on entrance of this node, execution waits in the task node till tasks are created.|當在這個的節(jié)點的入口沒有任務被創(chuàng)建,在任務節(jié)點中執(zhí)行等待直到這些任務被創(chuàng)建。|
    last-wait: Proceeds execution when the last task instance is completed. When no tasks are created on entrance of this node, execution waits in the task node till tasks are created.
    first: Proceeds execution when the first task instance is completed. When no tasks are created on entrance of this node, execution is continued.
    first-wait: Proceeds execution when the first task instance is completed. When no tasks are created on entrance of this node, execution is continued.
    unsynchronized: Execution always continues, regardless wether tasks are created or still unfinished.
    never: Execution never continues, regardless wether tasks are created or still unfinished.
    Task instance creation might be based upon a runtime calculation. In that case, add an ActionHandler on the node-enter event of the task-node and set the attribute create-tasks="false". Here is an example of such an action handler implementation:

    public class CreateTasks implements ActionHandler {
      public void execute(ExecutionContext executionContext) throws Exception {
        Token token = executionContext.getToken();
        TaskMgmtInstance tmi = executionContext.getTaskMgmtInstance();
         
        TaskNode taskNode = (TaskNode) executionContext.getNode();
        Task changeNappy = taskNode.getTask("change nappy");

        // now, 2 task instances are created for the same task.
        tmi.createTaskInstance(changeNappy, token);
        tmi.createTaskInstance(changeNappy, token);
      }
    }
    As shown in the example the tasks to be created can be specified in the task-node. They could also be specified in the process-definition and fetched from the TaskMgmtDefinition. TaskMgmtDefinition extends the ProcessDefinition with task management information.

    The API method for marking task instances as completed is TaskInstance.end(). Optionally, you can specify a transition in the end method. In case the completion of this task instance triggers continuation of the execution, the task-node is left over the specified transition.

    posted on 2005-06-15 10:33 java世界暢談 閱讀(723) 評論(0)  編輯  收藏 所屬分類: 工作流
    主站蜘蛛池模板: 午夜爱爱免费视频| 成人片黄网站色大片免费| 精品亚洲视频在线观看| 老司机午夜在线视频免费观| 成全视频免费高清 | 日日摸日日碰夜夜爽亚洲| 在线永久看片免费的视频| 亚洲福利一区二区| 18禁止看的免费污网站| 亚洲男人电影天堂| 97无码免费人妻超级碰碰夜夜| 亚洲乱码中文字幕在线| 国产中文字幕免费| 九九热久久免费视频| 亚洲热线99精品视频| 少妇太爽了在线观看免费视频| 亚洲理论精品午夜电影| 成人午夜视频免费| 免费高清A级毛片在线播放| 在线观看亚洲精品国产| 午夜精品射精入后重之免费观看 | 亚洲欧美日本韩国| 亚洲国产综合人成综合网站| 中文精品人人永久免费 | 免费大黄网站在线看| 免费一级毛片在线播放视频免费观看永久 | 亚洲大片免费观看| 亚洲欧美国产欧美色欲| 亚洲精品无码AV中文字幕电影网站| 99视频免费在线观看| 亚洲视频在线观看地址| 日韩一级免费视频| 两性色午夜视频免费网| 亚洲国产成人精品电影| 国产成人精品123区免费视频| 中文字幕在线免费播放| 亚洲日本人成中文字幕| 中文字幕亚洲一区二区三区| 97碰公开在线观看免费视频| 成人免费网站视频www| 亚洲综合在线成人一区|