亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種流程化的事件處理機(jī)制的改進(jìn)方法

文檔序號:8361188閱讀:888來源:國知局
一種流程化的事件處理機(jī)制的改進(jìn)方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計(jì)算機(jī)軟件程序技術(shù)領(lǐng)域,尤其是涉及一種流程化的事件處理機(jī)制的 改進(jìn)方法。
【背景技術(shù)】
[0002] 現(xiàn)在很多公司在開發(fā)產(chǎn)品時(shí),為了保證產(chǎn)品的生命周期延續(xù)性以及加快產(chǎn)品的更 快開發(fā)與推出,都會將其中可重用的部分提取出來作為基本庫或者平臺功能使用。事件處 理機(jī)制即為其中之一。所謂事件處理機(jī)制是指在程序正常流程過程中,在一些關(guān)鍵點(diǎn)上提 供產(chǎn)生事件,并通過激活事件的方式與第三方進(jìn)行互動(dòng)的機(jī)制。數(shù)據(jù)事件處理機(jī)制在事件 處理機(jī)制上更加專業(yè)化,其只關(guān)注數(shù)據(jù)對象,并針對數(shù)據(jù)對象更新操作(包括添加前、添加 后、修改前、修改后、刪除前、刪除后)產(chǎn)生數(shù)據(jù)事件并與第三方提供互動(dòng)。
[0003] 現(xiàn)有的事件處理機(jī)制中用于響應(yīng)事件的第三方可以有多個(gè),大部分實(shí)現(xiàn)方式中多 個(gè)響應(yīng)事件是以注冊次序順序執(zhí)行。此時(shí)事件處理機(jī)制沒有考慮到第三方之間的邏輯關(guān) 系,導(dǎo)致多個(gè)第三方無法進(jìn)行協(xié)作工作,如圖1所示。
[0004] 目前還沒有有效的方案來解決上述問題。

【發(fā)明內(nèi)容】

[0005] 本發(fā)明所解決的技術(shù)問題是提供一種程序?qū)崿F(xiàn)的靈活框架,本發(fā)明將流程化的事 件處理過程與事件處理機(jī)制相結(jié)合,解決了第三方之間工作協(xié)調(diào)的問題。本發(fā)明可以豐富 事件處理機(jī)制的處理能力,為更加靈活的程序開發(fā)提供有力工具。
[0006] 為了解決上述技術(shù)問題,本發(fā)明提供了一種流程化的事件處理機(jī)制的改進(jìn)方法, 包括:
[0007] Sl :事件生產(chǎn)者預(yù)定義產(chǎn)生的事件;
[0008] S2 :所述事件生產(chǎn)者在關(guān)鍵業(yè)務(wù)流程處生產(chǎn)所述事件;
[0009] S3:所述事件生產(chǎn)者使用流程化事件處理框架提供事件傳遞接口將生產(chǎn)的所述事 件傳遞給事件處理線程;
[0010] S4 :事件監(jiān)聽者對生產(chǎn)的所述事件通過事件監(jiān)聽器進(jìn)行監(jiān)聽,并通過所述事件處 理框架提供的注冊方式注冊到所述事件監(jiān)聽器緩存中;
[0011] S5 :所述流程化事件處理框架的事件處理流程嵌入到關(guān)鍵業(yè)務(wù)流程中的事件傳遞 接口調(diào)用處;當(dāng)每次產(chǎn)生新的事件并進(jìn)行推送時(shí),依據(jù)事件監(jiān)聽器緩存中的信息進(jìn)行事件 運(yùn)行。
[0012] 優(yōu)選的,所述步驟Sl中,所述事件由事件標(biāo)識和事件細(xì)節(jié)信息兩部分組成;所述 事件標(biāo)識是一個(gè)能夠表示事件意義但是又全局唯一的字符串,在系統(tǒng)范圍保證其唯一性; 所述事件細(xì)節(jié)信息用于存儲與事件相關(guān)的數(shù)據(jù)信息,所述數(shù)據(jù)信息將傳遞給事件消費(fèi)者, 事件細(xì)節(jié)信息結(jié)構(gòu)可變,但需要滿足流程化事件處理框架的要求。
[0013] 更加優(yōu)選的,所述步驟S2中,所述關(guān)鍵業(yè)務(wù)流程為關(guān)鍵的程序動(dòng)作;所述關(guān)鍵業(yè) 務(wù)流程包含數(shù)據(jù)對象增加前/后,數(shù)據(jù)對象更新前/后以及數(shù)據(jù)對象刪除前/后。
[0014] 更加優(yōu)選的,所述流程化事件處理框架包括:流程化事件緩存、流程化事件注冊、 流程化事件處理流程和事件傳遞接口。
[0015] 更加優(yōu)選的,所述流程化事件緩存是指:修改列表性事件監(jiān)聽器緩存為流程化事 件監(jiān)聽器緩存,緩存采用能夠存儲多種流程邏輯的數(shù)據(jù)結(jié)構(gòu)。
[0016] 更加優(yōu)選的,所述流程化事件注冊是指:所述流程化事件處理框架在初始化時(shí) 會掃描事件注冊存儲區(qū)中的注冊方式,所述注冊方式包括:程序代碼、Spring配置文件、 Properties配置文件和數(shù)據(jù)庫事件信息存儲表;上述方式支持一種或多種方式混合使用; 通過所述注冊方式,讀取到所有事件監(jiān)聽器描述信息,組合成流程化的事件監(jiān)聽器數(shù)據(jù)結(jié) 構(gòu),并存儲到所述流程化事件監(jiān)聽器緩存中。
[0017] 更加優(yōu)選的,所述流程化事件處理流程是指:基于流程化事件監(jiān)聽器緩存的事件 運(yùn)行框架,支持順序事件執(zhí)行、條件事件執(zhí)行、循環(huán)事件執(zhí)行和條件循環(huán)事件執(zhí)行的方式; 上述事件執(zhí)行的方式通過鏈接、嵌套方式整合在一起,形成具有完善邏輯的流程化事件流 程來執(zhí)行。
[0018] 更加優(yōu)選的,所述事件傳遞接口是指:所述流程化事件處理框架提供給事件生產(chǎn) 者,通過事件傳遞接口將產(chǎn)生的事件傳遞給框架的所述流程化事件處理流程進(jìn)行處理。
[0019] 更加優(yōu)選的,所述步驟S5的具體過程是:
[0020] (a)獲取流程化事件處理框架內(nèi)置的事件運(yùn)行起始流程,啟動(dòng)事件處理,并依照事 件監(jiān)聽器緩存的內(nèi)容建立運(yùn)行執(zhí)行過程;
[0021] (b)運(yùn)行第一個(gè)事件處理流程;
[0022] (C)運(yùn)行完畢后檢查下一流程監(jiān)聽器指針是否存在,
[0023] 如果已經(jīng)存在則針對下一流程返回步驟b ;
[0024] 如果不存在則繼續(xù)下面的步驟d ;
[0025] (d)執(zhí)行流程化事件處理框架內(nèi)置的事件運(yùn)行終止流程,回收執(zhí)行資源,返回執(zhí)行 結(jié)果。
[0026] 其中,所述數(shù)據(jù)事件處理機(jī)制是一種提供數(shù)據(jù)對象更新過程中以事件方式提供額 外嵌入式操作的框架,例如在數(shù)據(jù)對象增加前可以通過事件機(jī)制進(jìn)行額外的操作,甚至取 消數(shù)據(jù)增加。
[0027] 本發(fā)明與現(xiàn)有技術(shù)相比,具有如下有益效果:
[0028] 本發(fā)明提供了一種程序?qū)崿F(xiàn)的靈活框架,將流程化的事件處理過程與事件處理機(jī) 制相結(jié)合,解決了第三方之間工作協(xié)調(diào)的問題。本發(fā)明可以豐富事件處理機(jī)制的處理能力, 為更加靈活的程序開發(fā)提供有力工具。
【附圖說明】
[0029] 圖1示例性的示出了現(xiàn)有的事件處理機(jī)制的流程示意圖;
[0030] 圖2示例性的示出了本發(fā)明的流程示意圖。
【具體實(shí)施方式】
[0031] 為了更好的理解本發(fā)明所解決的技術(shù)問題、所提供的技術(shù)方案,以下結(jié)合附圖及 實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。此處所描述的具體實(shí)施例僅用以解釋本發(fā)明的實(shí) 施,但并不用于限定本發(fā)明。
[0032] 在優(yōu)選的實(shí)施例中,與圖1進(jìn)行對比,圖2示例性的示出了經(jīng)過改進(jìn)后的本發(fā)明的 事件處理機(jī)制流程示意圖;包括:
[0033] 步驟一:事件生產(chǎn)者預(yù)定義產(chǎn)生的事件;
[0034] 步驟二:所述事件生產(chǎn)者在關(guān)鍵業(yè)務(wù)流程處生產(chǎn)事件;
[0035] 步驟三:所述事件生產(chǎn)者使用流程化事件處理框架提供事件傳遞接口將生產(chǎn)的事 件傳遞給事件處理線程;
[0036] 步驟四:事件監(jiān)聽者對所述生產(chǎn)的事件通過事件監(jiān)聽器進(jìn)行監(jiān)聽,并通過所述事 件處理框架提供的注冊方式注冊到所述事件監(jiān)聽器緩存中;
[0037] 步驟五:所述流程化事件處理框架的事件處理流程嵌入到關(guān)鍵業(yè)務(wù)流程中的事件 傳遞接口調(diào)用處;當(dāng)每次產(chǎn)生新的事件并進(jìn)行推送時(shí),依據(jù)事件監(jiān)聽器緩存中的信息進(jìn)行 事件運(yùn)行。
[0038] 在更加優(yōu)選的實(shí)施例中,所述步驟一中,所述事件由事件標(biāo)識和事件細(xì)節(jié)信息兩 部分組成;所述事件標(biāo)識是一個(gè)能夠表示事件意義但是又全局唯一的字符串,在系統(tǒng)范圍 保證其唯一性;所述事件細(xì)節(jié)信息用于存儲與事件相關(guān)的數(shù)據(jù)信息,所述數(shù)據(jù)信息將傳遞 給事件消費(fèi)者,事件細(xì)節(jié)信息結(jié)構(gòu)可變,但需要滿足流程化事件處理框架的要求。
[0039] 在更加優(yōu)選的實(shí)施例中,所述步驟二中,所
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1