亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種事件通知方法及裝置的制作方法

文檔序號(hào):7870362閱讀:127來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):一種事件通知方法及裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信領(lǐng)域,尤其涉及一種事件通知方法及裝置。
背景技術(shù)
隨著軟件技術(shù)的發(fā)展,越來(lái)越多的應(yīng)用程序希望獲知文件系統(tǒng)的變化,例如應(yīng)用程序目錄下文件數(shù)目的增減、文件的大小變化等,以便實(shí)現(xiàn)如跟蹤某些關(guān)鍵的系統(tǒng)文件的變化、監(jiān)控某個(gè)分區(qū)磁盤(pán)的整體使用情況、系統(tǒng)崩潰時(shí)進(jìn)行自動(dòng)清理、自動(dòng)觸發(fā)備份進(jìn)程等一些比較特殊的應(yīng)用。
現(xiàn)有技術(shù)提供一種通知機(jī)制來(lái)實(shí)現(xiàn)客戶端應(yīng)用對(duì)文件系統(tǒng)的實(shí)時(shí)監(jiān)控,其中大多數(shù)的操作系統(tǒng)可以通過(guò)操作系統(tǒng)中的接口通知客戶端應(yīng)用文件系統(tǒng)的變化。具體的,當(dāng)客戶端應(yīng)用需要對(duì)文件系統(tǒng)進(jìn)行監(jiān)控時(shí),首先將該客戶端應(yīng)用注冊(cè)到服務(wù)器,當(dāng)服務(wù)器中存儲(chǔ)該客戶端應(yīng)用的文件系統(tǒng)變化時(shí),客戶端便可以通過(guò)操作系統(tǒng)中的接口感知到存儲(chǔ)自身應(yīng)用的文件系統(tǒng)發(fā)生了變化,此時(shí)就可以將文件系統(tǒng)的變化通知給應(yīng)用。
現(xiàn)有技術(shù)中至少存在如下問(wèn)題客戶端只能通過(guò)接口去被動(dòng)感知文件系統(tǒng)有沒(méi)有發(fā)生變化,并沒(méi)有技術(shù)能夠?qū)崿F(xiàn)當(dāng)存儲(chǔ)在服務(wù)器中的文件系統(tǒng)變化時(shí),服務(wù)器主動(dòng)向客戶端通知文件系統(tǒng)的變化,因此如何實(shí)現(xiàn)服務(wù)器主動(dòng)向客戶端通知文件系統(tǒng)的變化,已成為業(yè)界研究的重點(diǎn)。發(fā)明內(nèi)容
本發(fā)明的實(shí)施例提供一種事件通知方法及裝置,提供了服務(wù)器主動(dòng)向客戶端通知文件系統(tǒng)變化的機(jī)制。
本發(fā)明的第一方面,提供一種事件通知方法,應(yīng)用于服務(wù)器中,所述服務(wù)器與第一客戶端、第二客戶端通信,所述服務(wù)器注冊(cè)所述第一客戶端的應(yīng)用APP的至少一個(gè)操作動(dòng)作,所述APP是運(yùn)行在所述第一客戶端的程序,包括
接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示,其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件;
按照所述操作指示所指定的第一操作動(dòng)作,對(duì)所述第一文件執(zhí)行操作;
查找注冊(cè)的所述第一客戶端的APP的所述操作動(dòng)作中,是否注冊(cè)有所述第一操作動(dòng)作;
當(dāng)注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息。
結(jié)合第一方面,在一種可能的實(shí)現(xiàn)方式中,在所述接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示之前,還包括
接收所述第一客戶 端發(fā)送的所述APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息;
根據(jù)所述注冊(cè)請(qǐng)求攜帶的注冊(cè)操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所述注冊(cè)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)。
結(jié)合第一方面和上述可能的實(shí)現(xiàn)方式,在另一種可能的實(shí)現(xiàn)方式中,在所述根據(jù)所述注冊(cè)請(qǐng)求攜帶的操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所述操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)之后,還包括
向所述第一客戶端發(fā)送注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP 的目錄信息,以便所述第一客戶端將所述目錄信息添加到預(yù)存的偵聽(tīng)列表中,進(jìn)而當(dāng)所述第一客戶端在接收到所述事件通知消息后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述 APP。
結(jié)合第一方面和上述可能的實(shí)現(xiàn)方式,在另一種可能的實(shí)現(xiàn)方式中,還包括
接收所述第一客戶端發(fā)送的所述APP的注銷(xiāo)請(qǐng)求;其中,所述注銷(xiāo)請(qǐng)求中攜帶注銷(xiāo)操作動(dòng)作信息;
根據(jù)所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除。
結(jié)合第一方面和上述可能的實(shí)現(xiàn)方式,在另一種可能的實(shí)現(xiàn)方式中,在所述根據(jù)所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除之后,還包括
向所述第一客戶端發(fā)送注銷(xiāo)成功消息;其中所述注銷(xiāo)成功消息中包含所述APP的目錄信息,以便所述第一客戶端根據(jù)所述注銷(xiāo)成功消息從偵聽(tīng)列表中刪除所述目錄信息。
結(jié)合第一方面和上述可能的實(shí)現(xiàn)方式,在另一種可能的實(shí)現(xiàn)方式中,所述操作動(dòng)作包括刪除、修改、創(chuàng)建、添加。
本發(fā)明的第二方面,提供一種事件通知方法,應(yīng)用于第一客戶端,所述第一客戶端與服務(wù)器通信,所述服務(wù)器與第二客戶端通信,包括
生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息,所述APP是運(yùn)行在所述第一客戶端的程序;
將所述注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器;以便所述服務(wù)器注冊(cè)所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作后,接收到所述第二客戶端發(fā)送的對(duì)第一文件的操作指示時(shí),根據(jù)所述操作指示所指定的第一操作動(dòng)作對(duì)所述第一文件執(zhí)行操作,并且當(dāng)查找到注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息;
其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件。
結(jié)合第二方面,在一種可能的實(shí)現(xiàn)方式中,在所述生成所述第一客戶端的應(yīng)用APP 的注冊(cè)請(qǐng)求之后,還包括
將所述注冊(cè)請(qǐng)求中攜帶的所述注冊(cè)操作動(dòng)作信息的格式進(jìn)行轉(zhuǎn)換得到所述服務(wù)器內(nèi)部的統(tǒng)一格式;以便所述服務(wù)器將運(yùn)行不同操作系統(tǒng)的客戶端發(fā)送的所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作進(jìn)行統(tǒng)一注冊(cè)。
結(jié)合第二方面和上述可能的實(shí)現(xiàn)方式,在另一種可能的實(shí)現(xiàn)方式中,在所述將所述注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器之后,還包括
接收所述服務(wù)器發(fā) 送的注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP的目錄信息;
將所述目錄信息添加到預(yù)存的偵聽(tīng)列表中,以便在接收到所述事件通知消息之后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述APP。
本發(fā)明的第三方面,提供一種事件通知裝置,應(yīng)用于服務(wù)器中,所述服務(wù)器與第一客戶端、第二客戶端通信,所述服務(wù)器注冊(cè)所述第一客戶端的應(yīng)用APP的至少一個(gè)操作動(dòng)作,所述APP是運(yùn)行在所述第一客戶端的程序,包括
第一接收單元,用于接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示,其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件;
執(zhí)行單元,用于按照所述第一接收單元接收的所述操作指示所指定的第一操作動(dòng)作,對(duì)所述第一文件執(zhí)行操作;
查找單元,用于查找注冊(cè)的所述第一客戶端的APP的所述操作動(dòng)作中,是否注冊(cè)有所述第一操作動(dòng)作;
第一發(fā)送單元,用于當(dāng)注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息。
結(jié)合第三方面,在一種可能的實(shí)現(xiàn)方式中,還包括
第二接收單元,用于在所述第一接收單元接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示之前,接收所述第一客戶端發(fā)送的所述APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息;
添加單元,用于根據(jù)所述第二接收單元接收的所述注冊(cè)請(qǐng)求攜帶的注冊(cè)操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所述注冊(cè)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)。
結(jié)合第三方面和上述可能的實(shí)現(xiàn)方式,在另一種可能的實(shí)現(xiàn)方式中,還包括
第二發(fā)送單元,用于在所述添加單元根據(jù)所述注冊(cè)請(qǐng)求攜帶的操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所述操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)之后,向所述第一客戶端發(fā)送注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP的目錄信息,以便所述第一客戶端將所述目錄信息添加到預(yù)存的偵聽(tīng)列表中,進(jìn)而當(dāng)所述第一客戶端在接收到所述事件通知消息后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述 APP。
結(jié)合第三方面和上述可能的實(shí)現(xiàn)方式,在另一種可能的實(shí)現(xiàn)方式中,
所述第二接收單元,還用于接收所述第一客戶端發(fā)送的所述APP的注銷(xiāo)請(qǐng)求;其中,所述注銷(xiāo)請(qǐng)求中攜帶注銷(xiāo)操作動(dòng)作信息;
所述裝置還包括
刪除單元,用于根據(jù)所述第二接收單元接收的所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除。
結(jié)合第三方面和上述可能`的實(shí)現(xiàn)方式,在另一種可能的實(shí)現(xiàn)方式中,
所述第二發(fā)送單元,還用于在所述刪除單元根據(jù)所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除之后,向所述第一客戶端發(fā)送注銷(xiāo)成功消息;其中所述注銷(xiāo)成功消息中包含所述APP的目錄信息,以便所述第一客戶端根據(jù)所述注銷(xiāo)成功消息從偵聽(tīng)列表中刪除所述目錄/[目息。
本發(fā)明的第四方面,提供一種事件通知裝置,應(yīng)用于第一客戶端,所述第一客戶端與服務(wù)器通信,所述服務(wù)器與第二客戶端通信,包括
生成單元,用于生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息,所述APP是運(yùn)行在所述第一客戶端的程序;
發(fā)送單元,用于將所述生成單元生成的注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器;以便所述服務(wù)器注冊(cè)所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作后,接收到所述第二客戶端發(fā)送的對(duì)第一文件的操作指示時(shí),根據(jù)所述操作指示所指定的第一操作動(dòng)作對(duì)所述第一文件執(zhí)行操作, 并且當(dāng)查找到注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息;
其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件。
結(jié)合第四方面,在另一種可能的實(shí)現(xiàn)方式中,還包括
轉(zhuǎn)換單元,用于在所述生成單元生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求之后,將所述注冊(cè)請(qǐng)求中攜帶的所述注冊(cè)操作動(dòng)作信息的格式進(jìn)行轉(zhuǎn)換得到所述服務(wù)器內(nèi)部的統(tǒng)一格式;以便所述服務(wù)器將運(yùn)行不同操作系統(tǒng)的客戶端發(fā)送的所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作進(jìn)行統(tǒng)一注冊(cè)。
結(jié)合第四方面和上述可能的實(shí)現(xiàn)方式,在另一種可能的實(shí)現(xiàn)方式中,還包括
接收單元,用于在所述發(fā)送單元將所述注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器之后,接收所述服務(wù)器發(fā)送的注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP的目錄信息;
添加單元,用于將所·述接收單元接收的目錄信息添加到預(yù)存的偵聽(tīng)列表中,以便在接收到所述事件通知消息之后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述APP。
本發(fā)明實(shí)施例提供的一種事件通知方法及裝置,當(dāng)服務(wù)器接收第二客戶端對(duì)第一文件的操作指示,并在根據(jù)操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行操作后,查找注冊(cè)的第一客戶端的應(yīng)用的至少一個(gè)操作動(dòng)作中,是否注冊(cè)有第一操作動(dòng)作,并當(dāng)注冊(cè)有第一操作動(dòng)作時(shí),向第一客戶端發(fā)送事件通知消息,這樣當(dāng)存儲(chǔ)第一客戶端應(yīng)用的文件發(fā)生變化時(shí)由服務(wù)器向第一客戶端發(fā)送事件通知消息,解決了現(xiàn)有技術(shù)中第一客戶端只能通過(guò)接口去被動(dòng)感知存儲(chǔ)在服務(wù)器中的應(yīng)用的第一文件有沒(méi)有發(fā)生變化的問(wèn)題,實(shí)現(xiàn)了服務(wù)器主動(dòng)向第一客戶端通知第一文件變化的機(jī)制。


為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例1提供的一種事件通知方法流程圖2為本發(fā)明實(shí)施例2提供的一種事件通知方法流程圖3為本發(fā)明實(shí)施例3提供的一種事件通知方法流程圖4為本發(fā)明實(shí)施例3提供的另一種事件通知方法流程圖5為本發(fā)明實(shí)施例3提供的另一種事件通知方法流程圖6為本發(fā)明實(shí)施例4提供的一種事件通知裝置組成示意圖7為本發(fā)明實(shí)施例4提供的另一種事件通知裝置組成示意圖8為本發(fā)明實(shí)施例5提供的一種事件通知裝置組成示意圖9為本發(fā)明實(shí)施例5提供的另一種事件通知裝置組成示意圖10為本發(fā)明實(shí)施例6提供的一種事件通知裝置組成示意圖11為本發(fā)明實(shí)施例7提供的一種事件通知裝置組成示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
實(shí)施例1
本發(fā)明實(shí)施例提供一種事件通知方法,應(yīng)用于服務(wù)器中,該服務(wù)器與第一客戶端、 第二客戶端通信,服務(wù)器注冊(cè)有第一客戶端的APP的至少一個(gè)操作動(dòng)作,該APP是運(yùn)行在所述第一客戶端的程序?,F(xiàn)有的通知機(jī)制是第一客戶端通過(guò)操作系統(tǒng)中的接口被動(dòng)的感知服務(wù)器中的第一文件有沒(méi)有發(fā)生變化,而不能實(shí)現(xiàn)在第一文件發(fā)生變化服務(wù)器主動(dòng)向第一客戶端通知第一文件的變化,本發(fā)明提供的實(shí)施例中將這種通知機(jī)制放在服務(wù)器中的實(shí)現(xiàn), 即實(shí)現(xiàn)服務(wù)器向第一客戶端通知第一文件的變化情況,并且由于不同操作系統(tǒng)的客戶端提供的感知服務(wù)器中第一文件變化的接口不同,因此如果與第一客戶端運(yùn)行不同操作系統(tǒng)的第二客戶端將服務(wù)器中的第一文件進(jìn)行操作后,利用現(xiàn)有技術(shù)中的通知機(jī)制第一客戶端是無(wú)法感知到第一文件的變化的,而本發(fā)明實(shí)施例提供的事件通知方法,將通知機(jī)制放在服務(wù)器中實(shí)現(xiàn),便可以避免當(dāng)與第一客戶端運(yùn)行不同操作系統(tǒng)的第二客戶端對(duì)第一文件進(jìn)行操作后,第一客戶端無(wú)法感知第一文件變化的情況發(fā)生。如圖1所示,該方法可以包括
101、接收第二客戶端發(fā)送的對(duì)第一文件的操作指示。
其中,服務(wù)器接收到第二客戶端發(fā)送的針對(duì)第一文件的操作指示,第一文件是存儲(chǔ)在服務(wù)器的第一客戶端的APP的數(shù)據(jù)的文件。該第一客戶端的APP的數(shù)據(jù)為運(yùn)行該APP 需要的數(shù)據(jù)和用戶在該APP的目錄下存儲(chǔ)的數(shù)據(jù)。
102、按照操作指示所指定的第一操作動(dòng)作,對(duì)第一文件執(zhí)行操作。
其中,當(dāng)服務(wù)器接收到第二客戶端發(fā)送的針對(duì)第一文件的第一操作指示后,便會(huì)根據(jù)該操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行相應(yīng) 的操作。
103、查找注冊(cè)的第一客戶端的APP的操作動(dòng)作中,是否注冊(cè)有第一操作動(dòng)作。
其中,當(dāng)服務(wù)器根據(jù)操作指示對(duì)第一文件執(zhí)行相應(yīng)的操作后,便會(huì)查找注冊(cè)的第一客戶端的APP的至少一個(gè)操作動(dòng)作中,是否注冊(cè)有與第二客戶端發(fā)送的操作指示所指定的第一操作動(dòng)作。
104、當(dāng)注冊(cè)有第一操作動(dòng)作時(shí),向第一客戶端發(fā)送事件通知消息。
其中,當(dāng)服務(wù)器查找到注冊(cè)有第二客戶端發(fā)送的操作指示所指定的第一操作動(dòng)作時(shí),便會(huì)向第一客戶端發(fā)送事件通知消息,以便第一客戶端獲知第一文件的變化,事件通知消息中攜帶有第一操作動(dòng)作的信息。
本發(fā)明實(shí)施例提供的一種事件通知方法,當(dāng)服務(wù)器接收第二客戶端對(duì)第一文件的操作指示,并在根據(jù)操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行操作后,查找注冊(cè)的第一客戶端的應(yīng)用的至少一個(gè)操作動(dòng)作中,是否注冊(cè)有第一操作動(dòng)作,并當(dāng)注冊(cè)有第一操作動(dòng)作時(shí),向第一客戶端發(fā)送事件通知消息,這樣當(dāng)存儲(chǔ)第一客戶端應(yīng)用的文件發(fā)生變化時(shí)由服務(wù)器向第一客戶端發(fā)送事件通知消息,解決了現(xiàn)有技術(shù)中第一客戶端只能通過(guò)接口去被動(dòng)感知存儲(chǔ)在服務(wù)器中的應(yīng)用的第一文件有沒(méi)有發(fā)生變化的問(wèn)題,實(shí)現(xiàn)了服務(wù)器主動(dòng)向第一客戶端通知第一文件變化的機(jī)制。
實(shí)施例2
本發(fā)明實(shí)施例提供一種的事件通知方法,應(yīng)用于第一客戶端,第一客戶端與服務(wù)器通信,服務(wù)器與第二客戶端通信,如圖2所示,該方法可以包括
201、生成第一客戶端的應(yīng)用的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息。
其中,當(dāng)?shù)谝豢蛻舳说腁PP希望獲得服務(wù)器中存儲(chǔ)自身數(shù)據(jù)的文件夾中的數(shù)據(jù)的變化時(shí),可以在第一客戶端生成該APP的注冊(cè)請(qǐng)求,該注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息, 該注冊(cè)操作動(dòng)作信息所指的操作動(dòng)作可以是刪除、添加、修改等,該APP是運(yùn)行在第一客戶端的程序。
202、將注冊(cè)請(qǐng)求發(fā)送至服務(wù)器;以便服務(wù)器注冊(cè)該注冊(cè)請(qǐng)求中攜帶的注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作后,接收到第二客戶端發(fā)送的對(duì)第一文件的操作指示時(shí),根據(jù)操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行操作,并且當(dāng)查找到注冊(cè)有第一操作動(dòng)作時(shí), 向第一客戶端發(fā)送事件通知消息。
其中,當(dāng)?shù)谝豢蛻舳松勺?cè)請(qǐng)求后,將該注冊(cè)請(qǐng)求發(fā)送至服務(wù)器,這樣服務(wù)器便可以將接收到的第一客戶端發(fā)送的注冊(cè)請(qǐng)求中攜帶的注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作進(jìn)行注冊(cè),進(jìn)而當(dāng)服務(wù)器接收到第二客戶端發(fā)送的對(duì)第一文件的操作指示時(shí),根據(jù)該操作指示所指定的第一操作動(dòng)作對(duì)第一文件進(jìn)行操作,并查找注冊(cè)到第一客戶端的APP的操作動(dòng)作中是否注冊(cè)有第一操作動(dòng)作,并在查找到注冊(cè)有第一操作動(dòng)作時(shí),向第一客戶端發(fā)送事件通知消息,該事件通知消息中攜帶有第一操作動(dòng)作的信息。其中,第一文件是存儲(chǔ)在服務(wù)器的第一客戶端的APP的數(shù)據(jù)的文件。
本發(fā)明實(shí)施例提供的一種事件通知方法,當(dāng)服務(wù)器接收第二客戶端對(duì)第一文件的操作指示,并在根據(jù)操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行操作后,查找注冊(cè)的第一客戶端的應(yīng)用的至少一個(gè)操作動(dòng)作中,是否注冊(cè)有第一操作動(dòng)作,并當(dāng)注冊(cè)有第一操作動(dòng)作時(shí),向第一客戶端發(fā)送事件通知消息,這樣當(dāng)存儲(chǔ)第一客戶端應(yīng)用的文件發(fā)生變化時(shí)由服務(wù)器向第一客戶端發(fā)送事件通知消息,解決了現(xiàn)有技術(shù)中第 一客戶端只能通過(guò)接口去被動(dòng)感知存儲(chǔ)在服務(wù)器中的應(yīng)用的第一文件有沒(méi)有發(fā)生變化的問(wèn)題,實(shí)現(xiàn)了服務(wù)器主動(dòng)向第一客戶端通知第一文件變化的機(jī)制。
實(shí)施例3
本發(fā)明實(shí)施例提供一種事件通知方法,為了方便本領(lǐng)域技術(shù)人員的理解,本發(fā)明實(shí)施例將分三個(gè)階段介紹本發(fā)明提供的事件通知方法。
第一階段事件注冊(cè),如圖3所示,包括
301、第一客戶端生成第一客戶端的APP的注冊(cè)請(qǐng)求。
其中,當(dāng)?shù)谝豢蛻舳说腁PP需要獲知服務(wù)器中存儲(chǔ)的自身數(shù)據(jù)的變化時(shí),可以先調(diào)用應(yīng)用程序接口(Application Program Interface,API),并生成APP的注冊(cè)請(qǐng)求,該注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息,該注冊(cè)操作動(dòng)作信息相應(yīng)的操作動(dòng)作可以是刪除、添加、 修改等。其中,不同的操作系統(tǒng)有各自不同的API,如在Windows操作系統(tǒng)上的APP會(huì)調(diào)用 FindFirstChangeNotification 等 API,在 Linux 操作系統(tǒng)上的 APP 會(huì)調(diào)用 inotify_add_ watch 等 API ο
302、第一客戶端將注冊(cè)請(qǐng)求中攜帶的注冊(cè)操作動(dòng)作信息的格式進(jìn)行轉(zhuǎn)換得到服務(wù)器內(nèi)部的統(tǒng)一格式。
其中,由于運(yùn)行不同操作系統(tǒng)的客戶端提供的通知APP文件系統(tǒng)變化的接口不同,因此為了避免在分布式文件系統(tǒng)下,當(dāng)運(yùn)行有不同操作系統(tǒng)的客戶端在服務(wù)器中同時(shí)注冊(cè)時(shí),服務(wù)器需要根據(jù)操作系統(tǒng)的不同分別制定不同的規(guī)則來(lái)對(duì)客戶端的注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作進(jìn)行注冊(cè),本發(fā)明實(shí)施例提供一種解決方案,將第一客戶端生成的注冊(cè)請(qǐng)求中攜帶的注冊(cè)操作動(dòng)作信息進(jìn)行格式轉(zhuǎn)換,將注冊(cè)操作動(dòng)作信息的格式轉(zhuǎn)換為服務(wù)器內(nèi)部統(tǒng)一格式,這樣便可以屏蔽掉不同操作系統(tǒng)平臺(tái)的差異性,從而將運(yùn)行不同操作系統(tǒng)的客戶端發(fā)送的注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作統(tǒng)一進(jìn)行注冊(cè)。具體的,本發(fā)明實(shí)施例提供一種分布式文件系統(tǒng)接口層實(shí)例,可以實(shí)現(xiàn)操作系統(tǒng)的各種事件接口到私有接口的統(tǒng)一轉(zhuǎn)換。其中,分布式文件系統(tǒng)接口層實(shí)例安裝在客戶端的操作系統(tǒng)中,分布式文件系統(tǒng)接口層還可以獲取到APP在服務(wù)器中存儲(chǔ)的所有的元數(shù)據(jù)信息,以便用戶可以獲知該APP 的屬性信息。
303、第一客戶端將注冊(cè)請(qǐng)求發(fā)送至服務(wù)器。
其中,在第一客戶端將注冊(cè)請(qǐng)求中攜帶的注冊(cè)操作動(dòng)作信息的格式轉(zhuǎn)換為服務(wù)器內(nèi)部私有結(jié)構(gòu)的格式之后,可以將注冊(cè)請(qǐng)求發(fā)送至服務(wù)器,以便當(dāng)服務(wù)器中存儲(chǔ)第一客戶端的APP的第一文件發(fā)生變化時(shí),服務(wù)器將第一文件的變化通知第一客戶端。
304、服務(wù)器根據(jù)注冊(cè)請(qǐng)求攜帶的注冊(cè)操作動(dòng)作信息,在APP的分布式通知 (notify)注冊(cè)表中添加與注冊(cè)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)。
具體的,該注冊(cè)請(qǐng)求除了可以攜帶注冊(cè)操作動(dòng)作信息之外,還可以攜帶第一客戶端的APP的標(biāo)識(shí),當(dāng)服務(wù)器接收到第一客戶端發(fā)送的注冊(cè)請(qǐng)求時(shí),可以根據(jù)第一客戶端的 APP的標(biāo)識(shí)獲取到APP的分布式notify注冊(cè)表,并在該分布式notify注冊(cè)表中添加與注冊(cè)請(qǐng)求中攜帶的注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作的notify注冊(cè)項(xiàng),該notify注冊(cè)項(xiàng)中可以記錄第一客戶端的標(biāo)識(shí)和操作動(dòng)作。為了當(dāng)有操作指示時(shí),可以高效,快速的查詢(xún)到那個(gè)客戶端注冊(cè)了該操作指示指定的第一操作動(dòng)作,本發(fā)明實(shí)施例提供一種分布式notify 注冊(cè)表實(shí)例,該分布式notify注冊(cè)表實(shí)例保存notify注冊(cè)項(xiàng)的注冊(cè)信息,每個(gè)notify注冊(cè)項(xiàng)可以包括以下注冊(cè)信息ID,目錄或者文件的ID、SRCjnask□,固定數(shù)組,下標(biāo)序號(hào)可以用來(lái)標(biāo)識(shí)不同的客戶端,該數(shù)組的值可以用來(lái)指明具體的操作動(dòng)作類(lèi)型。例如,若第一客戶端的APP希望獲知的操作動(dòng)作為目錄DIRl下文件的刪除動(dòng)作(FILE_DELETE),那么 ,添加的注冊(cè)項(xiàng)可以是ID(DIR1 的 ID),SRCID_mask[CA/VFS index] (FILE_DELETE) = 1,其中, CA/VFS index為第一客戶端的標(biāo)識(shí)。另外,本發(fā)明實(shí)施例在服務(wù)器中還提供一種分布式元數(shù)據(jù)服務(wù)(Meta data server, MDS)層實(shí)例用來(lái)存儲(chǔ)并管理該分布式notify注冊(cè)表,還可以用來(lái)記錄該分布式notify注冊(cè)表是否開(kāi)啟,具體的可以管理M個(gè)分布式notify注冊(cè)表 (且保留用于沖突的區(qū)域),每個(gè)注冊(cè)表固定大小為N,便于通過(guò)散列(hash)直接索引,在服務(wù)器接收到操作指示后根據(jù)notify注冊(cè)項(xiàng)的中的ID和M、N值,便可以直接定位分布式 notify注冊(cè)表中的注冊(cè)項(xiàng)。
需要說(shuō)明的是,本發(fā)明實(shí)施例中的分布式notify注冊(cè)表中的注冊(cè)項(xiàng)可以是提前存儲(chǔ)的,并設(shè)置為O的,當(dāng)客戶端的應(yīng)用需要獲知對(duì)應(yīng)的操作動(dòng)作時(shí),服務(wù)器只需將對(duì)應(yīng)的注冊(cè)項(xiàng)的值設(shè)置為非0,也可以當(dāng)客戶端的應(yīng)用需要獲知某操作動(dòng)作時(shí),服務(wù)器根據(jù)該注冊(cè)事件在注冊(cè)表中添加對(duì)應(yīng)的注冊(cè)項(xiàng),本發(fā)明實(shí)施例對(duì)此不做限制,且對(duì)注冊(cè)表中的注冊(cè)項(xiàng)包含的注冊(cè)信息以及注冊(cè)項(xiàng)的具體格式也不做限制。
可選的,服務(wù)器在接收到第一客戶端的APP的注冊(cè)請(qǐng)求時(shí),可以先將APP對(duì)應(yīng)的目錄的分布式notify注冊(cè)表設(shè)置notify_enable,該分布式notify注冊(cè)表在接收到注冊(cè)請(qǐng)求之前處于禁止(disable)狀態(tài)。
305、第一客戶端接收服務(wù)器發(fā)送的注冊(cè)成功消息;其中,注冊(cè)成功消息中包含 APP的目錄信息。
其中,當(dāng)服務(wù)器成功根據(jù)注冊(cè)請(qǐng)求中攜帶的注冊(cè)操作動(dòng)作信息在APP的分布式 notify注冊(cè)表添加了與注冊(cè)操作動(dòng)作信息相應(yīng)地操作動(dòng)作的注冊(cè)項(xiàng)之后,向第一客戶端發(fā)送注冊(cè)成功消息,并將APP的目錄信息攜帶在注冊(cè)成功消息中發(fā)送給第一客戶端。
306、第一客戶端將目錄信息添加到預(yù)存的偵聽(tīng)列表中,以便在接收到事件通知消息之后,根據(jù)偵聽(tīng)列表將事件通知消息通知APP。
其中,第一客戶端將接收到的注冊(cè)成功消息中的APP的目錄信息添加到預(yù)存的偵聽(tīng)列表中,這樣當(dāng)?shù)谝豢蛻舳私邮盏绞录ㄖ⒑?,便可以根?jù)偵聽(tīng)列表中存儲(chǔ)的目錄信息,將事件通知消息通知APP。
第二階段事件通知,如圖4所示,包括
401、服務(wù)器接收第二客戶端發(fā)送的對(duì)第一文件的操作指示;第一文件為存儲(chǔ)在服務(wù)器的第一客戶端的APP的數(shù)據(jù)的文件。
其中,當(dāng)?shù)诙蛻舳讼蚍?wù)器發(fā)送針對(duì)第一文件的操作指示時(shí),第二客戶端的分布式文件系統(tǒng)接口層首先獲取第一文件的目錄以及操作指示指定操作的文件的元數(shù)據(jù)信息,例如第二客戶端需要?jiǎng)h除DIRl目錄下的文件名為my. txt的文件,第二客戶端的分布式文件系統(tǒng)接口層便會(huì)獲取目錄DIRl以及my. txt的元數(shù)據(jù)信息,以便向服務(wù)器發(fā)送操作指/Jn ο
402、服務(wù)器根據(jù)操作指示所指定的第一操作動(dòng)作,對(duì)第一文件執(zhí)行操作。
其中,服務(wù)器可以根據(jù)接收到的第二客戶端發(fā)送的操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行相應(yīng)的操作,例如第二客戶端可以向服務(wù)器發(fā)送針對(duì)第一文件中的 my. txt的刪除操作指示,此時(shí)服務(wù)器可以刪除第一文件的my. txt。該第一文件為存儲(chǔ)在服務(wù)器的第一客戶端的APP的數(shù)據(jù)的文件。
403、服務(wù)器查找 注冊(cè)的第一客戶端的APP的操作動(dòng)作中,是否注冊(cè)有第一操作動(dòng)作。
其中,服務(wù)器根據(jù)接收到的操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行相應(yīng)地操作后,可以查找注冊(cè)的第一客戶端的APP的操作動(dòng)作中,是否注冊(cè)有接收到的第二客戶端的操作指示指定的第一操作動(dòng)作。例如,服務(wù)器接收到刪除my. txt的操作指示,具體的,服務(wù)器中的分布式MDS層接收到的操作指示可以是指示刪除my. txt的元數(shù)據(jù)信息的指示和更新元數(shù)據(jù)信息的指示,此時(shí)服務(wù)器中的分布式MDS層首先刪除my. txt的元數(shù)據(jù)信息,并同時(shí)更新my. txt所在目錄的元數(shù)據(jù)信息,然后可以根據(jù)my. txt所在目錄DIRl的ID 獲取相應(yīng)該目錄相應(yīng)的分布式notify注冊(cè)表,并檢測(cè)該分布式notify注冊(cè)表中的notify 注冊(cè)項(xiàng)中是否注冊(cè)了刪除動(dòng)作FILE_DELETE,若檢測(cè)到注冊(cè)了 FILE_DELETE,分布式MDS層便可以根據(jù)notify注冊(cè)項(xiàng)中的CA/VFS index,將事件通知消息發(fā)送給相應(yīng)的客戶端。可選的,在檢測(cè)該分布式notify注冊(cè)表中的notify注冊(cè)項(xiàng)中是否注冊(cè)了 FILE_DELETE之前,可以先檢測(cè)my. txt所在目錄DIRl的分布式notify注冊(cè)表是否設(shè)置了 notify_enable,并在檢測(cè)到設(shè)置了 notify_enable之后,再檢測(cè)分布式notify注冊(cè)表中的notify注冊(cè)項(xiàng)中是否注冊(cè)了 FILE_DELETE。另外,服務(wù)器中的數(shù)據(jù)服務(wù)(Data Server,DS)接收到的操作指示可以是刪除my. txt的數(shù)據(jù)命令,此時(shí)DS便可以根據(jù)操作指示所指定的第一操作動(dòng)作刪除 my. txt的數(shù)據(jù)。
404、當(dāng)注冊(cè)有第一操作動(dòng)作時(shí),服務(wù)器向第一客戶端發(fā)送事件通知消息。
其中,當(dāng)服務(wù)器查詢(xún)到注冊(cè)了第二客戶端發(fā)送的操作指示指定的第一操作動(dòng)作時(shí),服務(wù)器需要向第一客戶端發(fā)送事件通知消息,該事件通知消息中攜帶有第一操作動(dòng)作的信息,以便用來(lái)通知第一客戶端文件系統(tǒng)發(fā)生了變化。
405、第一客戶端接收到事件通知消息之后,根據(jù)偵聽(tīng)列表將事件通知消息通知 APP。
其中,在本發(fā)明實(shí)施例提供的分布式文件系統(tǒng)接口層實(shí)例通過(guò)存儲(chǔ)偵聽(tīng)列表來(lái)偵聽(tīng)或捕獲服務(wù)器中文件系統(tǒng)的目錄以及文件的變化,以便第一客戶端中的分布式文件系統(tǒng)接口層實(shí)例在接收到事件通知消息之后,根據(jù)偵聽(tīng)列表中添加的APP的目錄信息將事件通知消息通知給APP。
第三階段事件注銷(xiāo),如圖5所示,包括
501、第一客戶端生成第一客戶端的APP的注銷(xiāo)請(qǐng)求。
502、第一客戶端將注銷(xiāo)請(qǐng)求中攜帶的注銷(xiāo)操作動(dòng)作信息的格式進(jìn)行轉(zhuǎn)換得到服務(wù)器內(nèi)部的統(tǒng)一格式。
503、第一客戶端將注銷(xiāo)請(qǐng)求發(fā)送至服務(wù)器。
504、服務(wù)器根據(jù)注銷(xiāo)請(qǐng)求中攜帶的注銷(xiāo)操作動(dòng)作信息將APP的分布式notify注冊(cè)表中與注銷(xiāo)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除。
其中,該注銷(xiāo)請(qǐng)求中除了可以攜帶注銷(xiāo)操作動(dòng)作信息之外,還可以攜帶第一客戶端的APP的標(biāo)識(shí),當(dāng)服務(wù)器接收到第一客戶端發(fā)送的注銷(xiāo)請(qǐng)求時(shí),可以根據(jù)第一客戶端的 APP的標(biāo)識(shí)獲取存儲(chǔ)的APP的分布式notify注冊(cè)表,并將APP的分布式notify注冊(cè)表中與注銷(xiāo)請(qǐng)求中攜帶的注銷(xiāo)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除,或者將APP的分布式 notify注冊(cè)表中與注銷(xiāo)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)的值設(shè)置為O。
505、第一客戶端接 收服務(wù)器發(fā)送的注銷(xiāo)成功消息;其中,注銷(xiāo)成功消息中包含 APP的目錄信息。
506、第一客戶端將目錄信息從預(yù)存的偵聽(tīng)列表中刪除。
需要說(shuō)明的是,本發(fā)明實(shí)施例中的事件注銷(xiāo)階段中的步驟501-506的具體描述可以參考本發(fā)明實(shí)施例中的事件注冊(cè)階段的相應(yīng)步驟301-306的具體描述,本發(fā)明實(shí)施例在此不一一贅述。
本發(fā)明實(shí)施例提供的一種事件通知方法,當(dāng)服務(wù)器接收第二客戶端對(duì)第一文件的操作指示,并在根據(jù)操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行操作后,查找注冊(cè)的第一客戶端的應(yīng)用的至少一個(gè)操作動(dòng)作中,是否注冊(cè)有第一操作動(dòng)作,并當(dāng)注冊(cè)有第一操作動(dòng)作時(shí),向第一客戶端發(fā)送事件通知消息,這樣當(dāng)存儲(chǔ)第一客戶端應(yīng)用的文件發(fā)生變化時(shí)由服務(wù)器向第一客戶端發(fā)送事件通知消息,解決了現(xiàn)有技術(shù)中第一客戶端只能通過(guò)接口去被動(dòng)感知存儲(chǔ)在服務(wù)器中的應(yīng)用的第一文件有沒(méi)有發(fā)生變化的問(wèn)題,實(shí)現(xiàn)了服務(wù)器主動(dòng)向第一客戶端通知第一文件變化的機(jī)制。
并且,在服務(wù)器中針對(duì)注冊(cè)操作動(dòng)作信息維護(hù)相應(yīng)的分布式notify注冊(cè)表,這樣當(dāng)文件系統(tǒng)發(fā)生變化時(shí),服務(wù)器便可以根據(jù)分布式notify注冊(cè)表快速、高效的查找到注冊(cè)了操作動(dòng)作的客戶端。
實(shí)施例4
本發(fā)明實(shí)施例提供一種事件通知裝置,應(yīng)用于服務(wù)器中,所述服務(wù)器與第一客戶端、第二客戶端通信,所述服務(wù)器注冊(cè)所述第一客戶端的應(yīng)用APP的至少一個(gè)操作動(dòng)作,所述APP是運(yùn)行在所述第一客戶端的程序,如圖6所示,第一接收單元61、執(zhí)行單元62、查找單兀63、第一發(fā)送單兀64。
第一接收單元61,用于接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示,其中, 所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件。
執(zhí)行單元62,用于按照所述第一接收單元61接收的所述操作指示所指定的第一操作動(dòng)作,對(duì)所述第一文件執(zhí)行操作。
查找單元63,用于查找注冊(cè)的所述第一客戶端的APP的所述操作動(dòng)作中,是否注冊(cè)有所述第一操作動(dòng)作。
第一發(fā)送單元64,用于當(dāng)注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息。
進(jìn)一步的,如圖7所示,該裝置還可以包括第二接收單元65、添加單元66。
第二接收單元65,用于在所述第一接收單元61接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示之前,接收所述第一客戶端發(fā)送的所述APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息。
添加單元66,用于根據(jù)所述第二接收單元65接收的所述注冊(cè)請(qǐng)求攜帶的注冊(cè)操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所述注冊(cè)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)。
進(jìn)一步的,該裝置還可以包括第二發(fā)送單元67。
第二發(fā)送單元67,用于在所述添加單元66根據(jù)所述注冊(cè)請(qǐng)求攜帶的操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所述操作`動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)之后,向所述第一客戶端發(fā)送注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述 APP的目錄信息,以便所述第一客戶端將所述目錄信息添加到預(yù)存的偵聽(tīng)列表中,進(jìn)而當(dāng)所述第一客戶端在接收到所述事件通知消息后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述APP。
進(jìn)一步的,所述第二接收單元65,還用于接收所述第一客戶端發(fā)送的所述APP的注銷(xiāo)請(qǐng)求;其中,所述注銷(xiāo)請(qǐng)求中攜帶注銷(xiāo)操作動(dòng)作信息。
所述裝置還包括刪除單元68。
刪除單元68,用于根據(jù)所述第二接收單元65接收的所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除。
進(jìn)一步的,所述第二發(fā)送單元67,還用于在所述刪除單元根據(jù)所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除之后,向所述第一客戶端發(fā)送注銷(xiāo)成功消息;其中所述注銷(xiāo)成功消息中包含所述APP的目錄信息,以便所述第一客戶端根據(jù)所述注銷(xiāo)成功消息從偵聽(tīng)列表中刪除所述目錄信息。
進(jìn)一步的,所述操作動(dòng)作包括刪除、修改、創(chuàng)建、添加。
本發(fā)明實(shí)施例提供的一種事件通知裝置,當(dāng)服務(wù)器接收第二客戶端對(duì)第一文件的操作指示,并在根據(jù)操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行操作后,查找注冊(cè)的第一客戶端的應(yīng)用的至少一個(gè)操作動(dòng)作中,是否注冊(cè)有第一操作動(dòng)作,并當(dāng)注冊(cè)有第一操作動(dòng)作時(shí),向第一客戶端發(fā)送事件通知消息,這樣當(dāng)存儲(chǔ)第一客戶端應(yīng)用的文件發(fā)生變化時(shí)由服務(wù)器向第一客戶端發(fā)送事件通知消息,解決了現(xiàn)有技術(shù)中第一客戶端只能通過(guò)接口去被動(dòng)感知存儲(chǔ)在服務(wù)器中的應(yīng)用的第一文件有沒(méi)有發(fā)生變化的問(wèn)題,實(shí)現(xiàn)了服務(wù)器主動(dòng)向第一客戶端通知第一文件變化的機(jī)制。
并且,在服務(wù)器中針對(duì)注冊(cè)操作動(dòng)作信息維護(hù)相應(yīng)的分布式notify注冊(cè)表,這樣當(dāng)文件系統(tǒng)發(fā)生變化時(shí),服務(wù)器便可以根據(jù)分布式notify注冊(cè)表快速、高效的查找到注冊(cè)了操作動(dòng)作的客戶端。
實(shí)施例5
本發(fā)明實(shí)施例提供一種事件通知裝置,應(yīng)用于第一客戶端,所述第一客戶端與服務(wù)器通信,所述服務(wù)器與第二客戶端通信,如圖8所示,包括生成單元71、發(fā)送單元72。
生成單元71,用于生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息,所述APP是運(yùn)行在所述第一客戶端的程序。
發(fā)送單元72,用于將所述生成單元71生成的注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器;以便所述服務(wù)器注冊(cè)所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作后,接收到所述第二客戶端發(fā)送的對(duì)第一文件的操作指示時(shí),根據(jù)所述操作指示所指定的第一操作動(dòng)作對(duì)所述第一文件執(zhí)行操作,并且當(dāng)查找到注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一 操作動(dòng)作的信息。
其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件。
進(jìn)一步的,如圖9所示,還包括轉(zhuǎn)換單元73。
轉(zhuǎn)換單元73,用于在所述生成單元71生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求之后,將所述注冊(cè)請(qǐng)求中攜帶的所述注冊(cè)操作動(dòng)作信息的格式進(jìn)行轉(zhuǎn)換得到所述服務(wù)器內(nèi)部的統(tǒng)一格式;以便所述服務(wù)器將運(yùn)行不同操作系統(tǒng)的客戶端發(fā)送的所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作進(jìn)行統(tǒng)一注冊(cè)。
進(jìn)一步的,該裝置還可以包括接收單元74、添加單元75。
接收單元74,用于在所述發(fā)送單元72將所述注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器之后,接收所述服務(wù)器發(fā)送的注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP的目錄信息。
添加單元75,用于將所述接收單元74接收的目錄信息添加到預(yù)存的偵聽(tīng)列表中, 以便在接收到所述事件通知消息之后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述 APP。
本發(fā)明實(shí)施例提供的一種事件通知裝置,當(dāng)服務(wù)器接收第二客戶端對(duì)第一文件的操作指示,并在根據(jù)操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行操作后,查找注冊(cè)的第一客戶端的應(yīng)用的至少一個(gè)操作動(dòng)作中,是否注冊(cè)有第一操作動(dòng)作,并當(dāng)注冊(cè)有第一操作動(dòng)作時(shí),向第一客戶端發(fā)送事件通知消息,這樣當(dāng)存儲(chǔ)第一客戶端應(yīng)用的文件發(fā)生變化時(shí)由服務(wù)器向第一客戶端發(fā)送事件通知消息,解決了現(xiàn)有技術(shù)中第一客戶端只能通過(guò)接口去被動(dòng)感知存儲(chǔ)在服務(wù)器中的應(yīng)用的第一文件有沒(méi)有發(fā)生變化的問(wèn)題,實(shí)現(xiàn)了服務(wù)器主動(dòng)向第一客戶端通知第一文件變化的機(jī)制。
并且,在服務(wù)器中針對(duì)注冊(cè)操作動(dòng)作信息維護(hù)相應(yīng)的分布式notify注冊(cè)表,這樣當(dāng)文件系統(tǒng)發(fā)生變化時(shí),服務(wù)器便可以根據(jù)分布式notify注冊(cè)表快速、高效的查找到注冊(cè)了操作動(dòng)作的客戶端。
實(shí)施例6
本發(fā)明實(shí)施例提供一種事件通知裝置,應(yīng)用于服務(wù)器中,所述服務(wù)器與第一客戶端、第二客戶端通信,所述服務(wù)器注冊(cè)所述第一客戶端的應(yīng)用APP的至少一個(gè)操作動(dòng)作,所述APP是運(yùn)行在所述第一客戶端的程序,如圖10所示,接收器81、處理器82、發(fā)送器83。
接收器81,用于接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示,其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件。
處理器82,用于按照所述接收器81接收的所述操作指示所指定的第一操作動(dòng)作, 對(duì)所述第一文件執(zhí)行操作,并查找注冊(cè)的所述第一客戶端的APP的所述操作動(dòng)作中,是否注冊(cè)有所述第一操作動(dòng)作。
發(fā)送器83,用于當(dāng)注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息。
進(jìn)一步的,所述接收器81,還用于在所述接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示之前,接收所述第一客戶端發(fā)送的所述APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息。
所述處理器82,還用于根據(jù)所述接收器81接收的所述注冊(cè)請(qǐng)求攜帶的注冊(cè)操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所述注冊(cè)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)。
進(jìn)一步的,所述發(fā)送器83,還用于在所述處理器82根據(jù)所述注冊(cè)請(qǐng)求攜帶的操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所 述操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)之后,向所述第一客戶端發(fā)送注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP的目錄信息,以便所述第一客戶端將所述目錄信息添加到預(yù)存的偵聽(tīng)列表中,進(jìn)而當(dāng)所述第一客戶端在接收到所述事件通知消息后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述APP。
進(jìn)一步的,所述接收器81,還用于接收所述第一客戶端發(fā)送的所述APP的注銷(xiāo)請(qǐng)求;其中,所述注銷(xiāo)請(qǐng)求中攜帶注銷(xiāo)操作動(dòng)作信息。
所述處理器82,還用于根據(jù)所述接收器81接收的所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除。
進(jìn)一步的,所述發(fā)送器83,還用于在所述處理器82根據(jù)所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除之后,向所述第一客戶端發(fā)送注銷(xiāo)成功消息;其中所述注銷(xiāo)成功消息中包含所述APP的目錄信息,以便所述第一客戶端根據(jù)所述注銷(xiāo)成功消息從偵聽(tīng)列表中刪除所述目錄信息。
進(jìn)一步的,所述操作動(dòng)作包括刪除、修改、創(chuàng)建、添加。
本發(fā)明實(shí)施例提供的一種事件通知裝置,當(dāng)服務(wù)器接收第二客戶端對(duì)第一文件的操作指示,并在根據(jù)操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行操作后,查找注冊(cè)的第一客戶端的應(yīng)用的至少一個(gè)操作動(dòng)作中,是否注冊(cè)有第一操作動(dòng)作,并當(dāng)注冊(cè)有第一操作動(dòng)作時(shí),向第一客戶端發(fā)送事件通知消息,這樣當(dāng)存儲(chǔ)第一客戶端應(yīng)用的文件發(fā)生變化時(shí)由服務(wù)器向第一客戶端發(fā)送事件通知消息,解決了現(xiàn)有技術(shù)中第一客戶端只能通過(guò)接口去被動(dòng)感知存儲(chǔ)在服務(wù)器中的應(yīng)用的第一文件有沒(méi)有發(fā)生變化的問(wèn)題,實(shí)現(xiàn)了服務(wù)器主動(dòng)向第一客戶端通知第一文件變化的機(jī)制。
并且,在服務(wù)器中針對(duì)注冊(cè)操作動(dòng)作信息維護(hù)相應(yīng)的分布式notify注冊(cè)表,這樣當(dāng)文件系統(tǒng)發(fā)生變化時(shí),服務(wù)器便可以根據(jù)分布式notify注冊(cè)表快速、高效的查找到注冊(cè)了操作動(dòng)作的客戶端。
實(shí)施例7
本發(fā)明實(shí)施例提供一種事件通知裝置,應(yīng)用于第一客戶端,所述第一客戶端與服務(wù)器通信,所述服務(wù)器與第二客戶端通信,如圖11所示,包括處理器91、發(fā)送器92。
處理器91,用于生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息,所述APP是運(yùn)行在所述第一客戶端的程序。
發(fā)送器92,用于將所述處理器91生成的注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器;以便所述服務(wù)器注冊(cè)所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作后,接收到所述第二客戶端發(fā)送的對(duì)第一文件的操作指示時(shí),根據(jù)所述操作指示所指定的第一操作動(dòng)作對(duì)所述第一文件執(zhí)行操作, 并且當(dāng)查找到注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息。
其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件。
進(jìn)一步的,所述處理器91,還用于在所述生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求之后,將所述注冊(cè)請(qǐng)求中攜帶的所述注冊(cè)操作動(dòng)作信息的 格式進(jìn)行轉(zhuǎn)換得到所述服務(wù)器內(nèi)部的統(tǒng)一格式;以便所述服務(wù)器將運(yùn)行不同操作系統(tǒng)的客戶端發(fā)送的所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作進(jìn)行統(tǒng)一注冊(cè)。
進(jìn)一步的,該裝置還可以包括接收器93。
接收器93,用于在所述發(fā)送器92將所述注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器之后,接收所述服務(wù)器發(fā)送的注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP的目錄信息。
所述處理器91,還用于將所述接收器93接收的目錄信息添加到預(yù)存的偵聽(tīng)列表中,以便在接收到所述事件通知消息之后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述 APP。
本發(fā)明實(shí)施例提供的一種事件通知裝置,當(dāng)服務(wù)器接收第二客戶端對(duì)第一文件的操作指示,并在根據(jù)操作指示所指定的第一操作動(dòng)作對(duì)第一文件執(zhí)行操作后,查找注冊(cè)的第一客戶端的應(yīng)用的至少一個(gè)操作動(dòng)作中,是否注冊(cè)有第一操作動(dòng)作,并當(dāng)注冊(cè)有第一操作動(dòng)作時(shí),向第一客戶端發(fā)送事件通知消息,這樣當(dāng)存儲(chǔ)第一客戶端應(yīng)用的文件發(fā)生變化時(shí)由服務(wù)器向第一客戶端發(fā)送事件通知消息,解決了現(xiàn)有技術(shù)中第一客戶端只能通過(guò)接口去被動(dòng)感知存儲(chǔ)在服務(wù)器中的應(yīng)用的第一文件有沒(méi)有發(fā)生變化的問(wèn)題,實(shí)現(xiàn)了服務(wù)器主動(dòng)向第一客戶端通知第一文件變化的機(jī)制。
并且,在服務(wù)器中針對(duì)注冊(cè)操作動(dòng)作信息維護(hù)相應(yīng)的分布式notify注冊(cè)表,這樣當(dāng)文件系統(tǒng)發(fā)生變化時(shí),服務(wù)器便可以根據(jù)分布式notify注冊(cè)表快速、高效的查找到注冊(cè)了操作動(dòng)作的客戶端。
通過(guò)以上的實(shí)施方 式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件,但很多情況下前者是更佳的實(shí)施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在可讀取的存儲(chǔ)介質(zhì)中,如計(jì)算機(jī)的軟盤(pán),硬盤(pán)或光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī), 服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
以上所述,僅為本發(fā)明的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以所述權(quán)利要求的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種事件通知方法,其特征在于,應(yīng)用于服務(wù)器中,所述服務(wù)器與第一客戶端、第二客戶端通信,所述服務(wù)器注冊(cè)所述第一客戶端的應(yīng)用APP的至少一個(gè)操作動(dòng)作,所述APP是運(yùn)行在所述第一客戶端的程序,所述方法包括接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示,其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件;按照所述操作指示所指定的第一操作動(dòng)作,對(duì)所述第一文件執(zhí)行操作;查找注冊(cè)的所述第一客戶端的APP的所述操作動(dòng)作中,是否注冊(cè)有所述第一操作動(dòng)作;當(dāng)注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息。
2.根據(jù)權(quán)利要求1所述的事件通知方法,其特征在于,在所述接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示之前,還包括接收所述第一客戶端發(fā)送的所述APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息;根據(jù)所述注冊(cè)請(qǐng)求攜帶的注冊(cè)操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所述注冊(cè)操 作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)。
3.根據(jù)權(quán)利要求2所述的事件通知方法,其特征在于,在所述根據(jù)所述注冊(cè)請(qǐng)求攜帶的操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所述操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)之后,還包括向所述第一客戶端發(fā)送注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP的目錄信息,以便所述第一客戶端將所述目錄信息添加到預(yù)存的偵聽(tīng)列表中,進(jìn)而當(dāng)所述第一客戶端在接收到所述事件通知消息后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述 APP。
4.根據(jù)權(quán)利要求2所述的事件通知方法,其特征在于,還包括接收所述第一客戶端發(fā)送的所述APP的注銷(xiāo)請(qǐng)求;其中,所述注銷(xiāo)請(qǐng)求中攜帶注銷(xiāo)操作動(dòng)作信息;根據(jù)所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除。
5.根據(jù)權(quán)利要求4所述的事件通知方法,其特征在于,在所述根據(jù)所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除之后,還包括向所述第一客戶端發(fā)送注銷(xiāo)成功消息;其中所述注銷(xiāo)成功消息中包含所述APP的目錄信息,以便所述第一客戶端根據(jù)所述注銷(xiāo)成功消息從偵聽(tīng)列表中刪除所述目錄信息。
6.根據(jù)權(quán)利要求1至5中任意一項(xiàng)所述的事件通知方法,其特征在于,所述操作動(dòng)作包括刪除、修改、創(chuàng)建、添加。
7.一種事件通知方法,應(yīng)用于第一客戶端,所述第一客戶端與服務(wù)器通信,所述服務(wù)器與第二客戶端通信,其特征在于,包括生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息,所述APP是運(yùn)行在所述第一客戶端的程序;將所述注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器;以便所述服務(wù)器注冊(cè)所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作后,接收到所述第二客戶端發(fā)送的對(duì)第一文件的操作指示時(shí),根據(jù)所述操作指示所指定的第一操作動(dòng)作對(duì)所述第一文件執(zhí)行操作,并且當(dāng)查找到注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息;其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件。
8.根據(jù)權(quán)利要求7所述的事件通知方法,其特征在于,在所述生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求之后,還包括將所述注冊(cè)請(qǐng)求中攜帶的所述注冊(cè)操作動(dòng)作信息的格式進(jìn)行轉(zhuǎn)換得到所述服務(wù)器內(nèi)部的統(tǒng)一格式;以便所述服務(wù)器將運(yùn)行不同操作系統(tǒng)的客戶端發(fā)送的所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作進(jìn)行統(tǒng)一注冊(cè)。
9.根據(jù)權(quán)利要求7所述的事件通知方法,其特征在于,在所述將所述注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器之后,還包括接收所述服務(wù)器發(fā)送的注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP的目錄/[目息;將所述目錄信息添加到預(yù)存的偵聽(tīng)列表中,以便在接收到所述事件通知消息之后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述APP。
10.一種事件通知裝置,其特征在于,應(yīng)用于服務(wù)器中,所述服務(wù)器與第一客戶端、第二客戶端通信,所述服務(wù)器注冊(cè)所述第一客戶端的應(yīng)用APP的至少一個(gè)操作動(dòng)作,所述APP是運(yùn)行在所述第一客戶端的程序,包括第一接收單元,用于接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示,其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件;執(zhí)行單元,用于按照所述第一接收單元接收的所述操作指示所指定的第一操作動(dòng)作, 對(duì)所述第一文件執(zhí)行操作;查找單元,用于查找注冊(cè)的所述第一客戶端的APP的所述操作動(dòng)作中,是否注冊(cè)有所述第一操作動(dòng)作;第一發(fā)送單元,用于當(dāng)注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息。
11.根據(jù)權(quán)利要求10所述的事件通知裝置,其特征在于,還包括第二接收單元,用于在所述第一接收單元接收所述第二客戶端發(fā)送的對(duì)第一文件的操作指示之前,接收所述第一客戶端發(fā)送的所述APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息;添加單元,用于根據(jù)所述第二接收單元接收的所述注冊(cè)請(qǐng)求攜帶的注冊(cè)操作動(dòng)作信息,在所述APP的分布式通知notify注冊(cè)表中添加與所述注冊(cè)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)。
12.根據(jù)權(quán)利要求11所述的事件通知裝置,其特征在于,還包括第二發(fā)送單元,用于在所述添加單元根據(jù)所述注冊(cè)請(qǐng)求攜帶的操作動(dòng)作信息,在所述 APP的分布式通知notify注冊(cè)表中添加與所述操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)之后,向所述第一客戶端發(fā)送注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP的目錄信息,以便所述第一客戶端將所述目錄信息添加到預(yù)存的偵聽(tīng)列表中,進(jìn)而當(dāng)所述第一客戶端在接收到所述事件通知消息后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述APP。
13.根據(jù)權(quán)利要求11述的事件通知裝置,其特征在于,所述第二接收單元,還用于接收所述第一客戶端發(fā)送的所述APP的注銷(xiāo)請(qǐng)求;其中,所述注銷(xiāo)請(qǐng)求中攜帶注銷(xiāo)操作動(dòng)作信息;所述裝置還包括刪除單元,用于根據(jù)所述第二接收單元接收的所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除。
14.根據(jù)權(quán)利要求13所述的事件通知裝置,其特征在于,所述第二發(fā)送單元,還用于在所述刪除單元根據(jù)所述注銷(xiāo)請(qǐng)求攜帶的注銷(xiāo)操作動(dòng)作信息,將所述APP的分布式notify注冊(cè)表中與所述注銷(xiāo)操作動(dòng)作信息相應(yīng)的操作動(dòng)作的注冊(cè)項(xiàng)刪除之后,向所述第一客戶端發(fā)送注銷(xiāo)成功消息;其中所述注銷(xiāo)成功消息中包含所述 APP的目錄信息,以便所述第一客戶端根據(jù)所述注銷(xiāo)成功消息從偵聽(tīng)列表中刪除所述目錄信息。
15.一種事件通知裝置,應(yīng)用于第一客戶端,所述第一客戶端與服務(wù)器通信,所述服務(wù)器與第二客戶端通信,其特征在于,包括生成單元,用于生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求;其中,所述注冊(cè)請(qǐng)求中攜帶注冊(cè)操作動(dòng)作信息,所述APP是運(yùn)行在所述第一客戶端的程序;發(fā)送單元,用于將所述生成單元生成的注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器;以便所述服務(wù)器注冊(cè)所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作后,接收到所述第二客戶端發(fā)送的對(duì)第一文件的操作指示時(shí),根據(jù)所述操作指示所指定的第一操作動(dòng)作對(duì)所述第一文件執(zhí)行操作,并且當(dāng)查找到注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息;其中,所述第一文件是存儲(chǔ)在所述服務(wù)器的所述第一客戶端的APP的數(shù)據(jù)的文件。
16.根據(jù)權(quán)利要求15所述的事件通知裝置,其特征在于,還包括轉(zhuǎn)換單元,用于在所述生成單元生成所述第一客戶端的應(yīng)用APP的注冊(cè)請(qǐng)求之后,將所述注冊(cè)請(qǐng)求中攜帶的所述注冊(cè)操作動(dòng)作信息的格式進(jìn)行轉(zhuǎn)換得到所述服務(wù)器內(nèi)部的統(tǒng)一格式;以便所述服務(wù)器將運(yùn)行不同操作系統(tǒng)的客戶端發(fā)送的所述注冊(cè)操作動(dòng)作信息對(duì)應(yīng)的操作動(dòng)作進(jìn)行統(tǒng)一注冊(cè)。
17.根據(jù)權(quán)利要求15所述的事件通知裝置,其特征在于,還包括接收單元,用于在所述發(fā)送單元將所述注冊(cè)請(qǐng)求發(fā)送至所述服務(wù)器之后,接收所述服務(wù)器發(fā)送的注冊(cè)成功消息;其中,所述注冊(cè)成功消息中包含所述APP的目錄信息;添加單元,用于將所述接收單元接收的目錄信息添加到預(yù)存的偵聽(tīng)列表中,以便在接收到所述事件通知消息之后,根據(jù)所述偵聽(tīng)列表將所述事件通知消息通知所述APP。
全文摘要
本發(fā)明實(shí)施例公開(kāi)了一種事件通知方法及裝置,涉及通信領(lǐng)域,提供了服務(wù)器主動(dòng)向客戶端通知文件系統(tǒng)變化的機(jī)制。具體方案為接收第二客戶端發(fā)送的對(duì)第一文件的操作指示,其中,所述第一文件是存儲(chǔ)在服務(wù)器的第一客戶端的APP的數(shù)據(jù)的文件;按照所述操作指示所指定的第一操作動(dòng)作,對(duì)所述第一文件執(zhí)行操作;查找注冊(cè)的所述第一客戶端的APP的所述操作動(dòng)作中,是否注冊(cè)有所述第一操作動(dòng)作;當(dāng)注冊(cè)有所述第一操作動(dòng)作時(shí),向所述第一客戶端發(fā)送事件通知消息;其中,所述事件通知消息中攜帶有所述第一操作動(dòng)作的信息。本發(fā)明用于事件通知的過(guò)程中。
文檔編號(hào)H04L29/08GK103051721SQ201210575729
公開(kāi)日2013年4月17日 申請(qǐng)日期2012年12月26日 優(yōu)先權(quán)日2012年12月26日
發(fā)明者何益, 黃克驥 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1