两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

對(duì)于資源的統(tǒng)一訪問(wèn)的制作方法

文檔序號(hào):6443683閱讀:558來(lái)源:國(guó)知局
專利名稱:對(duì)于資源的統(tǒng)一訪問(wèn)的制作方法
對(duì)于資源的統(tǒng)一訪問(wèn)
背景技術(shù)
隨著利用不同的技術(shù)建立的應(yīng)用的激增,開(kāi)發(fā)者正缺少統(tǒng)一的和通用的方式,以訪問(wèn)跨越多個(gè)完全不同的技術(shù)的應(yīng)用資源。不同的技術(shù)具有不同的資源格式,而且,開(kāi)發(fā)者時(shí)常針對(duì)不同的技術(shù)復(fù)制資源。沒(méi)有訪問(wèn)針對(duì)多個(gè)技術(shù)的資源的技術(shù)不可知(technology agnostic)的方法。

發(fā)明內(nèi)容
以下呈現(xiàn)了簡(jiǎn)化的發(fā)明內(nèi)容,以便提供此處描述的一些新穎的實(shí)施例的基本理解。本發(fā)明內(nèi)容不是廣泛的概述,而且,其不意圖標(biāo)識(shí)關(guān)鍵/決定性元素,或描繪其范圍。其唯一的目的是以簡(jiǎn)化的形式呈現(xiàn)一些概念,作為稍后呈現(xiàn)的更詳細(xì)的描述的前奏。所公開(kāi)的架構(gòu)為消費(fèi)應(yīng)用提供了用于訪問(wèn)不同格式及在完全不同的資源位置的資源的統(tǒng)一接口。此外,統(tǒng)一接口可擴(kuò)展,以致用戶可將附加組件添加到統(tǒng)一接口,以提供對(duì)于新資源和新資源引用的訪問(wèn)。不論資源格式如何,接口提供創(chuàng)建所有可得資源的單個(gè)綜合(comprehensive)索引的能力。在位置(例如,存儲(chǔ)裝置、高速緩存等)的資源可存在于不同的容器(例如,文件、文件夾、可執(zhí)行文件等),該容器也可被表示為資源。因此,文件夾資源可包含相同或不同格式的文件,以及其他子文件夾。文件夾中的文件還可包括不同格式的多個(gè)資源。提供用于位置的格式特定索引器,以致發(fā)現(xiàn)、枚舉并將在資源位置的資源處理為適合由索引組件處理到索引中的結(jié)構(gòu)。此外,用戶可引入針對(duì)新資源和新資源引用的新的格式特定索引器,以致新的格式特定索引器發(fā)現(xiàn)、枚舉并將新資源和資源引用處理為適合于由索引組件處理到索引中的結(jié)構(gòu)。因此,現(xiàn)在統(tǒng)一接口也提供對(duì)于新資源和新資源引用的訪問(wèn)。為了完成前述及有關(guān)目的,此處結(jié)合以下描述和附圖描述了某些例示性方面。這些方面是可以以其實(shí)現(xiàn)此處公開(kāi)的原理的各種方式的指示,而且,所有方面及其等價(jià)物意圖在要求保護(hù)的主題的范圍內(nèi)。當(dāng)結(jié)合附圖考慮時(shí),從以下詳細(xì)的描述中,其他優(yōu)勢(shì)和新穎性特征將被變得清楚。


圖1例示了根據(jù)公開(kāi)的架構(gòu)的計(jì)算機(jī)實(shí)現(xiàn)的訪問(wèn)系統(tǒng)。圖2例示了訪問(wèn)系統(tǒng)的更詳細(xì)的實(shí)現(xiàn)方式。圖3例示了根據(jù)公開(kāi)的統(tǒng)一的解決方案的索引系統(tǒng)的高級(jí)視圖。圖4例示了采用索引基礎(chǔ)類的系統(tǒng)的更詳細(xì)的描述。圖5例示了根據(jù)公開(kāi)的架構(gòu)的計(jì)算機(jī)實(shí)現(xiàn)的訪問(wèn)方法。圖6例示了圖5的方法的其他方面。圖7例示了根據(jù)公開(kāi)的架構(gòu)執(zhí)行針對(duì)訪問(wèn)的統(tǒng)一接口的計(jì)算系統(tǒng)的框圖。圖8例示了利用針對(duì)資源訪問(wèn)的統(tǒng)一接口的計(jì)算環(huán)境的示意性框圖。
具體實(shí)施例方式所公開(kāi)的架構(gòu)是提供用于由進(jìn)程(例如,消費(fèi)應(yīng)用)對(duì)于跨越多個(gè)完全不同的技術(shù)的多種資源的訪問(wèn)的統(tǒng)一的訪問(wèn)解決方案(公共運(yùn)行時(shí)間接口)。為了支持它,提供可擴(kuò)展的接口組件,以允許針對(duì)完全不同的資源框架和文件格式創(chuàng)建和利用所有資源的綜合索引 (也被稱為初級(jí)索引)。提供針對(duì)每個(gè)資源容器(例如,文件、文件夾、程序代碼、層次、用戶接口對(duì)象等)的格式特定索引器,以致所有格式特定索引器每個(gè)輸出適合于處理為綜合索引的結(jié)構(gòu)格式。初級(jí)索引的建立還有助于解決在相關(guān)聯(lián)的應(yīng)用實(shí)際運(yùn)行之前的問(wèn)題(例如,丟失或不相容資源)。索引可包含對(duì)于資源的引用或資源本身。因此,開(kāi)發(fā)者可以以對(duì)于資源容器格式的技術(shù)不可知的方式聚集資源。統(tǒng)一接口允許開(kāi)發(fā)者建立格式特定索引器,然后格式特定索引器將其輸出發(fā)送到索引組件,索引組件將新資源添加到初級(jí)索引中。使用這樣的資源容器特定索引器,可添加任何資源格式,并且因此經(jīng)由接口組件以統(tǒng)一方式進(jìn)行訪問(wèn)。通過(guò)枚舉資源容器(例如,文件層次、資源DLL等),索引器建立了包含在文件夾、可執(zhí)行文件和其他資源容器格式中的資源的公共視圖。統(tǒng)一接口組件包括生成資源索引并且然后在運(yùn)行時(shí)間使用該索引的交互組件組, 資源存儲(chǔ)為文件或存儲(chǔ)為某一資源容器存儲(chǔ)裝置內(nèi)的元素。索引可被存儲(chǔ)在一個(gè)或多個(gè)位置,然而在運(yùn)行時(shí)間被當(dāng)作單個(gè)資源集合對(duì)待。交互組件包括但不限于用于創(chuàng)建被管理資源(例如,UI資源)的索引的資源索引數(shù)據(jù)格式,用于讀取和寫入資源索引的讀取器和構(gòu)造器基礎(chǔ)類,用于生成新資源索引和/或合并資源索引的索引器基礎(chǔ)類,能夠索引包含在具體的存儲(chǔ)或文件格式中的資源的各種擴(kuò)展索引器(例如,用于文件層次、DLL (動(dòng)態(tài)鏈接庫(kù))容器、JSON (Java腳本對(duì)象記法)容器、 通用的XML (擴(kuò)展標(biāo)記語(yǔ)言)容器或其他格式的索引器),用于創(chuàng)建、驗(yàn)證和轉(zhuǎn)儲(chǔ)(dump)資源索引的索引器工具,以及呈現(xiàn)被管理資源的聚集和上下文視圖的運(yùn)行時(shí)間類。然而將理解,例如,因?yàn)樘娲鷮?shí)現(xiàn)方式可以是統(tǒng)一構(gòu)造器和索引器基礎(chǔ)類,所以這僅是得到期望的結(jié)果的一種方式。資源包的索引文件的合并預(yù)先假定在合并以初始化合并類時(shí),索引在系統(tǒng)上。然而,因?yàn)樾枰糜诤喜⒌乃羞@些是一個(gè)或多個(gè)資源項(xiàng)目綱要(其可在索引中實(shí)現(xiàn),獨(dú)立于索引存在或利用兩者組合),所以其不必是這種情況。在合并索引文件期間,可在索引文件之間對(duì)比綱要(schema)唯一的名稱和版本。如果綱要唯一的名稱和版本與主要版本不匹配,則合并索引將失敗。如果僅是次要版本不同,則合并索引文件使用更高版本的綱要。如果將綱要與不同的唯一名稱合并,則合并索引文件將綱要附加到索引中,并且,如果在某些調(diào)用(call)中顯式地指定,則使得綱要可訪問(wèn)。在合并期間,根據(jù)系統(tǒng)管理的因素,可調(diào)整對(duì)于資源的絕對(duì)引用,如文件集合 (collection)中路徑值。這樣的因素可包括但不限于封裝選項(xiàng)或?qū)⒈挥糜谠诳蛻舳讼到y(tǒng)上部署資源的部署機(jī)制。例如,對(duì)于key/image/logo· jpg,引用res/de-de/images/logo. jpg 為 appllangpack/res/de~de/images/logo, jpg 5 appx: //app 1 langpack/res/ de-de/images/logo, jpg。
以下,如Myapp例子中所述,還可調(diào)整引用,以抽象出由系統(tǒng)管理的維度屬性,如語(yǔ)言標(biāo)識(shí)符令牌,以從特定的實(shí)例引用導(dǎo)出中性(neutral)項(xiàng)目引用。在建立應(yīng)用時(shí),枚舉并索引資源(作為初級(jí)資源索引)。(在一個(gè)實(shí)現(xiàn)方式中,可以分析資源以得到在某些條件下的可適用性(例如,如果資源在en-US文件夾中,則資源可適用于說(shuō)英語(yǔ)的用戶))。初級(jí)索引可以是以二進(jìn)制格式,其包含索引資源和/或?qū)τ诳稍谶\(yùn)行時(shí)間被詢問(wèn)的資源的引用。索引可包含各種類型的資源,包括但不限于串(string)和文件路徑。索引自身可簡(jiǎn)單地包含對(duì)于駐留在索引外部的這樣的資源數(shù)據(jù)的引用。可在安裝時(shí)間執(zhí)行合并,以重新映射可用資源和相關(guān)聯(lián)的位置以在運(yùn)行時(shí)間使用。然而,將理解,合并潛在地可在其他時(shí)間發(fā)生一在需要訪問(wèn)資源之前的任何時(shí)間。這可以是部署時(shí)(例如,當(dāng)應(yīng)用或應(yīng)用組件被上傳在部署服務(wù)器上時(shí),或當(dāng)從部署服務(wù)器提取應(yīng)用或應(yīng)用組件時(shí))、安裝時(shí)、在安裝之后且應(yīng)用加載之前,在應(yīng)用加載期間,或在運(yùn)行時(shí)間。在反向操作中,當(dāng)移除資源時(shí),從初級(jí)索引解合并相關(guān)聯(lián)的索引??商鎿Q地,簡(jiǎn)單地,可在索引中將與該索引相關(guān)聯(lián)的記錄標(biāo)記為不可用。在部署中,安裝器機(jī)制可調(diào)用索引,提供關(guān)于消費(fèi)應(yīng)用和有關(guān)資源的信息。可利用適合的索引器生成索引。統(tǒng)一的解決方案可以被表明為工具,其抽象化索引文件API (應(yīng)用程序接口),以提供用于讓開(kāi)發(fā)者將資源層次捕獲為描述資源和資源位置的元數(shù)據(jù)形式的命令行接口,并將元數(shù)據(jù)放入索引文件組中。格式特定索引器有助于跨越支持的資源類型的可擴(kuò)展性和特定處理(handling)。文件夾索引器是一種類型的格式特定索引器。文件夾索引器返回特定文件夾內(nèi)的適當(dāng)文件和子文件夾。文件夾索引器與索引基礎(chǔ)類交互,以發(fā)現(xiàn)資源項(xiàng)目。資源可被安裝在離散文件夾集合中,或資源是基于文件的對(duì)象。當(dāng)前資源模型要求與應(yīng)用相關(guān)聯(lián)的資源在目錄樹(shù)的相同分支中。然而,所公開(kāi)的統(tǒng)一解決方案針對(duì)于新技術(shù),其中應(yīng)用的組件和文件被部署時(shí)可彼此分開(kāi)。現(xiàn)在參考附圖,其中,全文相同的引用數(shù)字被用于指相同的元素。為了解釋的目的,在以下討論中闡述了大量的特定細(xì)節(jié),以提供對(duì)其的完整理解。然而,明顯的是,可實(shí)現(xiàn)新穎的實(shí)施例而無(wú)需這些特定的細(xì)節(jié)。在其他情況中,以框圖形式示出了公知結(jié)構(gòu)和裝置以有助于其描述。意圖是將覆蓋落入要求保護(hù)的主題的精神和范圍內(nèi)的所有的修改、等價(jià)物和替代。圖1例示了根據(jù)所公開(kāi)的架構(gòu)的計(jì)算機(jī)實(shí)現(xiàn)的訪問(wèn)系統(tǒng)100。利用任意資源格式的資源102。例如,第一資源104可以是第一任意格式的單個(gè)資源,而且,第二格式的第二資源106還可包括相同或不同格式的資源。將理解,可按期望采用附加的資源102。接口組件108用以為進(jìn)程110提供對(duì)于資源102 (在此可利用多種類型的資源數(shù)據(jù))的統(tǒng)一訪問(wèn)。接口組件108訪問(wèn)包括資源102的索引版本的索引112。索引112可包括資源本身,和/或可選地,對(duì)于資源的引用(對(duì)于一個(gè)或多個(gè)資源的引用)。接口組件108 可擴(kuò)展為提供對(duì)于新資源和新資源引用114的統(tǒng)一訪問(wèn)。接口組件108經(jīng)由索引112中對(duì)于資源的資源引用,提供對(duì)于資源的訪問(wèn)。使用索引組件116枚舉資源和引用,以建立索引112。索引112包括具有格式的資源條目,該格式對(duì)于在相關(guān)聯(lián)的資源位置的資源的對(duì)應(yīng)格式是技術(shù)不可知的。接口組件108可以是不可擴(kuò)展的,并有助于創(chuàng)建向索引組件116輸出資源的已索引組的格式特定索引器。索引組件 116創(chuàng)建索引112,并將來(lái)自格式特定索引器的該已索引組處理到索引112中??商鎿Q地, 接口組件108是可擴(kuò)展的,并有助于創(chuàng)建新的格式特定索引器,其以適合用于索引組件116 處理到索引112中的格式輸出新資源的已索引組和新資源引用114。資源格式至少可包括文件系統(tǒng)文件夾和各種類型的文件、串和各種格式的圖像數(shù)據(jù)。這還可包括其他類型和格式的數(shù)據(jù),諸如二進(jìn)制程序代碼、音頻內(nèi)容或任何其他類型的應(yīng)用資源。附加地,資源可駐留在特定于資源類型的單獨(dú)文件(諸如JPEG、PNG或SVG圖像文件)中,以及駐留在諸如動(dòng)態(tài)鏈接庫(kù)(DLL)的資源容器。還可使用其他數(shù)據(jù)容器格式,如數(shù)據(jù)庫(kù)系統(tǒng),結(jié)構(gòu)化二進(jìn)制文件類型或以諸如符合具體的XML綱要的文件的其他結(jié)構(gòu)化文件類型。資源格式也可以是本機(jī)的(native)資源格式(例如,對(duì)于資源的數(shù)據(jù)類型是本機(jī)的)。關(guān)于可擴(kuò)展性,開(kāi)發(fā)者可編寫用于擴(kuò)展統(tǒng)一接口組件108的定制的格式特定索引器,以支持更多的資源格式。當(dāng)開(kāi)發(fā)橫跨多個(gè)技術(shù)的項(xiàng)目時(shí),這允許開(kāi)發(fā)者對(duì)于存儲(chǔ)在各種格式中的資源的統(tǒng)一訪問(wèn)??梢员緳C(jī)資源格式收集資源102,而不是針對(duì)利用的每個(gè)技術(shù)復(fù)制資源。圖2例示了統(tǒng)一訪問(wèn)系統(tǒng)200的更詳細(xì)的實(shí)現(xiàn)方式。這里,接口組件108被描繪為包括格式特定索引器202,其向索引組件116饋送適合于通過(guò)索引組件116處理為綜合索引112的結(jié)構(gòu)。例如,第一資源104與索引第一格式的資源的第一格式特定索引器204 相關(guān)聯(lián),而且,第二資源106與索引第二格式的資源的第二格式特定索引器206相關(guān)聯(lián)。因此,接口組件108包括針對(duì)資源102的每個(gè)任意資源格式的格式特定索引器。每個(gè)格式特定索引器向索引組件116輸出索引化的(或結(jié)構(gòu)化的)格式,其創(chuàng)建單個(gè)索引112。索引112可包括在來(lái)自格式特定索引器202的結(jié)構(gòu)(輸出)中提供的資源(例如,資源208),和/或?qū)τ谥T如第一資源104的特定資源的資源引用(例如,資源引用210)。因此,進(jìn)程(例如,消費(fèi)應(yīng)用)訪問(wèn)接口組件108,其經(jīng)由索引112可直接從索引取得資源,或經(jīng)由資源引用被引導(dǎo)至資源位置。系統(tǒng)200是可擴(kuò)展的,因?yàn)橛脩艨商砑有碌母袷教囟ㄋ饕?12,以處理新資源格式和引用114,如具體實(shí)現(xiàn)方式期望的。因此,在運(yùn)行時(shí)間(或在其他期望的時(shí)間),經(jīng)由索引組件116的處理,新資源被合并在索引112中。可創(chuàng)建格式特定索引器,并將其用于描述不同資源的顯式列表。因此,用戶(例如,引用開(kāi)發(fā)者、運(yùn)行時(shí)間用戶等)指定索引112中將被使用的資源的準(zhǔn)確列表。換句話說(shuō),提供了訪問(wèn)系統(tǒng),其包括在完全不同的資源位置的任意資源格式的資源,以及為進(jìn)程(例如,消費(fèi)者應(yīng)用)提供對(duì)于資源的統(tǒng)一訪問(wèn)的接口組件。接口組件包括索引(其包括資源和/或?qū)τ谫Y源的引用),以及創(chuàng)建資源的索引和對(duì)于資源的引用的索引組件。接口組件可擴(kuò)展為實(shí)現(xiàn)對(duì)于通過(guò)索引組件被添加到索引中的新資源和新資源引用的統(tǒng)一訪問(wèn)ο接口組件包括對(duì)于特定資源的資源引用。接口組件還包括用于資源容器的格式特定索引器,其發(fā)現(xiàn)、枚舉并將容器資源轉(zhuǎn)換為適合于索引組件處理到索引中的結(jié)構(gòu)。利用格式特定索引器以顯式地指定資源的準(zhǔn)確列表以包括在索引中。接口組件的可擴(kuò)展性允許創(chuàng)建新的格式特定索引器,其枚舉并將新格式的新資源轉(zhuǎn)換為適合于索引組件包含到索引中的索引結(jié)構(gòu)。支持的資源類型和格式可包括文件夾、程序代碼、文件、用戶接口對(duì)象、可執(zhí)行文件、包含其他資源的文件和/或文件層次。以下是所公開(kāi)的架構(gòu)的一個(gè)例子實(shí)例化的更詳細(xì)描述,其采用為進(jìn)程(例如,應(yīng)用)的完全不同的資源利用單個(gè)綜合索引112的接口。圖3例示了根據(jù)所公開(kāi)的統(tǒng)一的解決方案的索引系統(tǒng)300的高級(jí)視圖。架構(gòu)(和系統(tǒng)300)提供索引器基礎(chǔ)類(IBC) 302,以支持創(chuàng)建資源306 (例如,資源308)的資源索引304。具體地,IBC 302提供可用于開(kāi)發(fā)者環(huán)境和目標(biāo)客戶端機(jī)器部署及資源運(yùn)行時(shí)間兩者的公共內(nèi)部API。IBC 302有助于創(chuàng)建資源索引304和資源索引的管理。IBC 302利用格式特定索引器202 (例如,文件夾索引器310 和XML索引器312)及聲明性配置規(guī)則,以與資源層次314交互。IBC 302有助于將資源308的資源層次314返回至索引器工具316 (經(jīng)由格式特定索引器202),其經(jīng)由索引組件318 (與索引組件116類似)提供索引能力以輸出資源索引 304。如所示,在一個(gè)實(shí)現(xiàn)方式中,IBC 302獨(dú)立于索引組件318??商鎿Q地,索引組件318 可包括IBC 302和/或格式特定索引器202的集合。附加地,在一個(gè)替代實(shí)施例中,寫索引 112的系統(tǒng)基礎(chǔ)類302可與索引組件318交互(即,系統(tǒng)基礎(chǔ)類320與IBC 302交互,且IBC 302是索引組件318的一個(gè)組件)。IBC 302還與系統(tǒng)基礎(chǔ)類320交互。系統(tǒng)基礎(chǔ)類320包括用于合并(合并器322)、 轉(zhuǎn)儲(chǔ)(轉(zhuǎn)儲(chǔ)器工具324)、讀取器基礎(chǔ)類3 和構(gòu)造器基礎(chǔ)類328的功能性,以與資源索引交互。(注意,此處在一些地方被表示為“索引文件”,將理解,不要求索引作為獨(dú)立文件駐留)。 附加地,將理解,這僅僅是一個(gè)可能的實(shí)例化,并且可采用其他實(shí)例化。例如,為建立橫跨不同類型和格式的資源的索引并取得索引,可采用用來(lái)寫和讀取索引但不合并索引或轉(zhuǎn)儲(chǔ)索引數(shù)據(jù)的功能性。合并器322實(shí)現(xiàn)資源索引的合并,作為從一些格式特定索引器至具有索引112的合并器的輸出。轉(zhuǎn)儲(chǔ)器工具3M使得第三方開(kāi)發(fā)者能夠分析放入索引的資源和相關(guān)聯(lián)的應(yīng)用條件。最終地,輸出是初級(jí)索引112。作為基礎(chǔ)類設(shè)計(jì)的一部分,還提供針對(duì)索引內(nèi)容的配置規(guī)則和創(chuàng)建格式特定索引器擴(kuò)展。配置規(guī)則可以是XML的,以指定資源/資源類型和維度(dimension)或維度中的特定值之間的關(guān)系。例如,用語(yǔ)言名命名的目錄中的文件可被用于滿足針對(duì)那些具體語(yǔ)言的資源請(qǐng)求。在該情況下,維度是語(yǔ)言,資源是文件,并且,對(duì)于維度中的值的關(guān)系可基于包含文件的目錄名。將理解,其僅是一個(gè)可能的可選的實(shí)例化。通過(guò)基礎(chǔ)類302調(diào)用格式特定索引器202,以打開(kāi)并標(biāo)識(shí)資源層次314中的節(jié)點(diǎn)的內(nèi)容?;谝陨侠樱峁┽槍?duì)目錄和文件的索引器工具316。這樣的索引器報(bào)告目錄的內(nèi)容,并標(biāo)識(shí)針對(duì)基礎(chǔ)類的每個(gè)項(xiàng)目的屬性。該特征還提供某一共用的功能性以供格式特定索引器202用以決定分配維度中的具體值。建立該共用的功能性,然后某一共用的配置跨越格式特定索引器被利用。IBC 302提供基本的功能單元,以通過(guò)基于配置規(guī)則或所提供的格式特定索引器分析資源層次314,或通過(guò)合并現(xiàn)存的索引的集合創(chuàng)建資源索引(例如,資源索引304)。IBC 302使能創(chuàng)建提供描述資源和資源位置的元數(shù)據(jù)的資源索引,以便使能運(yùn)行時(shí)間標(biāo)識(shí)針對(duì)給定上下文的最適當(dāng)?shù)馁Y源。
該架構(gòu)是可擴(kuò)展的,因此允許單獨(dú)的格式特定索引器202與IBC 302集成,并使得實(shí)現(xiàn)方式能支持附加的資源格式或具有更好的靈活性和更低的成本的資源容器格式。單獨(dú)格式特定索引器的開(kāi)發(fā)者能夠利用共用的功能性確定維度值,允許焦點(diǎn)針對(duì)于其中包含資源的特定格式。IBC 302從資源層次314組建立索引組。IBC 302利用系統(tǒng)基礎(chǔ)類320以實(shí)際建立包資源索引文件和格式特定索引器,以遍歷資源306。IBC302精心安排進(jìn)程并遵循具體的邏輯以建立正確的索引組。IBC302還為格式特定索引器202提供統(tǒng)一機(jī)制,以在根據(jù)資源(例如,資源308)的元數(shù)據(jù)確定可應(yīng)用條件時(shí)詢問(wèn)。圖4例示了采用索引基礎(chǔ)類302的系統(tǒng)400的更詳細(xì)的描述。按照從可用資源創(chuàng)建包的消費(fèi)應(yīng)用(或更概括地,進(jìn)程)描述系統(tǒng)400。將注意,這僅僅是一個(gè)例子實(shí)施例。例如,在提供支持資源的不同類型和格式的單個(gè)系統(tǒng)的情況下,則條件的管理和諸如條件應(yīng)用器(condition applicator)的相關(guān)聯(lián)的組件是可選的。然而,將理解,(一個(gè)或多個(gè))進(jìn)程(例如,消費(fèi)應(yīng)用)可以用于任何適合的目的。此外,可應(yīng)用限制針對(duì)給定目的的資源利用的條件。IBC 302被示出為包括條件應(yīng)用器402,遍歷匯點(diǎn)(traversal sink)404,匯點(diǎn)404 中的項(xiàng)目實(shí)例條目406和索引器匯點(diǎn)408。如前所述,格式特定索引器(例如,索引器206) 與IBC 302交互。最終地,可利用系統(tǒng)基礎(chǔ)類302創(chuàng)建主函數(shù)(main)和資源包索引410。 現(xiàn)在,將其作為一個(gè)例子實(shí)施例詳細(xì)描述。以下是針對(duì)IBC 302的示例類定義組。條件應(yīng)用器(ConditionApplicator)
HRESlJLT Condi tIonApplicator (
In XMLNodeiridexPassConf ig,
1 η Envi ronmentenvi ro+nment, In ConditionSetPool conditionSetPool
);
HRESULT ApplyConditions(
In Stringtoken,
In Int.conditionSet Index,
Out IntnewCondi t. i onSet I ndex f
Out. Boolis Ccmditi on
)I
項(xiàng)目實(shí)例條目(Item Instance Entry)
StringCollectionName
StringIteniName
StringItemTypeName
StringInstanceValue
IntconditionSetPoolIndex
BooltoTraverse
J^^ Cbt^1 ^C·^ ^l ^irr Cs^ mL· JT^L CiI^
項(xiàng)目實(shí)例匯點(diǎn)(Item Instance Sink)
權(quán)利要求
1.一種計(jì)算機(jī)實(shí)現(xiàn)的訪問(wèn)系統(tǒng)(100),包括任意資源格式的資源(102);為進(jìn)程提供對(duì)于所述資源的統(tǒng)一訪問(wèn)的接口組件(108),所述接口組件訪問(wèn)包括資源以及可選地對(duì)于一個(gè)或多個(gè)所述資源的引用的索引,所述接口組件可擴(kuò)展為提供對(duì)于新資源和新資源引用的統(tǒng)一訪問(wèn);以及執(zhí)行至少與所述接口組件相關(guān)聯(lián)的計(jì)算機(jī)可執(zhí)行指令的處理器。
2.如權(quán)利要求1所述的系統(tǒng),其中所述接口組件經(jīng)由所述索引中對(duì)于資源的資源引用,提供對(duì)于所述資源的訪問(wèn)。
3.如權(quán)利要求1所述的系統(tǒng),其中枚舉所述資源和引用以建立所述索引,所述索引包括具有格式的資源條目,所述格式對(duì)于所述資源的對(duì)應(yīng)格式是技術(shù)不可知的。
4.如權(quán)利要求1所述的系統(tǒng),其中所述接口組件是不可擴(kuò)展的,并有助于創(chuàng)建向索引組件輸出資源的已索引組的格式特定索引器,所述索引組件創(chuàng)建所述索引并將所述已索引組處理到所述索引中。
5.如權(quán)利要求1所述的系統(tǒng),其中所述接口組件是可擴(kuò)展的,并有助于創(chuàng)建新的格式特定索引器,其以適合由索引組件處理到所述索引中的格式輸出所述新資源的已索引組和所述新資源引用。
6.一種計(jì)算機(jī)實(shí)現(xiàn)的訪問(wèn)方法,包括以下動(dòng)作接收任意資源格式的資源(500);將所述資源索引為綜合資源索引(502);經(jīng)由單個(gè)接口,提供對(duì)于所述資源的訪問(wèn),所述單個(gè)接口利用所述索引以訪問(wèn)所述資源(504);以及利用執(zhí)行存儲(chǔ)在存儲(chǔ)器中的指令的處理器,以至少執(zhí)行索引和提供的動(dòng)作。
7.如權(quán)利要求6所述的方法,還包括使用所述索引中對(duì)于資源的引用,經(jīng)由所述接口,提供對(duì)于資源的訪問(wèn)。
8.如權(quán)利要求6所述的方法,還包括采用針對(duì)每個(gè)資源格式的格式特定索引器,以索引所述格式的所述資源。
9.如權(quán)利要求6所述的方法,還包括通過(guò)創(chuàng)建輸出描述新資源的顯式列表的相關(guān)聯(lián)的新的格式特定索引器,擴(kuò)展所述接口以訪問(wèn)新資源和新資源格式。
10.如權(quán)利要求6所述的方法,還包括使能經(jīng)由接口對(duì)于包括以下中的至少一個(gè)的資源的訪問(wèn)文件夾、程序代碼、文件、用戶接口對(duì)象、可執(zhí)行文件、包含其他資源的文件或文件層次。
全文摘要
架構(gòu)為進(jìn)程(例如,消費(fèi)應(yīng)用)提供訪問(wèn)不同格式及在完全不同的資源位置的資源的統(tǒng)一接口。統(tǒng)一接口可擴(kuò)展,使得用戶可將附加組件添加到統(tǒng)一接口,以提供對(duì)于新資源和新資源引用的訪問(wèn)。不論資源格式如何,接口提供創(chuàng)建所有可用資源的單個(gè)綜合索引的能力。提供用于資源的格式特定索引器,以發(fā)現(xiàn)、枚舉并將資源處理為適合于通過(guò)索引組件處理到索引中的結(jié)構(gòu)。用戶可引入針對(duì)新資源和新資源引用的新的格式特定索引器,以通過(guò)索引組件處理到索引中?,F(xiàn)在,統(tǒng)一接口也提供對(duì)于新資源和新資源引用的訪問(wèn)。
文檔編號(hào)G06F17/30GK102542045SQ201110446908
公開(kāi)日2012年7月4日 申請(qǐng)日期2011年12月28日 優(yōu)先權(quán)日2010年12月28日
發(fā)明者A.古普塔, A.查普曼, E.福瓊, P.G.康斯泰布爾, R.豪金斯, T.維納 申請(qǐng)人:微軟公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
平顺县| 金山区| 广饶县| 定襄县| 额敏县| 图木舒克市| 山阴县| 吉首市| 平和县| 伊金霍洛旗| 清水河县| 永修县| 出国| 富阳市| 高尔夫| 古浪县| 宝兴县| 延川县| 武宣县| 西乡县| 专栏| 巴中市| 芮城县| 琼结县| 巴中市| 内黄县| 昌都县| 澄迈县| 仁寿县| 义马市| 进贤县| 淮滨县| 宁陕县| 保靖县| 甘孜| 湟源县| 康定县| 东明县| 获嘉县| 屏东市| 道真|