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

一種構(gòu)件管理方法及系統(tǒng)的制作方法

文檔序號(hào):7903372閱讀:363來(lái)源:國(guó)知局
專利名稱:一種構(gòu)件管理方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本申請(qǐng)涉及OSGI框架領(lǐng)域,特別是涉及一種基于JMX的遠(yuǎn)程構(gòu)件管理的方法及系統(tǒng)。
背景技術(shù)
聲明式服務(wù)是一種在OSGI框架中簡(jiǎn)化的面向服務(wù)構(gòu)件編程模型,此模型的可擴(kuò)展性、提供服務(wù)的簡(jiǎn)化方式等優(yōu)點(diǎn)備受開(kāi)發(fā)人員的青睞。聲明式服務(wù)提供了一種全新的開(kāi)發(fā)OSGI環(huán)境中服務(wù)構(gòu)件的方式,它使用聲明式的方式來(lái)發(fā)布、查找和綁定OSGI的服務(wù),這種方式簡(jiǎn)化服務(wù)構(gòu)件實(shí)現(xiàn)中因?yàn)楣芾韯?dòng)態(tài)環(huán)境而導(dǎo)致的非功能性需求,從而使開(kāi)發(fā)人員更加專注于自己的功能性業(yè)務(wù)邏輯實(shí)現(xiàn)。在使用聲明式服務(wù)方式進(jìn)行構(gòu)件開(kāi)發(fā)時(shí),涉及到如何對(duì)構(gòu)件進(jìn)行本地和遠(yuǎn)程管理的問(wèn)題;通常使用JMX對(duì)受管資源進(jìn)行管理;服務(wù)構(gòu)件的本地和遠(yuǎn)程管理,按照J(rèn)MX規(guī)范所描述的原則開(kāi)發(fā)的管理構(gòu)件,稱為Manageable Bean (MBean) ;MBean的構(gòu)造必須遵循由JMX 規(guī)范所描述的涉及模式及相關(guān)接口,這樣可以保證所有的MBean都可以以標(biāo)準(zhǔn)的形式提供被管理的資源設(shè)備。為使構(gòu)件具備被JMX管理的能力,開(kāi)發(fā)人員需要熟悉JMX的相關(guān)內(nèi)容,并且構(gòu)件需要實(shí)現(xiàn)特定接口(標(biāo)準(zhǔn)MBean、DynamicMBean等),標(biāo)志自己為可被管理的對(duì)象,這樣會(huì)使開(kāi)發(fā)變得相對(duì)復(fù)雜;而且構(gòu)件在聲明式服務(wù)構(gòu)架上運(yùn)行時(shí)可進(jìn)行加載、卸載和替換,若構(gòu)件已被卸載就不應(yīng)該具備被管理的能力,如何根據(jù)不同狀態(tài)實(shí)時(shí)改變被管理的狀態(tài)也是一個(gè)待研究的重要問(wèn)題。

發(fā)明內(nèi)容
為解決上述技術(shù)問(wèn)題,本申請(qǐng)實(shí)施例提供一種構(gòu)件管理方法及系統(tǒng),無(wú)需構(gòu)件實(shí)現(xiàn)特定接口而具備JMX管理能力,簡(jiǎn)化了開(kāi)發(fā)過(guò)程;并且具備更新構(gòu)件被管理的能力。技術(shù)方案如下—種構(gòu)件管理方法,所述方法基于一 JMX代理平臺(tái),所述JMX代理平臺(tái)中設(shè)置有 MBean服務(wù)器;所述方法包括對(duì)所述構(gòu)件進(jìn)行加載并解析所述構(gòu)件的元數(shù)據(jù)文件獲取所述元數(shù)據(jù)文件中的文件數(shù)據(jù);依據(jù)所述獲取的文件數(shù)據(jù)將所述構(gòu)件封裝為動(dòng)態(tài)MBean (Manageable Bean,管理構(gòu)件);將所述動(dòng)態(tài)MBean注冊(cè)為聲明式框架服務(wù);監(jiān)聽(tīng)所述服務(wù)的狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中,對(duì)所述MBean進(jìn)行管理。上述的方法,優(yōu)選的,對(duì)所述注冊(cè)至MBena服務(wù)器中的MBean進(jìn)行管理包括讀取和重新改寫MBean中的屬性值;
執(zhí)行MBean中定義的接口方法;獲取MBean中發(fā)出的通知事件對(duì)象。上述的方法,優(yōu)選的,所述監(jiān)聽(tīng)服務(wù)狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中包括當(dāng)監(jiān)聽(tīng)得到所述服務(wù)狀態(tài)改變且所述服務(wù)狀態(tài)為服務(wù)加載時(shí),將所述服務(wù)對(duì)應(yīng)的 MBean注冊(cè)至MBean服務(wù)器中。上述的方法,優(yōu)選的,所述監(jiān)聽(tīng)服務(wù)狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中包括當(dāng)監(jiān)聽(tīng)得到所述服務(wù)狀態(tài)改變且所述服務(wù)狀態(tài)為服務(wù)卸載時(shí),將所述服務(wù)對(duì)應(yīng)的 MBean反注冊(cè)至MBean服務(wù)器中。一種構(gòu)件管理系統(tǒng),所述系統(tǒng)基于一 JMX代理平臺(tái),所述JMX代理平臺(tái)中設(shè)置有 MBean服務(wù)器;所述系統(tǒng)包括加載單元,用于對(duì)所述構(gòu)件進(jìn)行加載;解析單元,用于解析所述構(gòu)件的元數(shù)據(jù)文件獲取所述元數(shù)據(jù)文件中的文件數(shù)據(jù);封裝單元,用于依據(jù)所述獲取的文件數(shù)據(jù)將所述構(gòu)件封裝為動(dòng)態(tài) MBean (Manageable Bean,管理構(gòu)件);注冊(cè)單元,用于將所述動(dòng)態(tài)MBean注冊(cè)為聲明式框架服務(wù);管理單元,用于監(jiān)聽(tīng)所述服務(wù)的狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中,對(duì)所述MBean進(jìn)行管理。上述的系統(tǒng),優(yōu)選的,所述管理單元包括改寫子單元,用于讀取和重新改寫MBean中的屬性值;執(zhí)行子單元,用于執(zhí)行MBean中定義的接口方法;獲取子單元,獲取MBean中發(fā)出的通知事件對(duì)象。上述的系統(tǒng),優(yōu)選的,所述管理單元包括注冊(cè)子單元,用于當(dāng)監(jiān)聽(tīng)得到所述服務(wù)狀態(tài)改變且所述服務(wù)狀態(tài)為服務(wù)加載時(shí), 將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至MBean服務(wù)器中。上述的系統(tǒng),優(yōu)選的,所述管理單元包括反注冊(cè)子單元,用于當(dāng)監(jiān)聽(tīng)得到所述服務(wù)狀態(tài)改變且所述服務(wù)狀態(tài)為服務(wù)卸載時(shí),將所述服務(wù)對(duì)應(yīng)的MBean反注冊(cè)至MBean服務(wù)器中。由以上本申請(qǐng)實(shí)施例提供的技術(shù)方案可見(jiàn),本發(fā)明提供的構(gòu)件管理方法及系統(tǒng), 基于JMX代理平臺(tái),在所述JMX平臺(tái)中設(shè)置有MB服務(wù)器;將需要管理的構(gòu)件進(jìn)行加載,解析所述構(gòu)件元數(shù)據(jù)文件中的文件數(shù)據(jù),依據(jù)所述文件數(shù)據(jù)將所述構(gòu)件封裝為動(dòng)態(tài)MBean ;將所述動(dòng)態(tài)MBean注冊(cè)為聲明式框架服務(wù);監(jiān)聽(tīng)所述服務(wù)的狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài), 將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中,對(duì)所述MBean進(jìn)行管理。本發(fā)明提供的構(gòu)件管理方法及系統(tǒng)提供了元數(shù)據(jù)聲明的方式或者注解的方式來(lái)配置管理能力,這樣用戶不需要關(guān)心JMX規(guī)范所定義的內(nèi)容,只需要關(guān)心構(gòu)件的管理能力;另外,本發(fā)明提供了維護(hù)構(gòu)件管理的生命周期能力,能夠動(dòng)態(tài)跟蹤構(gòu)件所在的bundle在框架中的狀態(tài),根據(jù)管理構(gòu)件的不同狀態(tài)做相關(guān)處理,從而實(shí)現(xiàn)了構(gòu)件的管理僅在運(yùn)行期有效的動(dòng)態(tài)管理能力。


為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本申請(qǐng)中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下, 還可以根據(jù)這些附圖獲得其他的附圖。圖1為本申請(qǐng)實(shí)施例一提供的一種構(gòu)件管理方法的流程圖;圖2為本申請(qǐng)實(shí)施例一提供的加載管理構(gòu)件的方法流程圖;圖3為本申請(qǐng)實(shí)施例一提供的卸載管理構(gòu)件的方法流程圖;圖4為本申請(qǐng)實(shí)施例一提供的MBean遠(yuǎn)程管理示意圖;圖5為本申請(qǐng)實(shí)施例二提供的一種構(gòu)件管理系統(tǒng)的結(jié)構(gòu)示意圖;圖6為本申請(qǐng)實(shí)施例二提供的一種構(gòu)件管理系統(tǒng)的又一結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了使本技術(shù)領(lǐng)域的人員更好地理解本申請(qǐng)方案。下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本申請(qǐng)保護(hù)的范圍。實(shí)施例一本申請(qǐng)實(shí)施例提供的一種構(gòu)件管理方法的流程圖如圖1所示,所述方法基于一 JMX代理平臺(tái),所述JMX代理由MBean服務(wù)器、一組MBean、代理服務(wù)、還有協(xié)議適配器(連接器)等組件構(gòu)成,這些代理級(jí)對(duì)象充當(dāng)管理應(yīng)用程序和受控資源之間的橋梁,直接管理受控資源,并且使受控資源可以通過(guò)連接器或協(xié)議適配器與管理應(yīng)用程序通信;服務(wù)構(gòu)件在該聲明式服務(wù)平臺(tái)上運(yùn)行時(shí),可進(jìn)行動(dòng)態(tài)加載、卸載和替換,本申請(qǐng)實(shí)施例提供的方法增加了構(gòu)件的服務(wù)監(jiān)聽(tīng)機(jī)制,當(dāng)服務(wù)構(gòu)件狀態(tài)發(fā)生改變時(shí),可實(shí)時(shí)監(jiān)聽(tīng)到服務(wù)狀態(tài)改變的信息;所述方法包括步驟SlOl 對(duì)所述構(gòu)件進(jìn)行加載并解析所述構(gòu)件的元數(shù)據(jù)文件獲取所述元數(shù)據(jù)文件中的文件數(shù)據(jù);步驟S102 依據(jù)所述獲取的文件數(shù)據(jù)將所述構(gòu)件封裝為動(dòng)態(tài)MBean ;管理構(gòu)件加載到聲明式框架并處于激活狀態(tài),聲明式服務(wù)框架負(fù)責(zé)解析管理構(gòu)件的元數(shù)據(jù)文件,根據(jù)元數(shù)據(jù)文件的數(shù)據(jù)將其封裝為動(dòng)態(tài)MBean;本申請(qǐng)實(shí)施例提供的方法定義了配置管理構(gòu)件的元數(shù)據(jù)文件的schema文件,管理構(gòu)件需依照此schema文件配置被包裝為MBean的一些屬性信息,以及暴露的屬性ftOperty和方法Method信息,其中 Property元素用于定義MBean暴露字段的屬性,Method元素用于定義MBean暴露方法的屬性;步驟S103 將所述動(dòng)態(tài)MBean注冊(cè)為聲明式框架服務(wù);注冊(cè)動(dòng)態(tài)MBean為聲明式服務(wù)框架可管理的服務(wù),本申請(qǐng)實(shí)施例提供的方法由于增加了服務(wù)監(jiān)聽(tīng)機(jī)制,監(jiān)聽(tīng)到此服務(wù)注冊(cè)后,就可以通過(guò)框架獲取此服務(wù);步驟S104:監(jiān)聽(tīng)所述服務(wù)的狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中,對(duì)所述MBean進(jìn)行管理;通過(guò)框架獲取服務(wù)后,通過(guò)服務(wù)的屬性信息識(shí)別是否為MBean對(duì)象,若未MBean對(duì)象,將此MBean注冊(cè)到MBeanServer中;通過(guò)對(duì)MBeanRegistration接口的實(shí)現(xiàn),管理構(gòu)件可以添加MBean注冊(cè)與注銷時(shí)機(jī)的控制;注冊(cè)到MBean服務(wù)器之后,就可以在程序中讀取和重新改寫MBean上的屬性值,執(zhí)行MBean上定義的接口方法和獲取MBean上發(fā)出來(lái)的通知事件對(duì)象;MBean服務(wù)器負(fù)責(zé)MBean的生命周期控制,當(dāng)監(jiān)聽(tīng)到管理構(gòu)件的服務(wù)狀態(tài)發(fā)生變化(加載、卸載、替換),本申請(qǐng)實(shí)施例提供的方法就會(huì)根據(jù)這些狀態(tài)做相關(guān)處理;當(dāng)服務(wù)構(gòu)件加載時(shí),注冊(cè)MBean對(duì)象到MBean服務(wù)器中;當(dāng)服務(wù)構(gòu)件卸載時(shí),反注冊(cè)MBean對(duì)象;當(dāng)服務(wù)構(gòu)件替換時(shí),先反注冊(cè)MBean對(duì)象,再重新注冊(cè)MBean對(duì)象到MBean服務(wù)器中;并且, 當(dāng)MBean的注冊(cè)/反注冊(cè)事件前后,MBean服務(wù)器都會(huì)動(dòng)態(tài)檢查“管理構(gòu)件”是否實(shí)現(xiàn)了 MBeanRegistration接口,如果返回結(jié)果為真,MB服務(wù)即會(huì)調(diào)用相應(yīng)的回調(diào)函數(shù);本申請(qǐng)實(shí)施例提供的加載管理構(gòu)件和卸載管理構(gòu)件的流程圖分別如本申請(qǐng)實(shí)施例提供的圖2及圖3 所示如圖2所示,包括步驟S201 封裝管理構(gòu)件為動(dòng)態(tài)MBean ;步驟S202 注冊(cè)動(dòng)態(tài)MBean為框架的服務(wù);步驟S203 監(jiān)聽(tīng)框架的服務(wù)構(gòu)件狀態(tài);步驟S204 監(jiān)聽(tīng)服務(wù)狀態(tài)是否改變;如改變執(zhí)行步驟S205 ;否則,返回執(zhí)行步驟 S203 ;步驟S205 監(jiān)聽(tīng)服務(wù)狀態(tài)是否注冊(cè),如已注冊(cè),執(zhí)行步驟S206 ;步驟S206 通過(guò)獲取服務(wù)屬性獲取ObjectName名稱,注冊(cè)此MBean到 MBeanServer φ。圖3所示,包括步驟S301 監(jiān)聽(tīng)框架的服務(wù)構(gòu)件狀態(tài);步驟S302 監(jiān)聽(tīng)服務(wù)狀態(tài)是否改變;如未改變返回執(zhí)行步驟S301,否則,執(zhí)行步驟 S303 ;步驟S303 監(jiān)聽(tīng)狀態(tài)是否反注冊(cè);如已反注冊(cè),執(zhí)行步驟S304 ;步驟S304 通過(guò)獲取服務(wù)屬性獲取ObjectName名稱,反注冊(cè)此MBean到 MBeanServer φ。本申請(qǐng)實(shí)施例提供的對(duì)構(gòu)件遠(yuǎn)程管理的工作原理為通過(guò)對(duì)相應(yīng)的連接器服務(wù)端 (connector server)發(fā)出請(qǐng)求,一個(gè)遠(yuǎn)程管理應(yīng)用程序可以與JMX代理建立連接,隨后才可以通過(guò)其本地的連接器客戶端(connector client)調(diào)用遠(yuǎn)程MBean所提供的操作;典型的,一個(gè)遠(yuǎn)程客戶通過(guò)MBeaMerver的一個(gè)接口方法子集,該子集來(lái)自MBeaMerver接口的父接口(parent interface)所定義的方法集。本申請(qǐng)實(shí)施例中,對(duì)于遠(yuǎn)程管理MBean的一示意圖如圖4所示,連接器客戶端指定 MBean服務(wù)器的遠(yuǎn)程代表的角色,管理程序向其發(fā)出getState的方法調(diào)用,這種方式的動(dòng)態(tài)調(diào)用通常是與MBean的自省(introspection)機(jī)制協(xié)作的,通過(guò)MBean的自省,可以動(dòng)態(tài)的發(fā)現(xiàn)管理接口提供的屬性集合方法集以及其他所有MBean對(duì)象特征,對(duì)本地和遠(yuǎn)程都一樣;代理對(duì)象通常由MBean類自動(dòng)產(chǎn)生,管理應(yīng)用程序直接向代理對(duì)象提出getState 方法的調(diào)用請(qǐng)求,代理對(duì)象再依賴連接器客戶端將此請(qǐng)求傳送給遠(yuǎn)程的JMX代理層,最后傳給目標(biāo)MBean,請(qǐng)求的響應(yīng)則以相反的路徑傳回。對(duì)于前述的方法實(shí)施例,為了簡(jiǎn)單描述,故將其都表述為一系列的動(dòng)作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本發(fā)明,某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說(shuō)明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作和模塊并不一定是本發(fā)明所必須的。實(shí)施例二針對(duì)以上方法實(shí)施例,本申請(qǐng)實(shí)施例還提供了一種構(gòu)件管理系統(tǒng),所述系統(tǒng)基于一 JMX代理平臺(tái),所述JMX代理平臺(tái)中設(shè)置有MBean服務(wù)器;其結(jié)構(gòu)示意圖如圖5所示,包括加載單元401、解析單元402、封裝單元403、注冊(cè)單元404和管理單元405 ;其中加載單元401,用于對(duì)所述構(gòu)件進(jìn)行加載;解析單元402,用于解析所述構(gòu)件的元數(shù)據(jù)文件獲取所述元數(shù)據(jù)文件中的文件數(shù)據(jù);封裝單元403,用于依據(jù)所述獲取的文件數(shù)據(jù)將所述構(gòu)件封裝為動(dòng)態(tài) MBean (Manageable Bean,管理構(gòu)件);注冊(cè)單元404,用于將所述動(dòng)態(tài)MBean注冊(cè)為聲明式框架服務(wù);管理單元405,用于監(jiān)聽(tīng)所述服務(wù)的狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中,對(duì)所述MBean進(jìn)行管理。本申請(qǐng)實(shí)施例還提供了構(gòu)件管理系統(tǒng)的另一結(jié)構(gòu)示意圖如圖6所示,其中管理單元405包括改寫子單元406,用于讀取和重新改寫MBean中的屬性值;執(zhí)行子單元407,用于執(zhí)行MBean中定義的接口方法;獲取子單元408,獲取MBean中發(fā)出的通知事件對(duì)象。本申請(qǐng)實(shí)施例提供的管理單元中,還包括注冊(cè)子單元409,用于當(dāng)監(jiān)聽(tīng)得到所述服務(wù)狀態(tài)改變且所述服務(wù)狀態(tài)為服務(wù)加載時(shí),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至MBean服務(wù)器中。反注冊(cè)子單元410,用于當(dāng)監(jiān)聽(tīng)得到所述服務(wù)狀態(tài)改變且所述服務(wù)狀態(tài)為服務(wù)卸載時(shí),將所述服務(wù)對(duì)應(yīng)的MBean反注冊(cè)至MBean服務(wù)器中。對(duì)于系統(tǒng)實(shí)施例而言,由于其基本相應(yīng)于方法實(shí)施例,所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。本說(shuō)明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。以上所述僅是本申請(qǐng)的具體實(shí)施方式
,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本申請(qǐng)?jiān)淼那疤嵯?,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本申請(qǐng)的保護(hù)范圍。
權(quán)利要求
1.一種構(gòu)件管理方法,其特征在于,所述方法基于一 JMX代理平臺(tái),所述JMX代理平臺(tái)中設(shè)置有MBean服務(wù)器;所述方法包括對(duì)所述構(gòu)件進(jìn)行加載并解析所述構(gòu)件的元數(shù)據(jù)文件獲取所述元數(shù)據(jù)文件中的文件數(shù)據(jù);依據(jù)所述獲取的文件數(shù)據(jù)將所述構(gòu)件封裝為動(dòng)態(tài)MBean (Manageable Bean,管理構(gòu)件);將所述動(dòng)態(tài)MBean注冊(cè)為聲明式框架服務(wù);監(jiān)聽(tīng)所述服務(wù)的狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中,對(duì)所述MBean進(jìn)行管理。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,對(duì)所述注冊(cè)至MBena服務(wù)器中的MBean進(jìn)行管理包括讀取和重新改寫MBean中的屬性值;執(zhí)行MBean中定義的接口方法;獲取MBean中發(fā)出的通知事件對(duì)象。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述監(jiān)聽(tīng)服務(wù)狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中包括 當(dāng)監(jiān)聽(tīng)得到所述服務(wù)狀態(tài)改變且所述服務(wù)狀態(tài)為服務(wù)加載時(shí),將所述服務(wù)對(duì)應(yīng)的 MBean注冊(cè)至MBean服務(wù)器中。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述監(jiān)聽(tīng)服務(wù)狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中包括當(dāng)監(jiān)聽(tīng)得到所述服務(wù)狀態(tài)改變且所述服務(wù)狀態(tài)為服務(wù)卸載時(shí),將所述服務(wù)對(duì)應(yīng)的 MBean反注冊(cè)至MBean服務(wù)器中。
5.一種構(gòu)件管理系統(tǒng),其特征在于,所述系統(tǒng)基于一 JMX代理平臺(tái),所述JMX代理平臺(tái)中設(shè)置有MBean服務(wù)器;所述系統(tǒng)包括加載單元,用于對(duì)所述構(gòu)件進(jìn)行加載;解析單元,用于解析所述構(gòu)件的元數(shù)據(jù)文件獲取所述元數(shù)據(jù)文件中的文件數(shù)據(jù);封裝單元,用于依據(jù)所述獲取的文件數(shù)據(jù)將所述構(gòu)件封裝為動(dòng)態(tài)MBean(Manageable Bean,管理構(gòu)件);注冊(cè)單元,用于將所述動(dòng)態(tài)MBean注冊(cè)為聲明式框架服務(wù);管理單元,用于監(jiān)聽(tīng)所述服務(wù)的狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的 MBean注冊(cè)至所述MBean服務(wù)器中,對(duì)所述MBean進(jìn)行管理。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述管理單元包括改寫子單元,用于讀取和重新改寫MBean中的屬性值;執(zhí)行子單元,用于執(zhí)行MBean中定義的接口方法;獲取子單元,獲取MBean中發(fā)出的通知事件對(duì)象。
7.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述管理單元包括注冊(cè)子單元,用于當(dāng)監(jiān)聽(tīng)得到所述服務(wù)狀態(tài)改變且所述服務(wù)狀態(tài)為服務(wù)加載時(shí),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至MBean服務(wù)器中。
8.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述管理單元包括反注冊(cè)子單元,用于當(dāng)監(jiān)聽(tīng)得到所述服務(wù)狀態(tài)改變且所述服務(wù)狀態(tài)為服務(wù)卸載時(shí),將所述服務(wù)對(duì)應(yīng)的MBean反注冊(cè)至MBean服務(wù)器中。
全文摘要
本申請(qǐng)公開(kāi)了一種構(gòu)件管理方法及系統(tǒng),所述方法基于一JMX代理平臺(tái),所述JMX代理平臺(tái)中設(shè)置有MBean服務(wù)器;所述方法包括對(duì)所述構(gòu)件進(jìn)行加載并解析所述構(gòu)件的元數(shù)據(jù)文件獲取所述元數(shù)據(jù)文件中的文件數(shù)據(jù);依據(jù)所述獲取的文件數(shù)據(jù)將所述構(gòu)件封裝為動(dòng)態(tài)MBean(Manageable Bean,管理構(gòu)件);將所述動(dòng)態(tài)MBean注冊(cè)為聲明式框架服務(wù);監(jiān)聽(tīng)所述服務(wù)的狀態(tài),依據(jù)所述服務(wù)的不同狀態(tài),將所述服務(wù)對(duì)應(yīng)的MBean注冊(cè)至所述MBean服務(wù)器中,對(duì)所述MBean進(jìn)行管理。本申請(qǐng)?zhí)峁┮环N構(gòu)件管理方法,無(wú)需構(gòu)件實(shí)現(xiàn)特定接口而具備JMX管理能力,簡(jiǎn)化了開(kāi)發(fā)過(guò)程;并且具備更新構(gòu)件被管理的能力。
文檔編號(hào)H04L29/08GK102325180SQ201110264398
公開(kāi)日2012年1月18日 申請(qǐng)日期2011年9月7日 優(yōu)先權(quán)日2011年9月7日
發(fā)明者劉民, 劉耀, 陳芳芳 申請(qǐng)人:山東中創(chuàng)軟件商用中間件股份有限公司, 山東中創(chuàng)軟件工程股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1