[發(fā)明專(zhuān)利]基于OSGi的服務(wù)轉(zhuǎn)換方法和裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201110086817.1 | 申請(qǐng)日: | 2011-04-07 |
| 公開(kāi)(公告)號(hào): | CN102158490A | 公開(kāi)(公告)日: | 2011-08-17 |
| 發(fā)明(設(shè)計(jì))人: | 劉鵬;劉春 | 申請(qǐng)(專(zhuān)利權(quán))人: | 山東中創(chuàng)軟件商用中間件股份有限公司 |
| 主分類(lèi)號(hào): | H04L29/06 | 分類(lèi)號(hào): | H04L29/06;H04L29/08 |
| 代理公司: | 北京集佳知識(shí)產(chǎn)權(quán)代理有限公司 11227 | 代理人: | 逯長(zhǎng)明 |
| 地址: | 250014 山*** | 國(guó)省代碼: | 山東;37 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 osgi 服務(wù) 轉(zhuǎn)換 方法 裝置 | ||
1.一種基于OSGi的服務(wù)轉(zhuǎn)換方法,其特征在于,包括:
進(jìn)行編碼,基于DService框架的項(xiàng)目管理模塊maven增加元數(shù)據(jù)內(nèi)容,并織入構(gòu)件實(shí)現(xiàn)類(lèi);
當(dāng)OSGi平臺(tái)啟動(dòng)時(shí),在DService框架中對(duì)構(gòu)件實(shí)例的元數(shù)據(jù)進(jìn)行配置,在OSGi的Bundle中聲明組件構(gòu)件實(shí)例的方面構(gòu)件;
讀取宿主實(shí)例對(duì)所述方面實(shí)例的元數(shù)據(jù)和宿主實(shí)例配置信息;
初始化方面構(gòu)件工廠(chǎng)和方面實(shí)例,啟動(dòng)構(gòu)件實(shí)例中的方面實(shí)例,獲取valid或invalid兩種狀態(tài)中任一狀態(tài)的方面實(shí)例;
當(dāng)構(gòu)件實(shí)例狀態(tài)進(jìn)行切換時(shí),遍歷通知所述構(gòu)件實(shí)例中擁有的方面實(shí)例更改狀態(tài);
與構(gòu)件實(shí)現(xiàn)類(lèi)實(shí)例化的對(duì)象POJO進(jìn)行交互,直接通過(guò)元數(shù)據(jù)獲取宿主構(gòu)件的類(lèi)型信息,由確定狀態(tài)的方面實(shí)例為宿主實(shí)例的字段注值。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述聲明組件實(shí)例的方面構(gòu)件包括:為所述方面構(gòu)件聲明唯一的XML命名空間和名稱(chēng)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,包括:一個(gè)所述Bundle中聲明多個(gè)組件實(shí)例的方面構(gòu)件;
當(dāng)一個(gè)所述Bundle中聲明多個(gè)組件實(shí)例的方面構(gòu)件時(shí)聲明服務(wù)構(gòu)件使用該方面構(gòu)件。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,初始化方面構(gòu)件工廠(chǎng)的過(guò)程包括:
當(dāng)DService框架檢測(cè)到Bundle啟動(dòng)、所述Bundle配置有DService元數(shù)據(jù),以及所述元數(shù)據(jù)中聲明有通過(guò)DService根節(jié)點(diǎn)名稱(chēng)和XML命名空間確定唯一的方面構(gòu)件時(shí),DService框架查找Bundle中的方面構(gòu)件實(shí)現(xiàn)類(lèi),由工廠(chǎng)創(chuàng)建用于調(diào)用initializeComponentFactory方法所對(duì)應(yīng)的臨時(shí)方面構(gòu)件對(duì)象;
輸入構(gòu)件實(shí)例中聲明的方面構(gòu)件元數(shù)據(jù)。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,初始化方面構(gòu)件工廠(chǎng)完成后,進(jìn)行初始化方面實(shí)例的過(guò)程包括:
DService框架為每一個(gè)構(gòu)件實(shí)例創(chuàng)建所配置的方面實(shí)例;
調(diào)用方面實(shí)例的configure方法,輸入構(gòu)件定義的元數(shù)據(jù),完成方面實(shí)例的初始化。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,啟動(dòng)構(gòu)件實(shí)例中的方面實(shí)例,獲取Valid和Invalid兩種狀態(tài)中任一狀態(tài)的方面實(shí)例的過(guò)程包括:
調(diào)用start方法之前,啟動(dòng)方面實(shí)例中的所有聲明需要的子方面實(shí)例;
調(diào)用start方法之后,檢測(cè)方面實(shí)例的當(dāng)前狀態(tài),當(dāng)所述方面實(shí)例中使用的所有的子方面實(shí)例狀態(tài)為Valid,則所述方面實(shí)例的狀態(tài)為Valid;
當(dāng)所述方面實(shí)例中使用的所有子方面實(shí)例狀態(tài)有一個(gè)為invalid,則所述方面實(shí)例的狀態(tài)為Invalid。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)方面實(shí)例狀態(tài)進(jìn)行切換時(shí),遍歷通知所述構(gòu)件實(shí)例中擁有的方面實(shí)例更改狀態(tài)的過(guò)程包括:
當(dāng)構(gòu)件實(shí)例的狀態(tài)從Invalid變?yōu)閂alid時(shí),遍歷通知所述構(gòu)件實(shí)例中擁有的方面實(shí)例改變狀態(tài)為Valid;
當(dāng)構(gòu)件實(shí)例的狀態(tài)從Valid變?yōu)镮nvalid時(shí),遍歷通知所述構(gòu)件實(shí)例中擁有的方面實(shí)例改變狀態(tài)為Invalid。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括:
當(dāng)構(gòu)件實(shí)例停止時(shí),所述構(gòu)件實(shí)例的所有方面構(gòu)件調(diào)用stop方法,進(jìn)入停止?fàn)顟B(tài)。
9.根據(jù)權(quán)利要求1所述的方案,其特征在于,在與構(gòu)件實(shí)現(xiàn)類(lèi)實(shí)例化的對(duì)象POJO進(jìn)行交互的過(guò)程中,還包括:
當(dāng)宿主實(shí)例的POJO對(duì)象中的公共方法被調(diào)用前或后,出現(xiàn)錯(cuò)誤時(shí),由方面實(shí)例攔截所述宿主實(shí)例的所有公共方法。
10.一種基于OSGi的服務(wù)轉(zhuǎn)換裝置,其特征在于,包括:
編碼織入模塊,用于進(jìn)行編碼,基于DService框架的項(xiàng)目管理模塊maven增加元數(shù)據(jù)內(nèi)容,并織入構(gòu)件實(shí)現(xiàn)類(lèi);
配置聲明模塊,用于在OSGi平臺(tái)啟動(dòng)時(shí),在服務(wù)構(gòu)件元數(shù)據(jù)中對(duì)構(gòu)件實(shí)例進(jìn)行配置,聲明組成構(gòu)件實(shí)例的方面構(gòu)件;
讀取模塊,用于讀取宿主實(shí)例對(duì)所述方面實(shí)例的元數(shù)據(jù)和宿主實(shí)例配置信息;
初始模塊,用于初始化方面構(gòu)件工廠(chǎng)和方面實(shí)例,啟動(dòng)構(gòu)件實(shí)例中的方面實(shí)例;
獲取模塊,用于獲取Valid和Invalid兩種狀態(tài)的方面實(shí)例;
切換模塊,用于當(dāng)所述Valid和Invalid兩種狀態(tài)的方面實(shí)例進(jìn)行切換時(shí),遍歷通知所有構(gòu)件實(shí)例中擁有的方面實(shí)例更改狀態(tài);
注值模塊,用于與構(gòu)件實(shí)現(xiàn)類(lèi)實(shí)例化的對(duì)象POJO進(jìn)行交互,直接通過(guò)元數(shù)據(jù)獲取宿主構(gòu)件的類(lèi)型信息,由確定狀態(tài)的方面實(shí)例為宿主實(shí)例的字段注值。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于山東中創(chuàng)軟件商用中間件股份有限公司,未經(jīng)山東中創(chuàng)軟件商用中間件股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110086817.1/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 部署SIP Servlet應(yīng)用、管理SIP Servlet應(yīng)用的方法及其系統(tǒng)
- 用于管理關(guān)于遠(yuǎn)程安裝在開(kāi)放服務(wù)網(wǎng)關(guān)初始化服務(wù)平臺(tái)中的包的綁定信息的方法和設(shè)備
- 一種服務(wù)交互方法及系統(tǒng)
- 一種日志服務(wù)處理方法及裝置
- 一種非OSGi的Java應(yīng)用程序調(diào)用OSGi服務(wù)的方法及裝置
- 基于OSGI的應(yīng)用框架測(cè)試方法和系統(tǒng)
- 一種基于OSGi的計(jì)算任務(wù)近數(shù)據(jù)源遷移方法
- 基于OSGi構(gòu)建軟件運(yùn)行中進(jìn)行調(diào)試實(shí)現(xiàn)方法及系統(tǒng)
- 一種OSGi異構(gòu)軟件框架的擴(kuò)展機(jī)制適配方法
- 跨平臺(tái)智能網(wǎng)關(guān)系統(tǒng)
- 服務(wù)票據(jù)發(fā)行系統(tǒng)及服務(wù)票據(jù)發(fā)行服務(wù)
- 出租服務(wù)服務(wù)器和出租服務(wù)系統(tǒng)
- 服務(wù)開(kāi)放方法及系統(tǒng)、服務(wù)開(kāi)放服務(wù)器
- 基于服務(wù)券服務(wù)的在線(xiàn)企業(yè)服務(wù)平臺(tái)
- 退稅服務(wù)系統(tǒng)、退稅服務(wù)平臺(tái)及其服務(wù)方法
- 服務(wù)亭(服務(wù)驛站)
- 公共服務(wù)自助服務(wù)機(jī)
- 服務(wù)提供服務(wù)器、服務(wù)提供系統(tǒng)以及服務(wù)提供方法
- 服務(wù)提供服務(wù)器、服務(wù)提供系統(tǒng)以及服務(wù)提供方法
- 服務(wù)提供服務(wù)器、服務(wù)提供系統(tǒng)以及服務(wù)提供方法
- 圖像轉(zhuǎn)換設(shè)備、圖像轉(zhuǎn)換電路及圖像轉(zhuǎn)換方法
- 數(shù)模轉(zhuǎn)換電路及轉(zhuǎn)換方法
- 轉(zhuǎn)換設(shè)備和轉(zhuǎn)換方法
- 占空比轉(zhuǎn)換電路及轉(zhuǎn)換方法
- 通信轉(zhuǎn)換方法、轉(zhuǎn)換裝置及轉(zhuǎn)換系統(tǒng)
- 模數(shù)轉(zhuǎn)換和模數(shù)轉(zhuǎn)換方法
- 轉(zhuǎn)換模塊以及轉(zhuǎn)換電路
- 熱電轉(zhuǎn)換材料、熱電轉(zhuǎn)換元件和熱電轉(zhuǎn)換模塊
- 熱電轉(zhuǎn)換材料、熱電轉(zhuǎn)換元件及熱電轉(zhuǎn)換模塊
- 熱電轉(zhuǎn)換材料、熱電轉(zhuǎn)換元件及熱電轉(zhuǎn)換模塊





