專利名稱:一種映射式文件版本管理方法
技術(shù)領(lǐng)域:
本發(fā)明關(guān)于一種映射式文件版本管理方法,尤其涉及一種應(yīng)用于計(jì)算機(jī)系統(tǒng)中可
使得映射文件在其相應(yīng)的實(shí)體文件升級(jí)后,自動(dòng)與最新的實(shí)體文件取得關(guān)聯(lián)的映射式文件 版本管理方法。
背景技術(shù):
目前,在公知技術(shù)中被廣泛使用于計(jì)算機(jī)系統(tǒng)的文件(下文所稱的文件皆指電子 文件)管理軟件或者文件管理方式,如Subversion (Subversion是一種自由/開(kāi)放源碼的 文件版本控制系統(tǒng),也就是說(shuō)Subversion負(fù)責(zé)管理隨時(shí)間而改變的各種類(lèi)型的文件。這些 文件被放置在一個(gè)中央文件庫(kù)中。這個(gè)中央文件庫(kù)很像一個(gè)尋常的文件服務(wù)器,但是它會(huì) 記住每一次文件的變動(dòng)。這樣使用者便可以將文件恢復(fù)到以前的舊版本,或是瀏覽文件的 變動(dòng)歷程)和文件傳送協(xié)議(File Transfer Protocol,簡(jiǎn)稱FTP)等。它們?cè)趯?duì)待自己的 映射文件時(shí)采取了不同的管理方式。Subversion類(lèi)型的軟件在管理文件時(shí),要求在客戶端 必須有版本文件的副本,當(dāng)文件有新的版本時(shí),客戶端用戶需要自己手動(dòng)更新這個(gè)文件。而 FTP類(lèi)型的軟件在管理文件時(shí),并沒(méi)有完整的版本管理方式,當(dāng)需要新的版本文件時(shí),它會(huì) 從目錄級(jí)別進(jìn)行,即,需要更新映射目錄中的文件。 因此,公知技術(shù)中亟待提供一種新的映射式文件版本管理方法,其需要具有完整 的版本控制方式,并能夠保留以前的文件版本。而且,在系統(tǒng)中對(duì)應(yīng)于文件的映射,則要顯 示最新版本的文件。
發(fā)明內(nèi)容
為了解決上述公知技術(shù)中的問(wèn)題與缺陷,本發(fā)明的目的在于提供一種新的映射式 文件版本管理方法,具有完整的版本控制方式,并能夠保留以前的文件版本。而且,可以在 系統(tǒng)中對(duì)應(yīng)于文件的映射來(lái)顯示最新版本的文件。 本發(fā)明所提供的一種映射式文件版本管理方法,包含以下步驟 創(chuàng)建一個(gè)映射表,并儲(chǔ)存于計(jì)算機(jī)可讀/寫(xiě)的記錄裝置之中;每當(dāng)創(chuàng)建一個(gè)新文
件時(shí),在映射表中添加一條映射記錄,并將新文件的路徑保存在此映射記錄中;當(dāng)進(jìn)行文件
升級(jí)版本動(dòng)作時(shí),獲取所有升級(jí)后的文件的路徑;對(duì)每一個(gè)升級(jí)后的文件,在映射表中找到
與升級(jí)之前文件路徑相同的映射記錄;以及判斷升級(jí)后的文件是否需要?jiǎng)h除,如果需要?jiǎng)h
除,則在映射表內(nèi)設(shè)置映射記錄為刪除狀態(tài),否則,在映射記錄中更新路徑屬性的值為升級(jí)
后文件的路徑,直至全部升級(jí)后的文件處理完成后結(jié)束。 綜上所述,本發(fā)明的有益效果在于 本發(fā)明所提供的一種映射式文件版本管理方法,可使得映射文件在其相應(yīng)的實(shí)體 文件升級(jí)后,自動(dòng)與最新的實(shí)體文件取得關(guān)聯(lián)。并且不需要在客戶端存有文件副本,如此便 可以將文件的修改直接反映到客戶對(duì)象中,避免了手動(dòng)方式所帶來(lái)時(shí)間差,提高了對(duì)映射 式文件進(jìn)行升級(jí)管理的效率并節(jié)省了成本。
下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)描述,但不作為對(duì)本發(fā)明的限定。
圖1所示為本發(fā)明的一種映射式文件版本管理方法中版本文件、文件實(shí)體及其文件映射三:者之間的相互對(duì)應(yīng)關(guān)系的示意圖2為本發(fā)明的一種映射式文件版本管理方法的方法流程圖;以及
圖3表示了映射文件與本發(fā)明的映射式文件版本管理方法的使用位置。
其中,附圖標(biāo)記
10版本文件20文件實(shí)體20,文件實(shí)體30文件映射A創(chuàng)建映射對(duì)象的過(guò)程B更新映射對(duì)象的過(guò)程
具體實(shí)施例方式
以下,將結(jié)合附圖對(duì)本發(fā)明的較佳實(shí)施方式作詳細(xì)說(shuō)明。 請(qǐng)參考圖1,圖中所示為本發(fā)明的一種映射式文件版本管理方法中版本文件10、 文件實(shí)體20和20'及其文件映射30三者之間的相互對(duì)應(yīng)關(guān)系。其中,版本文件10記錄了 所有版本編號(hào)為1. 0版或2. 0版的實(shí)體文件的信息;文件實(shí)體20和20'分別為版本編號(hào) 1. 0版與2. 0版的實(shí)體文件或尚未正式發(fā)布的實(shí)體文件;文件映射30是使用者看到的映射 文件,而且原則上使用者應(yīng)該會(huì)看到最新的正式發(fā)布的內(nèi)容。此外,對(duì)應(yīng)于2.0版的版本文 件10的文件實(shí)體20'可能被修改,也可能保持原有的文件內(nèi)容。 現(xiàn)在請(qǐng)參考圖2,此圖為本發(fā)明的一種映射式文件版本管理方法的方法流程圖,如 圖所示,本發(fā)明的一種映射式文件版本管理方法包含以下步驟 首先,創(chuàng)建一個(gè)映射表,并儲(chǔ)存于計(jì)算機(jī)可讀/寫(xiě)的記錄裝置(例如硬盤(pán))之中 (步驟90); 每當(dāng)創(chuàng)建一個(gè)新文件時(shí),在映射表中添加一條映射記錄,并將此新文件的路徑保 存在此映射記錄中(步驟100),其中此映射記錄(即映射對(duì)象)被儲(chǔ)存于服務(wù)器端的一 個(gè)數(shù)據(jù)庫(kù)中,每條映射記錄中均保存有對(duì)應(yīng)的文件路徑; 當(dāng)進(jìn)行文件升級(jí)動(dòng)作時(shí),獲取所有升級(jí)后的文件的路徑以及相關(guān)的文件信息(步 驟200); 對(duì)一個(gè)升級(jí)后的文件,在映射表中找到與升級(jí)之前此文件路徑相同的映射記錄 (步驟300),其中,在映射表中找到與升級(jí)之前此文件路徑相同的映射記錄進(jìn)一步包含如 下步驟(圖未示)獲取升級(jí)前的文件的原路徑;以及依據(jù)此原路徑在映射表中找到與升級(jí) 之前此文件的原路徑相同的映射記錄; 判斷此升級(jí)后的文件是否需要?jiǎng)h除(步驟400),如果需要?jiǎng)h除,則在映射表內(nèi)設(shè) 置映射記錄為刪除狀態(tài)(步驟500),然后,判斷全部升級(jí)后的文件處理是否均已完成(步驟 700),如果是,則結(jié)束,否則返回步驟300,借以對(duì)其他升級(jí)后的文件,在映射表中找到與升
4級(jí)之前的文件路徑相同的映射記錄;如果不需要?jiǎng)h除,則在映射記錄中更新此路徑屬性的 值為升級(jí)后的文件的路徑(步驟600),然后,判斷全部升級(jí)后的文件處理是否均已完成(步 驟700),如果是,則結(jié)束,否則返回步驟300,借以對(duì)其他升級(jí)后的文件,在映射表中找到與 升級(jí)之前的文件路徑相同的映射記錄。 上述本發(fā)明的映射式文件版本管理方法,其中當(dāng)系統(tǒng)的其他部分需要顯示映射文 件時(shí),只需要從上述映射表中找到相應(yīng)的文件路徑即可,換言之,客戶端通過(guò)終端設(shè)備向服 務(wù)器端(計(jì)算機(jī)系統(tǒng)端)發(fā)出一個(gè)讀取文件的請(qǐng)求,而服務(wù)器端將調(diào)用映射記錄,依據(jù)映射 記錄中的文件路徑引導(dǎo)客戶端指向一個(gè)儲(chǔ)存于計(jì)算機(jī)系統(tǒng)端的文件,以供使用者讀取這個(gè) 文件的內(nèi)容。 另外,上述本發(fā)明的映射式文件版本管理方法,其中當(dāng)進(jìn)行文件升級(jí)動(dòng)作時(shí)通過(guò) 剖面導(dǎo)向編程(Aspect-Oriented Programming,簡(jiǎn)稱AOP)技術(shù)對(duì)升級(jí)方法進(jìn)行監(jiān)聽(tīng),借以 獲知文件是否升級(jí), 一旦發(fā)現(xiàn)升級(jí)方法被調(diào)用即可開(kāi)始調(diào)用本發(fā)明的映射式文件版本管理 方法對(duì)升級(jí)后的文件進(jìn)行管理。具體操作如下
1、確定升級(jí)方法的名稱等信息。 2、建立一個(gè)攔截類(lèi)事件處理函數(shù)My Handler,借以實(shí)現(xiàn)Invocation Handler界
面,此Invocation Handler界面能夠幫助實(shí)現(xiàn)截獲升級(jí)方法的目的。當(dāng)調(diào)用(invoke)方
法設(shè)置在調(diào)用升級(jí)方法后,再調(diào)用本發(fā)明的映射式文件版本管理方法即可。 3、為了方便使用上述攔截類(lèi)事件處理函數(shù)My Handler,可先實(shí)現(xiàn)一個(gè)AOP工廠
(AOP Factory)。 4、在調(diào)用升級(jí)方法的地方,可以利用上述A0P工廠產(chǎn)生升級(jí)類(lèi)實(shí)例,然后正常調(diào) 用升級(jí)方法,即可完成此功能。 現(xiàn)在請(qǐng)參考圖3,此圖表示映射文件與本發(fā)明的映射式文件版本管理方法的使用 位置,如圖所示,A為創(chuàng)建映射對(duì)象的過(guò)程;B為更新映射對(duì)象的過(guò)程。其中,實(shí)施方案主要 分為以下兩個(gè)步驟 第一步文件管理功能創(chuàng)建版本對(duì)象,映射對(duì)象管理功能根據(jù)版本對(duì)象創(chuàng)建出映 射對(duì)象;以及 第二步修改版本對(duì)象,調(diào)用升級(jí)方法,借以生成新的版本對(duì)象,并于升級(jí)后,調(diào)用 本發(fā)明的映射式文件版本管理方法,更新映射對(duì)象。 當(dāng)然,本發(fā)明還可有其它多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟 悉本領(lǐng)域的技術(shù)人員可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形 都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
一種映射式文件版本管理方法,其特征在于,該方法包含以下步驟創(chuàng)建一映射表,并儲(chǔ)存于計(jì)算機(jī)可讀/寫(xiě)的記錄裝置之中;每當(dāng)創(chuàng)建一個(gè)新文件時(shí),在該映射表中添加一條映射記錄,并將該新文件的路徑保存于該映射記錄中;當(dāng)進(jìn)行文件升級(jí)動(dòng)作時(shí),獲取所有升級(jí)后的文件的路徑;對(duì)每一個(gè)升級(jí)后的文件,在該映射表中找到與升級(jí)之前該文件路徑相同的映射記錄;以及判斷該升級(jí)后的文件是否需要?jiǎng)h除,如果需要?jiǎng)h除,則在該映射表內(nèi)設(shè)置該映射記錄為刪除狀態(tài),否則,在該映射記錄中更新該路徑屬性的值為升級(jí)后文件的路徑,直至全部升級(jí)后的文件處理完成后結(jié)束。
2. 根據(jù)權(quán)利要求1所述的映射式文件版本管理方法,其特征在于,在該映射表中找到 與升級(jí)之前該文件路徑相同的映射記錄進(jìn)一步包含如下步驟獲取升級(jí)前的該文件的原路徑;以及依據(jù)該原路徑在該映射表中找到與升級(jí)之前該文件的原路徑相同的映射記錄。
3 根據(jù)權(quán)利要求l所述的映射式文件版本管理方法,其特征在于,在獲取所有升級(jí)后 的文件路徑的同時(shí)還包含獲取所有升級(jí)后的文件的文件信息。
4. 根據(jù)權(quán)利要求1所述的映射式文件版本管理方法,其特征在于,當(dāng)進(jìn)行文件升級(jí)動(dòng) 作時(shí)通過(guò)剖面導(dǎo)向編程技術(shù)對(duì)升級(jí)方法進(jìn)行監(jiān)聽(tīng),借以獲知文件是否升級(jí)。
5. 根據(jù)權(quán)利要求1所述的映射式文件版本管理方法,其特征在于,該映射記錄儲(chǔ)存于 服務(wù)器端一數(shù)據(jù)庫(kù)中。
全文摘要
一種映射式文件版本管理方法,包括創(chuàng)建一映射表并儲(chǔ)存于計(jì)算機(jī)可讀/寫(xiě)記錄裝置中;每創(chuàng)建一新文件時(shí)在映射表添加一映射記錄并將新文件的路徑保存在此映射記錄中;當(dāng)文件升級(jí)時(shí)獲取所有升級(jí)后文件的路徑;對(duì)每一升級(jí)后的文件在映射表中找到與升級(jí)前文件路徑相同的映射記錄;判斷升級(jí)后的文件是否需要?jiǎng)h除,如需刪除,在映射表設(shè)置映射記錄為刪除狀態(tài),否則在映射記錄中更新路徑屬性為升級(jí)后文件的路徑,全部升級(jí)后的文件處理完成后結(jié)束。該方法使映射文件在其相應(yīng)實(shí)體文件升級(jí)后自動(dòng)與最新實(shí)體文件取得關(guān)聯(lián),無(wú)需在客戶端存有文件副本,可將文件的修改直接反映到客戶對(duì)象,避免手動(dòng)方式帶來(lái)的時(shí)間差,提高對(duì)映射式文件升級(jí)管理的效率并節(jié)省成本。
文檔編號(hào)G06F17/30GK101739411SQ20081018106
公開(kāi)日2010年6月16日 申請(qǐng)日期2008年11月20日 優(yōu)先權(quán)日2008年11月20日
發(fā)明者林宏旭, 趙清榮, 陳玄同 申請(qǐng)人:英業(yè)達(dá)股份有限公司