專利名稱:用于在層次數(shù)據(jù)結(jié)構(gòu)中保持應(yīng)用偏好的客戶/服務(wù)器系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及個(gè)人計(jì)算和連網(wǎng)領(lǐng)域。它尤其涉及網(wǎng)絡(luò)計(jì)算的新發(fā)展的領(lǐng)域,在其中臺(tái)式計(jì)算機(jī)用戶利用同諸如公司內(nèi)聯(lián)網(wǎng)、因特網(wǎng)或者某網(wǎng)絡(luò)或因特網(wǎng)服務(wù)提供商(ISP)連接的個(gè)人計(jì)算機(jī)(可能是無(wú)盤的),得到對(duì)各種以后在該臺(tái)式計(jì)算機(jī)上執(zhí)行的應(yīng)用程序的訪問(wèn)。更準(zhǔn)確地說(shuō),本發(fā)明涉及一種用于從服務(wù)器檢索的并在臺(tái)式計(jì)算機(jī)上執(zhí)行的軟件的軟件偏好(配置數(shù)據(jù))的基于服務(wù)器的存儲(chǔ)。
網(wǎng)絡(luò)計(jì)算機(jī)領(lǐng)域目前處于其初級(jí)階段。然而,出于一些原因,預(yù)料它會(huì)迅速發(fā)展,尤其在公司環(huán)境下。該預(yù)料是當(dāng)公司以及可能還有個(gè)人用戶達(dá)到硬件和軟件更新點(diǎn)時(shí),進(jìn)入該新領(lǐng)域會(huì)更有效和更省錢,而不是以傳統(tǒng)方式用裝有盤的計(jì)算機(jī)和在本地存儲(chǔ)并管理軟件應(yīng)用進(jìn)行更新。例如,在公司環(huán)境下,用戶例如可利用TCP/IP和因特網(wǎng)的HTTP協(xié)議,與公司內(nèi)聯(lián)網(wǎng)連接,并根據(jù)他們的需要把軟件應(yīng)用直接從網(wǎng)絡(luò)服務(wù)器下載到臺(tái)式計(jì)算機(jī)。用戶按傳統(tǒng)方式在臺(tái)式機(jī)上執(zhí)行應(yīng)用以完成有用的工作。這種配置的優(yōu)點(diǎn)是與傳統(tǒng)裝著盤的計(jì)算機(jī)相比,網(wǎng)絡(luò)計(jì)算機(jī)要便宜得多。比起為每個(gè)用戶購(gòu)買獨(dú)立的軟件拷貝,為用戶群購(gòu)買所需的軟件許可證數(shù)量成本也為較低。無(wú)疑,大量公司用戶參與的軟件管理問(wèn)題會(huì)明顯減小。當(dāng)前,有盤的計(jì)算機(jī)或工作站的每個(gè)用戶通常自己充當(dāng)系統(tǒng)管理員,由于缺少經(jīng)驗(yàn)這常常消耗過(guò)分的資源。預(yù)計(jì)通過(guò)把該問(wèn)題有效地轉(zhuǎn)移到少量服務(wù)器管理專家身上而不是讓許多用戶竭力于軟件安裝、更新和計(jì)算機(jī)管理問(wèn)題,從而消除該問(wèn)題會(huì)是很有好處的。
如前面所述,未來(lái)個(gè)人計(jì)算的這種設(shè)想目前處于早期階段。從而,現(xiàn)有系統(tǒng)目前存在許多問(wèn)題和缺陷。
典型地,在網(wǎng)絡(luò)計(jì)算機(jī)系統(tǒng)中,管理人員建立存儲(chǔ)在網(wǎng)絡(luò)服務(wù)器上的用戶簡(jiǎn)檔。簡(jiǎn)檔可包含不同類型的信息,例如用戶桌面的偏好和用戶訪問(wèn)駐留在服務(wù)器的不同軟件應(yīng)用的許可。當(dāng)用戶登錄系統(tǒng)時(shí),用戶向服務(wù)器標(biāo)明自己,服務(wù)器找出該用戶的簡(jiǎn)檔并把簡(jiǎn)檔發(fā)送到用戶計(jì)算機(jī)以在那里配置計(jì)算機(jī)和生成桌面。該桌面可包括一些代表估計(jì)用戶會(huì)訪問(wèn)的應(yīng)用的圖符。簡(jiǎn)檔可能還包含計(jì)算機(jī)和桌面的其它屬性,例如,桌面的背景色彩,或桌面上使用的字型和點(diǎn)的尺寸,或數(shù)據(jù)文件搜索路徑,這些對(duì)于該用戶是唯一的。簡(jiǎn)檔可能是用戶能修改的或不能修改的。
在用戶可以修改自己的簡(jiǎn)檔的環(huán)境下,在注銷時(shí)修改的簡(jiǎn)檔被上裝到服務(wù)器,并存儲(chǔ)在服務(wù)器中以供下次用戶登錄時(shí)檢索。盡我們所知,在一些現(xiàn)有技術(shù)系統(tǒng)中,用戶可在他們的桌面上生成他們希望的任何應(yīng)用圖符配置,不論這些應(yīng)用是否在服務(wù)器上存在,也不論用戶是否已得到訪問(wèn)服務(wù)器上某應(yīng)用的許可。Lotus公司的WorkplaceDesktop(以前稱為Kona Desktop)系統(tǒng)是這種類型的操作的一個(gè)例子。在其它系統(tǒng)中,服務(wù)器向用戶展示其具有的所有應(yīng)用的一個(gè)列表,用戶可從中挑選。在該情況下,不能保證用戶具有從桌面上的包含表中選取的某應(yīng)用的訪問(wèn)許可。Sun公司的Hot Java View系統(tǒng)是這種類型的系統(tǒng)的一個(gè)例子。換言之,現(xiàn)有技術(shù)系統(tǒng)不在用戶可對(duì)桌面應(yīng)用圖符組做出的配置和用戶實(shí)際上獲得訪問(wèn)許可的應(yīng)用之間建立連系。在這樣的情況下,當(dāng)用戶點(diǎn)擊某圖符以執(zhí)行某應(yīng)用時(shí),若不存在訪問(wèn)許可,則可能出現(xiàn)出錯(cuò)消息(例如未批準(zhǔn)訪問(wèn)消息),或者在更壞情況下用戶的計(jì)算機(jī)可能發(fā)生故障。
現(xiàn)有技術(shù)的另一個(gè)限制是使用平面數(shù)據(jù)結(jié)構(gòu)對(duì)用戶、用戶組、終端和終端組建立模型。按照常用的管理用戶訪問(wèn)計(jì)算機(jī)資源的方式建好的所謂的網(wǎng)絡(luò)計(jì)算機(jī)實(shí)現(xiàn)(例如Lotus公司的AdministrationFacility for Desktop、Microsoft公司的Windows NT Profiles andPolicies以及Sun公司的Hot Java Views),在服務(wù)器上實(shí)施一種平面“分組”結(jié)構(gòu),以管理不同語(yǔ)境下的軟件偏好(或?qū)傩?。本文中使用的術(shù)語(yǔ)“語(yǔ)境”指的是單個(gè)用戶、用戶組、終端或終端組。用于管理服務(wù)器上的軟件偏好的任何分組結(jié)構(gòu)允許管理員為不同的用戶組以及為各個(gè)用戶定義偏好屬性。然而在許多場(chǎng)合下,尤其在具有大量用戶的場(chǎng)合下,平面系統(tǒng)是不靈活的。需要提供一種支持把偏好信息組織到層次結(jié)構(gòu)中的管理工具。
現(xiàn)有系統(tǒng)的另一個(gè)限制是在管理員和用戶必須進(jìn)行工作站桌面的用戶配置的方式上所受到的限制。例如,目前需要管理員利用與用戶應(yīng)用分離的但又相關(guān)的配置程序配置用戶偏好。最好是允許廠家只提供單個(gè)應(yīng)用。為了從廠家只得到最終用戶應(yīng)用,必須使中央管理設(shè)施能在一個(gè)用戶或用戶組的語(yǔ)境下執(zhí)行最初用戶應(yīng)用?,F(xiàn)有技術(shù)不允許管理操作的這樣的靈活性。換言之,盡我們所知,在現(xiàn)有技術(shù)中,管理人員不具有在一個(gè)用戶的語(yǔ)境下運(yùn)行某用戶應(yīng)用以便為該用戶以及該應(yīng)用設(shè)定偏好的能力。此外,在技術(shù)上管理人員不能運(yùn)行某用戶應(yīng)用以設(shè)定用戶組語(yǔ)境下的偏好。
本發(fā)明小組所知的現(xiàn)有技術(shù)中的再一個(gè)限制是現(xiàn)有技術(shù)劃分服務(wù)器永久存儲(chǔ)空間,以保證用于存儲(chǔ)和服務(wù)器上的各不同應(yīng)用相關(guān)的用戶偏好的唯一空間得到保留的方式。據(jù)發(fā)明人員所知,在面向?qū)ο蟮南到y(tǒng)中(其中可以用完全合格的類名查詢對(duì)象,該類名唯一標(biāo)識(shí)該對(duì)象并使對(duì)象與其它類相區(qū)別),防止不同應(yīng)用的偏好信息存儲(chǔ)沖突問(wèn)題是通過(guò)使第一中央主管分配一個(gè)應(yīng)用于某廠家的唯一標(biāo)志并通過(guò)使該廠家處的第二主管為該廠家的每個(gè)應(yīng)用分配和第一標(biāo)志相關(guān)的第二標(biāo)志予以解決的。例如,可由第一主管向廠家A分配標(biāo)志vendorA,并且確保在該第一主管生效的體系結(jié)構(gòu)內(nèi)該標(biāo)志是唯一的。接著廠家A的第二主管為它的在該體系結(jié)構(gòu)內(nèi)的每個(gè)應(yīng)用分配第二標(biāo)志。例如,廠家A的一個(gè)應(yīng)用可能標(biāo)志成vendorA.App1;而另一個(gè)應(yīng)用標(biāo)志成vendorA.App2。該技術(shù)把系統(tǒng)中的每個(gè)應(yīng)用的唯一標(biāo)志變換到系統(tǒng)的永久存儲(chǔ)中的某單元以保持在存儲(chǔ)中不同應(yīng)用的偏好數(shù)據(jù)不發(fā)生沖突。應(yīng)用運(yùn)行時(shí)向網(wǎng)絡(luò)計(jì)算機(jī)服務(wù)器通知它的唯一存儲(chǔ)單元,而該服務(wù)器負(fù)責(zé)根據(jù)語(yǔ)境(用戶、用戶組、終端或終端組)在該開(kāi)始單元?jiǎng)澐忠粋€(gè)用于存儲(chǔ)偏好信息的區(qū)域,從而不和不同語(yǔ)境下的偏好信息沖突。很明顯,管理存儲(chǔ)空間的這種方式是不方便的和不希望的。需要發(fā)明一種方法,以便在不要求中央主管出于防止偏好信息存儲(chǔ)中的沖突的目的而分配唯一標(biāo)志情況下以及不必把存儲(chǔ)單元信息編碼到應(yīng)用情況下,自動(dòng)地為存儲(chǔ)上述面向?qū)ο蟮膽?yīng)用的偏好信息而生成各唯一存儲(chǔ)單元。
技術(shù)中的另一個(gè)限制是不存在任何在不需要改變現(xiàn)有硬件和應(yīng)用下把現(xiàn)有應(yīng)用和硬件遷移到中央管理式網(wǎng)絡(luò)計(jì)算新世界中的設(shè)備?,F(xiàn)有硬件(以終端為例)在連網(wǎng)環(huán)境下于引導(dǎo)時(shí)從設(shè)置在服務(wù)器上的某專用格式的文件中得到其配置信息。終端被編程成知道如何去訪問(wèn)它的配置文件。終端利用一個(gè)唯一標(biāo)識(shí)符從服務(wù)器訪問(wèn)該文件。該唯一標(biāo)識(shí)符通常是終端的介質(zhì)訪問(wèn)控制(MAC)地址。然而,在涉及到不同于為終端所設(shè)計(jì)的協(xié)議和API的新型中央管理環(huán)境下,終端不能訪問(wèn)該新環(huán)境下的偏好信息,終端只能按為其設(shè)計(jì)的方式訪問(wèn)它的配置文件。這是一個(gè)嚴(yán)重的問(wèn)題,因?yàn)榇嬖诖罅康恼谑褂玫倪@樣的已有設(shè)備。不能在新系統(tǒng)上使用它們,實(shí)質(zhì)上阻礙鼓勵(lì)用戶遷移到新系統(tǒng)中。
現(xiàn)有技術(shù)中的再一個(gè)限制涉及到管理員和配置管理系統(tǒng)之間的接口。當(dāng)管理設(shè)施內(nèi)的配置軟件為各種用戶、用戶組、終端及終端組而配置偏好信息時(shí),就在運(yùn)行該設(shè)施的管理人員所設(shè)定的語(yǔ)境(用戶、用戶組、終端或終端組)下發(fā)動(dòng)管理軟件。當(dāng)該管理人員改變應(yīng)用運(yùn)行的語(yǔ)境時(shí),需要重新發(fā)動(dòng)應(yīng)用以裝入用于新語(yǔ)境的配置信息。每次改變語(yǔ)境都重新發(fā)動(dòng)軟件的處理是耗時(shí)的和對(duì)管理員是不方便的,尤其對(duì)于具有許多用戶的系統(tǒng)更是如此。在這樣的系統(tǒng)中,預(yù)計(jì)管理員在配置應(yīng)用時(shí)會(huì)多次改變語(yǔ)境。
依據(jù)一個(gè)方面,本發(fā)明在網(wǎng)絡(luò)系統(tǒng)中提供一種管理用于在用戶站上運(yùn)行的各應(yīng)用的用戶配置偏好的方法,所述網(wǎng)絡(luò)系統(tǒng)由內(nèi)連著一個(gè)服務(wù)器和多個(gè)用戶站的網(wǎng)絡(luò)構(gòu)成,其中該服務(wù)器存儲(chǔ)多個(gè)用于下載到用戶站的用戶應(yīng)用,所述方法包括步驟在一個(gè)樹(shù)形層次中表示該系統(tǒng)的所有用戶,該樹(shù)形層次由包含所有系統(tǒng)用戶的一個(gè)AllUsers組節(jié)點(diǎn)和多個(gè)子組節(jié)點(diǎn)組成,每個(gè)子組節(jié)點(diǎn)包含一些屬于由該子組節(jié)點(diǎn)代表的組中的選定用戶,每個(gè)節(jié)點(diǎn)包含用于一些系統(tǒng)上可得到的選定應(yīng)用的配置偏好;對(duì)每個(gè)是多個(gè)組的成員的用戶分配一個(gè)組優(yōu)先次序;對(duì)于任何請(qǐng)求執(zhí)行某選定應(yīng)用的給定用戶確定該用戶的組優(yōu)先次序;以及,通過(guò)從組優(yōu)先級(jí)表確定從中可為選定應(yīng)用導(dǎo)出一組偏好的第一組,通過(guò)從AllUsers組節(jié)點(diǎn)到該第一組在樹(shù)上移動(dòng)把各偏好匯合到用于該選定應(yīng)用的一個(gè)集合中,通過(guò)收集用于該選定應(yīng)用的每個(gè)節(jié)點(diǎn)處的各偏好,以及通過(guò)隨著越過(guò)每個(gè)節(jié)點(diǎn)用該節(jié)點(diǎn)處為該選定應(yīng)用規(guī)定的各偏好,修改所收集到的偏好,而從該樹(shù)建立一組配置偏好。
依據(jù)第二方面,本發(fā)明在網(wǎng)絡(luò)系統(tǒng)中提供一種管理用于在用戶站上運(yùn)行的各應(yīng)用的用戶配置偏好的設(shè)備,所述網(wǎng)絡(luò)系統(tǒng)由內(nèi)連著一個(gè)服務(wù)器和多個(gè)用戶站的網(wǎng)絡(luò)構(gòu)成,其中該服務(wù)器存儲(chǔ)多個(gè)用于下載到用戶站的用戶應(yīng)用,所述設(shè)備包括用于在一個(gè)樹(shù)形層次中表示該系統(tǒng)的所有用戶的裝置,該樹(shù)形層次由包含所有系統(tǒng)用戶的一個(gè)AllUsers組節(jié)點(diǎn)和多個(gè)子組節(jié)點(diǎn)組成,每個(gè)子組節(jié)點(diǎn)包含一些屬于由該子組節(jié)點(diǎn)代表的組的選定用戶,每個(gè)節(jié)點(diǎn)包含用于一些系統(tǒng)上可得到的選定應(yīng)用的配置偏好;用于對(duì)每個(gè)是多個(gè)組的成員的用戶分配一個(gè)組優(yōu)先次序的裝置;用于對(duì)任何請(qǐng)求執(zhí)行某選定應(yīng)用的給定用戶,確定該用戶的組優(yōu)先次序的裝置;用于通過(guò)從組優(yōu)先級(jí)表確定從中可為選定應(yīng)用導(dǎo)出一組偏好的第一組,通過(guò)從AllUsers組節(jié)點(diǎn)到該第一組在樹(shù)上移動(dòng)把各偏好匯合到用于該選定應(yīng)用的一個(gè)集合中,通過(guò)收集用于該選定應(yīng)用的每個(gè)節(jié)點(diǎn)處的各偏好,以及通過(guò)隨著越過(guò)每個(gè)節(jié)點(diǎn)用該節(jié)點(diǎn)處為該選定應(yīng)用規(guī)定的各偏好修改所收集到的偏好,從而為該樹(shù)建立一組偏置偏好的裝置。
依據(jù)第三方面,本發(fā)明提供一種存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上的計(jì)算機(jī)程序產(chǎn)品,當(dāng)在計(jì)算機(jī)上運(yùn)行時(shí)其用于在網(wǎng)絡(luò)系統(tǒng)中實(shí)現(xiàn)一種管理用于在用戶站上運(yùn)行的各應(yīng)用的用戶配置偏好的方法,所述網(wǎng)絡(luò)系統(tǒng)由內(nèi)連著一個(gè)服務(wù)器和多個(gè)用戶站的網(wǎng)絡(luò)構(gòu)成,其中該服務(wù)器存儲(chǔ)多個(gè)用于下載到用戶站的用戶應(yīng)用,所述方法包括步驟在一個(gè)樹(shù)形層次中表示該系統(tǒng)的所有用戶,該樹(shù)形層次由包含所有系統(tǒng)用戶的一個(gè)AllUsers組節(jié)點(diǎn)和多個(gè)子組節(jié)點(diǎn)組成,每個(gè)子組節(jié)點(diǎn)包含一些屬于由該子組節(jié)點(diǎn)代表的組中的選定用戶,每個(gè)節(jié)點(diǎn)包含用于一些系統(tǒng)上可得到的選定應(yīng)用的配置偏好;對(duì)每個(gè)是多個(gè)組的成員的用戶分配一個(gè)組優(yōu)先次序;對(duì)于任何請(qǐng)求執(zhí)行某選定應(yīng)用的給定用戶確定該用戶的組優(yōu)先次序;以及,通過(guò)從組優(yōu)先級(jí)表確定從中可為選定應(yīng)用導(dǎo)出一組偏好的第一組,通過(guò)從AllUsers組節(jié)點(diǎn)到該第一組在樹(shù)上移動(dòng)把各偏好匯合到用于該選定應(yīng)用的一個(gè)集合中,通過(guò)收集用于該選定應(yīng)用的每個(gè)節(jié)點(diǎn)處的各偏好,以及通過(guò)隨著越過(guò)每個(gè)節(jié)點(diǎn)用該節(jié)點(diǎn)處為該選定應(yīng)用規(guī)定的各偏好修改所收集到的偏好,而從該樹(shù)建立一組配置偏好。
本文中所說(shuō)明的系統(tǒng)為客戶/服務(wù)器環(huán)境下的用戶和小應(yīng)用程序程序提供一個(gè)配置信息的公用儲(chǔ)存庫(kù)。這稱之為客戶簡(jiǎn)檔管理。該系統(tǒng)允許用戶漫游,即在任何時(shí)候從系統(tǒng)中的任何計(jì)算機(jī)登錄并在運(yùn)行時(shí)刻根據(jù)服務(wù)器處為該用戶存儲(chǔ)的偏好而自動(dòng)進(jìn)行配置。優(yōu)選實(shí)施方式是基于Java(Java是Sun公司的一個(gè)商標(biāo))的系統(tǒng)并且客戶計(jì)算機(jī)使用設(shè)置成執(zhí)行Java應(yīng)用的web瀏覽器接口。這樣,在該優(yōu)選實(shí)施方式下,假定用戶小程序以及桌面小程序是Java小程序。但是,沒(méi)有把本發(fā)明限制在Java環(huán)境的意圖。用于本地存儲(chǔ)的應(yīng)用的偏好可按傳統(tǒng)方式在本地存儲(chǔ),而用于基于服務(wù)器的小程序的偏好可按本說(shuō)明的方式處理。
本發(fā)明允許系統(tǒng)管理員按一種層次對(duì)系統(tǒng)的用戶或用戶組、終端及終端組建模,并允許分別對(duì)每個(gè)組和各個(gè)用戶設(shè)定桌面和用戶應(yīng)用偏好。對(duì)于選定的組語(yǔ)境,例如對(duì)于系統(tǒng)所有用戶的組或者包含一些選定用戶的某子組,為選定的用戶小程序確定缺省偏好集。然后根據(jù)在該選定組下專用規(guī)定的偏好,修改該缺省集。接著再用該用戶專用的偏好集,修改這些偏好。
在優(yōu)選實(shí)施例中,在一個(gè)樹(shù)形層次中表示該系統(tǒng)的所有用戶,該樹(shù)形層次由包含所有系統(tǒng)用戶的一個(gè)AllUsers組節(jié)點(diǎn)和多個(gè)子組節(jié)點(diǎn)組成,每個(gè)子組節(jié)點(diǎn)包含屬于由該子組節(jié)點(diǎn)代表的組中的一組選定的用戶。每個(gè)節(jié)點(diǎn)還包含用于一些系統(tǒng)上可使用的選定應(yīng)用的配置偏好。管理員對(duì)每個(gè)是多個(gè)組的成員的用戶分配組優(yōu)先次序。當(dāng)用戶執(zhí)行某應(yīng)用時(shí),該應(yīng)用從服務(wù)器請(qǐng)求它的各偏好。首先確定該用戶的組優(yōu)先次序。接著通過(guò)從組優(yōu)先級(jí)表確定在其中可為選定的應(yīng)用導(dǎo)出一組偏好的第一組并且然后把這些偏好匯合到選定的應(yīng)用的偏好集合中,而從該樹(shù)建立一組配置偏好。通過(guò)從AllUsers組節(jié)點(diǎn)到該第一組在樹(shù)上移動(dòng),通過(guò)收集在該選定應(yīng)用的每個(gè)節(jié)點(diǎn)規(guī)定的各偏好,以及隨著越過(guò)每個(gè)節(jié)點(diǎn)通過(guò)在該節(jié)點(diǎn)處對(duì)選定應(yīng)用規(guī)定的各偏好修改收集到的偏好集,使該匯合得以實(shí)現(xiàn)。
和非層次結(jié)構(gòu)相比,本發(fā)明提供多得多的組織靈活性和管理能力。層次結(jié)構(gòu)可更準(zhǔn)確地描述大多數(shù)企業(yè)的結(jié)構(gòu)。越宏大地對(duì)企業(yè)建模,按層次的組織的能力越重要。
圖1示出一個(gè)示意網(wǎng)絡(luò)和多個(gè)用戶站,其中包括在其上可實(shí)施本發(fā)明的一個(gè)管理員站;圖2是一個(gè)示意方塊圖,示出和服務(wù)器通信的管理員站以及管理員站的和提供中央簡(jiǎn)檔管理和偏好管理的服務(wù)器的構(gòu)件;圖3示出系統(tǒng)的用戶組以及用戶的層次組織,該示意層次組織也可包括各個(gè)終端以及終端組;然而出于簡(jiǎn)明,它們被略去;圖4示出一個(gè)示意的各個(gè)用戶以及組優(yōu)先次序表,其用于從圖3的層次組織確定一組可應(yīng)用于某用戶以及該用戶執(zhí)行的某具體應(yīng)用的偏好;圖5更詳細(xì)地描述圖2的管理員站和服務(wù)器;圖6示意示出用戶終端處的軟件對(duì)象,其中包括某用戶應(yīng)用以及在該應(yīng)用和其它構(gòu)件間的API,在用戶終端執(zhí)行該應(yīng)用期間它們合作以建立用戶偏好;圖7至8示出用戶終端和服務(wù)器處的操作,用于在用戶終端處的用戶登錄以及初始建立包含著桌面偏好的用戶桌面;圖9至11示出管理員終端和服務(wù)器的操作,用于管理員用戶登錄、建立管理員桌面以及示例的應(yīng)用及配置語(yǔ)境的選擇,該例子還示出配置用戶桌面期間的語(yǔ)境改變以及所引起的操作;以及圖12至24示出應(yīng)用管理的不同階段的管理員實(shí)際屏幕的各種瞬態(tài)圖,其中包括建立圖3的層次以代表建立和刪除用戶等的一個(gè)例子、為各應(yīng)用建立應(yīng)用偏好以及在偏好建立期間的語(yǔ)境改變。
本文中所說(shuō)明的系統(tǒng)為客戶/服務(wù)器環(huán)境下的所有用戶和小應(yīng)用程序提供一個(gè)配置信息的公用儲(chǔ)存庫(kù)。這稱之為客戶簡(jiǎn)檔管理。該系統(tǒng)允許用戶漫游,即在任何時(shí)候從系統(tǒng)中的任何計(jì)算機(jī)登錄并在運(yùn)行時(shí)刻根據(jù)服務(wù)器處為該用戶存儲(chǔ)的偏好自動(dòng)進(jìn)行配置。優(yōu)選實(shí)施方式是基于Java(Java是Sun公司的一個(gè)商標(biāo))的系統(tǒng)并且客戶計(jì)算機(jī)使用一個(gè)被設(shè)置成執(zhí)行Java應(yīng)用的web瀏覽器接口。
術(shù)語(yǔ)“小應(yīng)用程序”和“小服務(wù)程序”是Java編程語(yǔ)言技術(shù)中的既定術(shù)語(yǔ)并用于本文中,因?yàn)闃I(yè)內(nèi)人士知道這些術(shù)語(yǔ)的含義。“小應(yīng)用程序”指的是在Java使能的web瀏覽器內(nèi)運(yùn)行的獨(dú)立軟件模塊。“小服務(wù)程序”指的是駐留在Java使能web服務(wù)器上的軟件模塊。應(yīng)理解,在本文中使用術(shù)語(yǔ)“小應(yīng)用程序”和“小服務(wù)程序”沒(méi)有以任何方式限制本發(fā)明的意圖。為了簡(jiǎn)明,本文中使用短語(yǔ)“配置小應(yīng)用程序”表示用來(lái)為最終用戶軟件應(yīng)用例如字處理程序、數(shù)據(jù)庫(kù)管理程序等配置偏好的軟件模塊。由于Java環(huán)境中軟件應(yīng)用也是“小應(yīng)用程序”,故本文中使用的短語(yǔ)“用戶小應(yīng)用程序”或僅僅“小應(yīng)用程序”表示某最終用戶應(yīng)用。
在優(yōu)選實(shí)施方式中,用戶小應(yīng)用程序和桌面小應(yīng)用程序被假定為Java小應(yīng)用程序。但是,應(yīng)理解本發(fā)明不限于Java環(huán)境。本發(fā)明可用于任何客戶/服務(wù)器系統(tǒng)。例如,若需要,則本系統(tǒng)可設(shè)計(jì)成使用專有通信協(xié)議的以及在任何需要的編程語(yǔ)言下書(shū)寫(xiě)并編譯的應(yīng)用。另外,即使在優(yōu)選的基于Java的環(huán)境下,基于盤的計(jì)算機(jī)也可本地訪問(wèn)一些應(yīng)用以及從服務(wù)器訪問(wèn)其它小應(yīng)用程序。用于本地存儲(chǔ)的應(yīng)用的偏好可用傳統(tǒng)方式在本地存儲(chǔ),同時(shí)按本文中說(shuō)明的方式處理基于服務(wù)器的小應(yīng)用程序的偏好。
簡(jiǎn)單的應(yīng)用程序接口(API)允許對(duì)API寫(xiě)的小應(yīng)用程序在由用戶或管理員執(zhí)行該小程序時(shí)方便地存儲(chǔ)和檢索偏好數(shù)據(jù)??梢愿鶕?jù)組成員資格和個(gè)人身份定義小應(yīng)用程序許可和用戶偏好。
客戶簡(jiǎn)檔管理包括下述服務(wù)登錄支持映射到用戶簡(jiǎn)檔;用戶支持建立用戶標(biāo)識(shí)并對(duì)用戶直接提供服務(wù)和偏好的管理能力;用戶組支持建立分級(jí)的用戶組并且根據(jù)組成員資格提供服務(wù)和偏好的管理能力;用戶小應(yīng)用程序語(yǔ)境透明性自動(dòng)確定用戶小應(yīng)用程序的執(zhí)行語(yǔ)境,即,確定應(yīng)用于用戶小應(yīng)用程序執(zhí)行的用戶和/或組簡(jiǎn)檔并且自動(dòng)建立簡(jiǎn)檔環(huán)境;用戶小應(yīng)用程序偏好儲(chǔ)存庫(kù)對(duì)語(yǔ)境敏感的用于用戶小應(yīng)用程序配置數(shù)據(jù)的服務(wù)器存儲(chǔ);動(dòng)態(tài)用戶小應(yīng)用程序偏好繼承通過(guò)繼承的面向?qū)ο蟮脑瓌t的用戶小應(yīng)用程序偏好的存入時(shí)間的分層匯合;以及用戶小應(yīng)用程序訪問(wèn)控制根據(jù)缺省組成員資格特權(quán),控制用戶小應(yīng)用程序執(zhí)行,管理員可以越過(guò)缺省組特權(quán)并可以為各個(gè)用戶而許可或拒絕附加的訪問(wèn)特權(quán)。
簡(jiǎn)檔管理提供一個(gè)通過(guò)其進(jìn)行這些任務(wù)的框架。簡(jiǎn)檔管理直接支持一些任務(wù)例如用戶/組管理、小應(yīng)用程序列表、語(yǔ)境切換、偏好繼承等,而專用于各用戶小應(yīng)用程序的配置服務(wù)是由系統(tǒng)管理員在客戶簡(jiǎn)檔管理環(huán)境下調(diào)用的各獨(dú)立配置小應(yīng)用程序支持的。一些最初用戶小應(yīng)用程序可能提供作為最終用戶小應(yīng)用程序的一部分的配置能力。若為這種情況,則管理員可在單個(gè)用戶和組的語(yǔ)境下執(zhí)行該最終用戶小應(yīng)用程序(與執(zhí)行獨(dú)立的配置小應(yīng)用程序不同)以便為這些用戶和這些組設(shè)定配置偏好。
圖1示出用于實(shí)現(xiàn)本發(fā)明的預(yù)期環(huán)境的高層圖。設(shè)置網(wǎng)絡(luò)以互連多個(gè)用戶站如臺(tái)式個(gè)人計(jì)算機(jī)102、移動(dòng)式膝上計(jì)算機(jī)104、工作站106(例如RISC計(jì)算機(jī))以及管理員站108和服務(wù)器110。在一種實(shí)施方式中,網(wǎng)絡(luò)100可以是局域網(wǎng)。在另一種實(shí)施方式中,網(wǎng)絡(luò)100可包括用于多個(gè)實(shí)體的廣域連網(wǎng),這些實(shí)體例如是具有地理上散布的多個(gè)點(diǎn)的但這些點(diǎn)仍包含在該系統(tǒng)內(nèi)的公司。不對(duì)可實(shí)現(xiàn)本發(fā)明的環(huán)境做出限制;實(shí)際上,可想象互連著許多類型的站的任何類型的網(wǎng)絡(luò)。
圖2中示出簡(jiǎn)檔管理的管理運(yùn)行環(huán)境的高層圖。在圖的左側(cè)表示管理員客戶網(wǎng)絡(luò)計(jì)算機(jī)200,而用于該系統(tǒng)的服務(wù)器位于右側(cè)。通過(guò)用203表示的網(wǎng)絡(luò),客戶機(jī)和服務(wù)器通信。圖2的具體例子假定客戶計(jì)算機(jī)是系統(tǒng)管理員的計(jì)算機(jī)。
客戶機(jī)側(cè)上的簡(jiǎn)檔管理程序206允許管理員在用戶級(jí)和小組級(jí)上配置用戶小應(yīng)用程序偏好。管理員可建立新的用戶層和組層、把用戶添加到不同的組中和為每個(gè)組以及為每個(gè)用戶規(guī)定小應(yīng)用程序許可。并且管理員可以在單個(gè)用戶或一個(gè)組的語(yǔ)境下配置各小應(yīng)用程序。管理員可以為用戶添加、刪除和重置口令。簡(jiǎn)檔管理支持對(duì)于普通用戶是透明的。管理員可以在用戶或組的任一語(yǔ)境下調(diào)用簡(jiǎn)檔管理程序206。只有管理員才能改變語(yǔ)境以管理各客戶(用戶)和各小組。服務(wù)器不會(huì)允許不具有管理授權(quán)的用戶切換語(yǔ)境。當(dāng)某請(qǐng)求進(jìn)入服務(wù)器時(shí),它會(huì)詢問(wèn)試圖訪問(wèn)該功能的用戶的確認(rèn)ID。若該用戶不擁有管理授權(quán)(即,不是AllUsers管理員小組的一個(gè)成員),則簡(jiǎn)檔管理程序小服務(wù)程序214會(huì)拒絕該請(qǐng)求。
如圖2中所示,簡(jiǎn)檔管理程序206調(diào)用其它小應(yīng)用程序,例如小應(yīng)用程序1(208)。在該例中,小應(yīng)用程序1可能是用于配置與用戶桌面有關(guān)的偏好的管理小應(yīng)用程序。即,小應(yīng)用程序1可以是與最終用戶小應(yīng)用程序相關(guān)的配置公用程序,例如編輯程序、字處理程序、數(shù)據(jù)庫(kù)等。最好但不必必須是,諸如208的配置小應(yīng)用程序組以獨(dú)立于它們對(duì)應(yīng)的用戶小應(yīng)用程序的形式存在。在圖2的語(yǔ)境下,小應(yīng)用程序1典型地是一個(gè)用于某用戶小應(yīng)用程序的配置小應(yīng)用程序;管理員在小組語(yǔ)境下運(yùn)行該配置小應(yīng)用程序以便設(shè)置組偏好和許可缺省,或在單個(gè)用戶語(yǔ)境下為個(gè)人定制用戶小應(yīng)用程序配置。通過(guò)把小應(yīng)用程序1實(shí)施成是一個(gè)獨(dú)立于其用戶小應(yīng)用程序的模塊,可提高性能,因?yàn)楹驮撚脩粜?yīng)用程序相比,配置小應(yīng)用程序1有可能是小的。此外,分立的配置小應(yīng)用程序允許管理員具有控制最終用戶的能力以配置用戶小應(yīng)用程序。
傳統(tǒng)獨(dú)立計(jì)算機(jī)本地地與用戶小應(yīng)用程序關(guān)聯(lián)地存儲(chǔ)用戶小應(yīng)用程序配置信息。傳統(tǒng)的基于Java的獨(dú)立計(jì)算機(jī)利用通過(guò)java.util.Properties類提供的格式,存儲(chǔ)用戶小應(yīng)用程序配置信息。這二種方式都要求用戶小應(yīng)用程序規(guī)定在其中存儲(chǔ)和該用戶小應(yīng)用程序相關(guān)的配置信息的本地文件的名字。換言之,需要在計(jì)算機(jī)和其上裝入的用戶小應(yīng)用程序之間建立關(guān)系。本文中所說(shuō)明的簡(jiǎn)檔管理提供真正java.util.Properties對(duì)象的類似能力,并外加支持用戶漫游能力以及對(duì)強(qiáng)大管理框架(簡(jiǎn)檔管理程序)的無(wú)縫可插入性的附加功能。
ProfileManagementProperties P 210是一個(gè)用于小應(yīng)用程序1的特性對(duì)象并提供小應(yīng)用程序1和服務(wù)器之間的API,該API允許服務(wù)器確定在用戶和小組的語(yǔ)境下在何處存儲(chǔ)用于小應(yīng)用程序1的配置信息。ProfileManagementProperties對(duì)象類提供java.util.properties類的所有功能,并且還對(duì)軟件從永久存儲(chǔ)提供建立、保存、檢索配置信息的能力。在中央位置存儲(chǔ)這樣的信息使管理用戶配置和小組配置成為可能。
當(dāng)某用戶擔(dān)當(dāng)管理員時(shí),ProfileManagementProperties 210允許管理員配置和配置小應(yīng)用程序1對(duì)應(yīng)的用戶小應(yīng)用程序,或者當(dāng)小應(yīng)用程序1是最終用戶小應(yīng)用程序時(shí)配置小應(yīng)用程序1,并把配置信息按適當(dāng)語(yǔ)境存儲(chǔ)在服務(wù)器上的適當(dāng)位置上。這允許建立在用戶小應(yīng)用程序和用戶之間的關(guān)系,而不是傳統(tǒng)系統(tǒng)中的在用戶小應(yīng)用程序和計(jì)算機(jī)之間的關(guān)系。ProfileManagementProperties 210是java.util.Properties類的一種擴(kuò)充。該擴(kuò)充允許把特性對(duì)象的偏好信息的關(guān)鍵字/值對(duì)和一個(gè)關(guān)鍵字相關(guān)聯(lián),這和利用java.util.Properties與流關(guān)聯(lián)不同。這進(jìn)而允許應(yīng)用開(kāi)發(fā)者利用該關(guān)鍵字規(guī)定和用于偏好信息的語(yǔ)境相關(guān)的唯一單元,而不是規(guī)定文件名和路徑。ProfileManagementProperties 210自動(dòng)地確定該關(guān)鍵字。關(guān)鍵字的生成將連同圖8和9作更多的說(shuō)明。通過(guò)在java.util.Properties類后建立ProfileManagementProperties 210模型,系統(tǒng)可利用通過(guò)遞歸類-缺省評(píng)定的偏好繼承。從而,這種擴(kuò)充的類通過(guò)在如對(duì)圖3討論那樣從當(dāng)前語(yǔ)境開(kāi)始沿缺省的語(yǔ)境層次移動(dòng)積累偏好而提供“組缺省”能力。
服務(wù)器202包括數(shù)據(jù)庫(kù)212,后者存儲(chǔ)用戶數(shù)據(jù)和組數(shù)據(jù),例如用戶偏好和組偏好以及用戶小應(yīng)用程序訪問(wèn)許可。Web服務(wù)器218代表典型的具有對(duì)Java小服務(wù)程序支持的web服務(wù)器。簡(jiǎn)檔管理器小應(yīng)用程序214把用戶標(biāo)識(shí)和組標(biāo)識(shí)變換成偏好數(shù)據(jù)。它還保持一個(gè)訪問(wèn)控制表以管理用戶對(duì)服務(wù)器上的應(yīng)用的訪問(wèn)。
如圖3中所示,按樹(shù)形層次存儲(chǔ)用戶偏好和組偏好。系統(tǒng)的所有用戶都自動(dòng)地屬于頂端組AllUsers。所有的用戶都屬于AllUsers組;該組包含用于服務(wù)器上的一些或所有用戶小應(yīng)用程序的缺省偏好。在圖3中,假定服務(wù)器至少包含三個(gè)用戶小應(yīng)用程序,用App3、App4、App5標(biāo)記。如在AllUsers組中所指示,App3的缺省背景(BG)為BG=蘭色。其它用x、y、z標(biāo)記的示意偏好被示成分別具有缺省值1、2和3。術(shù)語(yǔ)x,y,z用于代表任何希望的偏好,而值1、2、3是任意的并僅僅用來(lái)示意這一點(diǎn)。x偏好例如可能是桌面的屏幕字形;值x=1可能為要求正體字的缺省字形。類似地,對(duì)所有用戶App4的缺省偏好為BG=灰色、x=2、y=2和z=2。
可以以任何希望的方式為其它語(yǔ)境,例如分別的用戶組和為別的單個(gè)用戶,修改AllUsers組中的缺省值。例如,除了圖3中的AllUsers語(yǔ)境外,還示出四個(gè)別的組(GroupX,GroupY GroupY1和GroupY2)。此外,示出二個(gè)個(gè)別用戶User1和UserN。用戶可以是多于一個(gè)組的成員。在圖3中,User1是AllUsers、GroupX和GroupY1的成員;UserN是AllUsers和GroupY2的成員。若用戶是多于一個(gè)組的成員(AllUsers之外的另一個(gè)組的成員),則出于為該用戶選擇某給定小應(yīng)用程序的偏好的目的對(duì)這些組排優(yōu)先級(jí)。管理員為用戶配置組的優(yōu)先級(jí)。在圖4中示出組的優(yōu)先級(jí)。在圖4中,User1以GroupX(用完整限定名AllUsers.GroupX標(biāo)識(shí))為其最高優(yōu)先級(jí)組。User1的次高優(yōu)先級(jí)組是Group Y1(AllUsers.GroupY.Group Y1)。User1的最低優(yōu)先級(jí)組是AllUsers組。當(dāng)某用戶假如User1請(qǐng)求運(yùn)行某小應(yīng)用程序例如App3時(shí),根據(jù)該用戶屬于的組或多個(gè)組從圖3的樹(shù)匯合偏好,并相應(yīng)地在用戶桌面上配置該用戶小應(yīng)用程序。
為任何語(yǔ)境匯合偏好的第一步是得到各缺省。如果存在,則一個(gè)用戶的缺省集是來(lái)自可為該小應(yīng)用程序得到偏好信息的最高優(yōu)先級(jí)組的匯合后的偏好集。如果存在,則一個(gè)組的缺省集是來(lái)自組的父母(即,AllUsers組是AllUsers.GroupX的父母)的該小應(yīng)用程序的偏好匯合集。若一個(gè)組無(wú)父母(即,頂層AllUsers組),則該組不存在缺省。為了在某語(yǔ)境下為某小應(yīng)用程序匯合偏好,在該語(yǔ)境為該小應(yīng)用程序顯式存儲(chǔ)的各偏好,蓋寫(xiě)該小應(yīng)用程序在該語(yǔ)境下的缺省偏好集。從而,為了在組的語(yǔ)境下為某小應(yīng)用程序把各偏好匯合到缺省集中,從各個(gè)組節(jié)點(diǎn)向上最后到達(dá)AllUsers組進(jìn)行遞歸式調(diào)用以請(qǐng)求該小應(yīng)用程序的各級(jí)父女偏好集。請(qǐng)參照?qǐng)D3以舉出下例。例如,若語(yǔ)境是AllUsers.GroupY.GroupY1,則調(diào)用GroupY1的父母即GroupY以請(qǐng)求其對(duì)該小應(yīng)用程序的缺省偏好集。GroupY1對(duì)它的父母AllUsers作出遞歸調(diào)用。AllUsers不具有父母,從而AllUsers對(duì)來(lái)自GroupY的調(diào)用回送它的用于該小應(yīng)用程序的偏好集。用GroupY處存儲(chǔ)的用于該小應(yīng)用程序的各偏好(若存在)修改該偏好集。這現(xiàn)在是該小應(yīng)用程序在GroupY1的語(yǔ)境下的缺省偏好集。作為從GroupY1到GroupY的遞歸調(diào)用的結(jié)果向GroupY1回送該缺省偏好集,并用GroupY1處用于該小應(yīng)用程序的各偏好(若存在)予以修改,以得到該情況下使用的實(shí)際偏好集。除了利用可從其得到該用戶的偏好信息的最高優(yōu)先級(jí)組以首先確立可從其得到缺省集的組的語(yǔ)境外,還以相同的方式為用戶建立該語(yǔ)境的偏好集。然后利用上面說(shuō)明的遞歸過(guò)程為用戶和該用戶請(qǐng)求的該小應(yīng)用程序建立實(shí)際的偏好集。
下面的例子說(shuō)明上面的偏好匯合并應(yīng)連帶圖3一并閱讀。
例1管理員運(yùn)行用于App3的配置小應(yīng)用程序以便為組AllUsers.GroupX設(shè)定偏好。
為了對(duì)App3設(shè)定AllUsers.GroupX語(yǔ)境下的偏好集,必須確定現(xiàn)行偏好集。AllUsers.GroupX向它父母AllUsers請(qǐng)求缺省集。因?yàn)锳llUsers為頂層組,故它向GroupX返回它的用于App3的各偏好。它們是GroupX語(yǔ)境下App3的缺省偏好集。由于GroupX不具有用于App3的偏好,故來(lái)自AllUsers的缺省集是被使用的實(shí)際偏好集。在該例中,這些來(lái)自AllUsers組的偏好是BG=Blue(蘭色),x=1,y=2,z=3?,F(xiàn)在管理員可利用該配置小應(yīng)用程序以任何希望的方式修改匯合后的偏好集。
例2User1請(qǐng)求執(zhí)行com.ibm.App3。必須為com.ibm.App3匯合User1語(yǔ)境下的偏好。
圖4示出,User1的最高優(yōu)先級(jí)組是AllUsers.GroupX;首先為和App3有關(guān)的偏好信息檢查該分支的組層次。從此處起,除了利用匯合后的偏好集配置用戶工作站上的App3之外,本例基本上和上面的例1相同。User1的用于App3的各偏好是BG=Breen(綠色),x=1,y=2,z=3,這是因?yàn)榇鎯?chǔ)在User1的語(yǔ)境下的用于App3的BG=Breen偏好蓋寫(xiě)了從偏好樹(shù)的AllUsers.GroupX分支得到的缺省BG=Blue偏好。
例3在User1的語(yǔ)境下為com.ibm.App6匯合偏好。
該例示出最高優(yōu)先級(jí)組不包含用于User1的語(yǔ)境的匯合偏好的情況。此外,User1的最高優(yōu)先級(jí)組是GroupX。該組以及它的父母AllUsers不包含用于App6的偏好。從而,搜索次高優(yōu)先級(jí)組。User1的次高優(yōu)先級(jí)組是GroupY1。從該組可以為App6得到一組偏好。如例1中所說(shuō)明那樣著手偏好的匯合。從GroupY1沿著樹(shù)向上直到根AllUsers組進(jìn)行遞歸調(diào)用,并向下對(duì)遞歸調(diào)用回送偏好集,并沿該方向進(jìn)行修改以形成缺省集。然后用GroupY1中存儲(chǔ)的各偏好修改該缺省集以形成應(yīng)用于該語(yǔ)境的匯合偏好集。簡(jiǎn)言之,AllUsers回送空的偏好集,因?yàn)樗痪哂杏糜贏pp6的偏好。GroupY用值a=1和b=2修改該空集并按缺省集向GroupY1回送該集。GroupY1用a=33修改該缺省集。該集回送到User1語(yǔ)境,以用作其缺省集。由于在User1語(yǔ)境處不存儲(chǔ)用于App6的偏好,故從偏好樹(shù)的GroupY1得到的缺省集代表用于App6的完整的偏好匯合集。這樣用于該語(yǔ)境的實(shí)際偏好集變?yōu)閍=33,b=2。
上面的3個(gè)例子說(shuō)明對(duì)某特定軟件段響應(yīng)load()收集偏好。當(dāng)為某段軟件保留偏好信息時(shí),任何已保存的顯式地在該語(yǔ)境寫(xiě)入的偏好將寫(xiě)到數(shù)據(jù)存儲(chǔ)(212)中,該寫(xiě)入的單元是由該軟件目前運(yùn)行的語(yǔ)境和正存儲(chǔ)其偏好的軟件的關(guān)鍵字的組合規(guī)定的。
類似地進(jìn)行許可一個(gè)新組訪問(wèn)該組自身允許的所有的小應(yīng)用程序名并且訪問(wèn)其子組允許的所有小應(yīng)用程序。然而,正如Java允許程序員越過(guò)越類(Superclass)方法,簡(jiǎn)檔管理允許系統(tǒng)管理員具有超過(guò)某繼承的許可的能力。這稱為越過(guò)某許可。
如同Java的繼承形式一樣,簡(jiǎn)檔管理的偏好和許可繼承的形式稱為單繼承。單繼承意味著每個(gè)簡(jiǎn)檔管理組只可具有一個(gè)超組(盡管任何給定超組可具有多個(gè)子組)。
簡(jiǎn)檔管理用戶(葉節(jié)點(diǎn))可能需要多個(gè)組中的成員資格,從而需要一種功能來(lái)限制對(duì)單層次組的偏好繼承,以便使因交叉組分支匯合所引入的不兼容可變子集造成的不可靠配置的可能為最小。通過(guò)允許用戶的組成員資格被優(yōu)先,簡(jiǎn)檔管理在查找和某特定小應(yīng)用程序相關(guān)的各偏好時(shí)可遵循一個(gè)搜索次序。換言之,從具有最高優(yōu)先級(jí)的組開(kāi)始,該搜索將停止在第一個(gè)找到的含有用于該試圖裝入它的各偏好的小應(yīng)用程序的配置數(shù)據(jù)的組上。
用戶從組的成員資格繼承軟件許可。借助仔細(xì)地對(duì)企業(yè)建模,管理員可以一次一個(gè)用戶地在無(wú)需通過(guò)屏面導(dǎo)航下向許多用戶分配軟件訪問(wèn)。簡(jiǎn)檔管理通過(guò)對(duì)web服務(wù)器編程以允許/拒絕對(duì)小應(yīng)用程序的訪問(wèn)來(lái)控制訪問(wèn)。web服務(wù)器執(zhí)行訪問(wèn)控制。通過(guò)web服務(wù)器出于鑒別目的而要求用戶ID和口令方可進(jìn)入web服務(wù)器,也對(duì)簡(jiǎn)檔管理程序小服務(wù)程序施加保護(hù)。按要求向用戶提示口令是瀏覽器的標(biāo)準(zhǔn)功能。
圖5更詳細(xì)地示出圖2的系統(tǒng)。簡(jiǎn)檔管理框架內(nèi)的管理員調(diào)用配置小應(yīng)用程序Applet1。為了緊密地結(jié)合到簡(jiǎn)檔管理框架中,Applet1可備有用于詢問(wèn)其操作環(huán)境信息(例如,詢問(wèn)語(yǔ)境,詢問(wèn)語(yǔ)境改變事件、詢問(wèn)該語(yǔ)境的訪問(wèn)控制表等)的應(yīng)用程序接口(API)515,但這不是對(duì)配置小應(yīng)用程序的一個(gè)要求。在任何場(chǎng)合下,Applet1的設(shè)計(jì)者除了用于得到進(jìn)入和離開(kāi)java.util.Properties對(duì)象的偏好信息的java.wtil.properties對(duì)象的基本方法外,只需要理解基本API方法enablepersistence()、load()和save()。此外API515還包括list()和get Context()方法。Applet1只需要與ProfileManagementPrProperties對(duì)象一起注冊(cè)和適當(dāng)?shù)卣{(diào)用這些方法??烧{(diào)用load()方法以檢索正在由管理員選取的單用戶或小組的語(yǔ)境下被配置的用戶小應(yīng)用程序的偏好集的當(dāng)前狀態(tài)。然后管理員可按需要修改偏好并利用小應(yīng)用程序提供的配置保持功能(該小應(yīng)用程序使用它的ProfileManagementProperties對(duì)象的save()方法)存儲(chǔ)它們。類似地,若Applet1需要準(zhǔn)予用戶訪問(wèn)的用戶小應(yīng)用程序列表,則可利用list()方法從服務(wù)器得到該表。小應(yīng)用程序可以利用getContext()方法以顯示它當(dāng)前運(yùn)行的語(yǔ)境名或者確保它只在某語(yǔ)境下運(yùn)行(即,若某小應(yīng)用程序希望利用導(dǎo)出代理而在服務(wù)器上配置某服務(wù),則它可能只允許自己運(yùn)行在AllUsers語(yǔ)境下,因?yàn)檎粚?dǎo)出的配置是服務(wù)器專用的而不是用戶專用的)。對(duì)于在簡(jiǎn)檔管理框架下運(yùn)行的Applet1所需要的只是,與profileManagementProperties410一起注冊(cè)并且實(shí)現(xiàn)ProfileManagementProperties類(java.util.properties類的擴(kuò)充)。
簡(jiǎn)檔管理程序506還備有用于各配置小應(yīng)用程序的語(yǔ)境改變API516。Applet1可帶有一個(gè)語(yǔ)境改變事件監(jiān)聽(tīng)程序512。API 516和事件監(jiān)聽(tīng)程序512允許管理員在運(yùn)行配置小應(yīng)用程序的同時(shí)改變語(yǔ)境(用戶或小組),而不必停止和復(fù)位配置小應(yīng)用程序。例如,當(dāng)配置小應(yīng)用程序用戶偏好集時(shí),管理員在配置期間可能多次改變語(yǔ)境。若配置小應(yīng)用程序以對(duì)這些事件的監(jiān)聽(tīng)程序注冊(cè),則簡(jiǎn)檔管理程序506會(huì)通過(guò)API516向它通知語(yǔ)境改變。這允許Applet1為每個(gè)新語(yǔ)境從服務(wù)器更新它的偏好集。不具有事件監(jiān)聽(tīng)程序API時(shí),管理員必須終止Applet1并在選擇了新語(yǔ)境以查閱用于新語(yǔ)境的現(xiàn)有偏好信息并避免由簡(jiǎn)檔管理小應(yīng)用程序停止和再啟動(dòng)以后,重新啟動(dòng)。為了注冊(cè),Appletl調(diào)用其特性對(duì)象ProfileManagementProperties 510上的一種方法即addContextChangeListener(API516)進(jìn)行注冊(cè)。當(dāng)管理員設(shè)置新語(yǔ)境時(shí),簡(jiǎn)檔管理程序506進(jìn)行對(duì)對(duì)象510的設(shè)置語(yǔ)境調(diào)用(API516),該調(diào)用隨之調(diào)用事件監(jiān)聽(tīng)程序512上的再裝入方法(API516)。事件監(jiān)聽(tīng)程序512接著對(duì)其特性對(duì)象510進(jìn)行裝入特性調(diào)用以便從服務(wù)器為該新語(yǔ)境得到新偏好數(shù)據(jù),并且使Applet1更新其GUI和內(nèi)部變量組以反映該新偏好信息。
上述功能避免這樣的可能性網(wǎng)絡(luò)管理員從一種語(yǔ)境讀數(shù)據(jù)、改變語(yǔ)境并在該新語(yǔ)境下做出配置改變之前企圖load()時(shí)附帶地用save()蓋寫(xiě)。
未被作為監(jiān)聽(tīng)程序注冊(cè)的小應(yīng)用程序在管理員強(qiáng)行語(yǔ)境改變時(shí)被簡(jiǎn)檔管理小應(yīng)用程序停止、破壞、重裝入和再啟動(dòng)。
簡(jiǎn)檔管理還提供“特性導(dǎo)出”服務(wù)以允許方便地把現(xiàn)有硬件和軟件翻新到該簡(jiǎn)檔管理環(huán)境。該特性導(dǎo)出服務(wù)允許簡(jiǎn)檔管理程序514支持用戶工作站(物理硬件)以及用戶、組和用戶應(yīng)用。由于現(xiàn)有工作站不知道ProfileManagementProperties 510,故該導(dǎo)出服務(wù)允許工作站廠家建立工作站配置小應(yīng)用程序,當(dāng)廠家小應(yīng)用程序保存其偏好信息時(shí),這種工作站配置小應(yīng)用程序規(guī)定服務(wù)器上的要調(diào)用的導(dǎo)出代理520。該導(dǎo)出標(biāo)記造成建立一個(gè)廠家提供的類的實(shí)例(導(dǎo)出代理520對(duì)象)和調(diào)用該對(duì)象上的導(dǎo)出方法,以便規(guī)定在由被配置的工作站所要求的任何特性文件格式和/文件單元(組)下保存的工作站配置信息。
假定Applet1是某廠家為某種不和本簡(jiǎn)檔管理系統(tǒng)兼容的現(xiàn)有終端提供的配置小應(yīng)用程序。該廠家還提供導(dǎo)出代理520。通過(guò)運(yùn)行簡(jiǎn)檔管理程序506,管理員就可配置該終端以在本系統(tǒng)中運(yùn)行、對(duì)被配置的該終端設(shè)置語(yǔ)境、運(yùn)行廠家提供的配置Applet1并配置該小應(yīng)用程序。當(dāng)管理員保存該配置時(shí),發(fā)送到服務(wù)器的信息中的一部分是標(biāo)識(shí)該被配置終端的唯一標(biāo)識(shí)符。典型地,它是該終端的介質(zhì)訪問(wèn)控制(MAC)地址。簡(jiǎn)檔管理器小服務(wù)程序514檢查某導(dǎo)出代理規(guī)定成保存。簡(jiǎn)檔管理程序小服務(wù)程序514從一個(gè)被保存的說(shuō)明需要該導(dǎo)出代理的偏好,對(duì)此進(jìn)行檢查。該偏好用下述關(guān)鍵字值對(duì)XXXXEXPORT_AGENTXXXX={導(dǎo)出代理的全限定類名}的形式規(guī)定導(dǎo)出標(biāo)記。
簡(jiǎn)檔管理器小服務(wù)程序514調(diào)用導(dǎo)出代理的export(Contextcontext,config properties)方法以在服務(wù)器上從保存的偏好信息建立一個(gè)或多個(gè)文件。該專用的文件或多個(gè)文件是由包含在來(lái)自于Applet1的特性信息內(nèi)的終端的唯一標(biāo)識(shí)符標(biāo)識(shí)的。當(dāng)以后引導(dǎo)該終端時(shí),該終端利用它的唯一標(biāo)識(shí)符以和簡(jiǎn)檔管理系統(tǒng)無(wú)關(guān)的總是那樣做的方法,從服務(wù)器上的文件組522定位和檢索它的配置信息。
圖6示出在客戶計(jì)算機(jī)上運(yùn)行的小應(yīng)用程序2。小應(yīng)用程序2可能是一個(gè)最終用戶小應(yīng)用程序,例如字處理程序。在任何事件下,小應(yīng)用程序2在需要時(shí)可訪問(wèn)如在圖5的515處示出的API方法中的一些相同的方法。小應(yīng)用程序2利用裝入方法檢索偏好集,并利用保存方法保持可能由最終用戶改變的任何偏好。使能持久方法用和該用戶相等的語(yǔ)境初始化用于小應(yīng)用程序2的簡(jiǎn)檔管理特性對(duì)象,并生成用于標(biāo)識(shí)服務(wù)器上的偏好信息存儲(chǔ)單元的唯一關(guān)鍵字,如上面對(duì)管理員作出的說(shuō)明那樣。
圖7示出用戶發(fā)出其桌面的情況。客戶機(jī)(700)上的用戶對(duì)其瀏覽器指點(diǎn)服務(wù)器上的桌面小應(yīng)用程序的URL并在步驟704發(fā)送報(bào)文http//Server/Desktop.html。由于Desktop.html是服務(wù)器保護(hù)的文件,故在706向客戶機(jī)上的web瀏覽器回送一個(gè)盤問(wèn)。通過(guò)向用戶提問(wèn)用戶ID和口令,客戶機(jī)上的web瀏覽器作出響應(yīng)。接著在708客戶機(jī)向服務(wù)器發(fā)送用戶ID和口令信息。在圖7的708處以黑體字示出用戶ID和口令以表示該信息是由web瀏覽器自己傳送的。本文其它處也利用命名法則以示意相同的含義。由于推測(cè)該用戶具有運(yùn)行桌面小應(yīng)用程序的許可,故該請(qǐng)求會(huì)被承兌。
在從服務(wù)器向客戶機(jī)裝入桌面小應(yīng)用程序的代碼時(shí),在客戶機(jī)和服務(wù)器之間存在一系列交互(未示出)。在712建立桌面對(duì)象并且開(kāi)始執(zhí)行。該桌面對(duì)象需要它的偏好信息(即,配置信息)從而可為調(diào)用它的最終用戶裁剪桌面。為此,作為桌面對(duì)象的初始化處理的一部分,在714處該桌面建立一個(gè)“簡(jiǎn)檔管理特性(profileManagementProperties)”對(duì)象P,該對(duì)象用于從服務(wù)器裝入、得到、高速緩存、設(shè)定和保存該桌面小應(yīng)用程序的用戶偏好信息的一份拷貝。該桌面對(duì)象接著在716進(jìn)行API調(diào)用P.enablePersistence(desktopObject(applet))(P.使能永久(桌面對(duì)象(小應(yīng)用程序)),該調(diào)用在716的步驟1)用簡(jiǎn)檔管理器小服務(wù)程序214的URL初始化“簡(jiǎn)檔管理特性”對(duì)象P。該URL是從先前從服務(wù)器裝入的桌面小應(yīng)用程序的URL推出的?!昂?jiǎn)檔管理特性”對(duì)象P向簡(jiǎn)檔管理器小服務(wù)程序214發(fā)送請(qǐng)求718以得到運(yùn)行該桌面小應(yīng)用程序的用戶的語(yǔ)境。在該情況下,該語(yǔ)境由二部分組成,即語(yǔ)境名和語(yǔ)境類型,前者是該用戶的ID而后者在本情況下是“用戶”。簡(jiǎn)檔管理器小應(yīng)用程序得到來(lái)自請(qǐng)求718的用戶ID并在719回送用戶語(yǔ)境。在716的步驟2,“簡(jiǎn)檔管理特性”對(duì)象P被用運(yùn)行桌面的用戶的語(yǔ)境初始化。在716的步驟3,“簡(jiǎn)檔管理特性”對(duì)象P通過(guò)詢問(wèn)該Java桌面對(duì)象P的全限定類名而為該桌面軟件生成一個(gè)唯一關(guān)鍵字。所有的Java對(duì)象都知道它們的類名。該唯一關(guān)鍵字和用戶語(yǔ)境信息組合,以提供一個(gè)數(shù)據(jù)庫(kù)212中的用于存儲(chǔ)該桌面小應(yīng)用程序的用戶專用偏好信息的唯一單元??梢允褂萌魏涡枰姆椒▉?lái)把由全限定類名和用戶語(yǔ)境信息組成的串變換成數(shù)據(jù)存儲(chǔ)單元。接著,向簡(jiǎn)檔管理器小服務(wù)程序214發(fā)送請(qǐng)求720,以得到為該用戶裁剪過(guò)的用于該桌面小應(yīng)用程序的偏好信息。語(yǔ)境和關(guān)鍵字作為請(qǐng)求720的一部分傳送,以標(biāo)識(shí)被請(qǐng)求的偏好信息。在722,簡(jiǎn)檔管理器小服務(wù)程序使用高速緩存在“簡(jiǎn)檔管理特性”對(duì)象P604中的被請(qǐng)求的偏好信息,作出響應(yīng)。
在圖8中繼續(xù),在800桌面對(duì)象從它的“簡(jiǎn)檔管理特性”對(duì)象P讀它的偏好信息,并開(kāi)始相應(yīng)地更新桌面(即,它可能把屏幕色彩置成蘭色、得到有關(guān)圖符的位置的信息、等)。該桌面對(duì)象調(diào)用它的“簡(jiǎn)檔管理特性”對(duì)象P上的某方法以得到用戶具有訪問(wèn)許可的軟件的列表?!昂?jiǎn)檔管理特性”對(duì)象P在802請(qǐng)求該來(lái)自簡(jiǎn)檔管理器小服務(wù)程序214的信息,在804該小服務(wù)程序用所請(qǐng)求的信息作為響應(yīng)。對(duì)于每個(gè)這樣的用戶能訪問(wèn)的小應(yīng)用程序,該信息包括用戶便于使用的名、該小應(yīng)用程序的URL、用于該小應(yīng)用程序的圖符的URL等(桌面所需的用于在桌面上表示、裝入和發(fā)動(dòng)該小應(yīng)用程序的信息)以及其它和本發(fā)明無(wú)關(guān)的供選用的材料。該信息存儲(chǔ)在“簡(jiǎn)檔管理特性”對(duì)象P中,并回送到桌面對(duì)象。在806,該桌面對(duì)象利用該小應(yīng)用程序信息去建立用于這些小應(yīng)用程序的一個(gè)文件夾,并且生成一個(gè)為每個(gè)用戶可訪問(wèn)的小應(yīng)用程序顯示各圖符以及用戶方便使用的名的窗口。
假定用戶在先前的桌面運(yùn)行中,用戶拉出并去掉上面剛說(shuō)明的文件夾中顯示的某些軟件的圖符。有可能從此刻起該用戶不再訪問(wèn)這些從文件夾拉出的并在該桌面去掉的小應(yīng)用程序。然而,這些桌面對(duì)象通常是上一次運(yùn)行期間保持下來(lái)的用戶偏好的一部分,并且仍應(yīng)在桌面上顯示。為了避免這種情況,桌面從它的“簡(jiǎn)檔管理特性”對(duì)象P檢查它的偏好集以核查那些被配置成在窗口的外面出現(xiàn)的小應(yīng)用程序,其中該窗口是為了顯示用戶可以訪問(wèn)的所有小應(yīng)用程序而生成的。圖8假定在所生成的小應(yīng)用程序窗口的外面只存在一個(gè)小應(yīng)用程序。若在小應(yīng)用程序窗口的外面存在多于一個(gè)的這樣的小應(yīng)用程序,則要對(duì)每個(gè)這樣的小應(yīng)用程序循環(huán)下述過(guò)程。在步驟810桌面對(duì)照來(lái)自服務(wù)器的用戶訪問(wèn)的小應(yīng)用程序列表,核查每個(gè)在小應(yīng)用程序窗口外出現(xiàn)的小應(yīng)用程序。若該小應(yīng)用程序出現(xiàn)在該表中,則在810把該小應(yīng)用程序的圖符放在桌面上與以前相同的位置上。若該用戶不再訪問(wèn)該小應(yīng)用程序,則在步驟814從桌面的偏好集中去掉該小應(yīng)用程序并且從“簡(jiǎn)檔管理特性”對(duì)象P中去掉。若作為該處理的一部分去掉任何小應(yīng)用程序,則在步驟816桌面告訴“簡(jiǎn)檔管理特性”對(duì)象P保存偏好集。“簡(jiǎn)檔管理特性”對(duì)象P向簡(jiǎn)檔管理器小服務(wù)程序214發(fā)送帶著偏好、關(guān)鍵字和語(yǔ)境信息的請(qǐng)求818,以把新的偏好信息保存在數(shù)據(jù)庫(kù)212中。服務(wù)器把響應(yīng)820發(fā)送到“簡(jiǎn)檔管理特性”對(duì)象P,把該請(qǐng)求已成功完成通知對(duì)象P。
圖9示出管理員運(yùn)行配置小應(yīng)用程序以便為其它用戶或用戶組配置用于某小應(yīng)用程序的偏好集的情況。請(qǐng)理解這里討論的原則也廣泛地應(yīng)用于終端或終端組的配置??蛻魴C(jī)900上的管理員對(duì)其web瀏覽器指點(diǎn)要運(yùn)行的服務(wù)器上的簡(jiǎn)檔管理器小應(yīng)用程序214。在904向服務(wù)器發(fā)送該URL。由于ProfileManager.html是服務(wù)器保護(hù)的一個(gè)文件,就向該客戶機(jī)上的web瀏覽器回送一個(gè)盤問(wèn)906。通過(guò)向管理員提問(wèn)用戶ID和口令,web瀏覽器作出響應(yīng)。在報(bào)文中包含用戶ID和口令信息下,接著在908向服務(wù)器重復(fù)得到ProfileManager.html的請(qǐng)求。由于假定該管理員具有運(yùn)行簡(jiǎn)檔管理程序的權(quán)限,故該請(qǐng)求被承兌并在910向管理員終端下載簡(jiǎn)檔管理器小應(yīng)用程序。在從服務(wù)器向該客戶機(jī)裝入簡(jiǎn)檔管理器小應(yīng)用程序的代碼時(shí),在客戶機(jī)和服務(wù)器之間存在一系列交互(未示出)。在步驟912建立簡(jiǎn)檔管理程序?qū)ο蟛㈤_(kāi)始執(zhí)行。
簡(jiǎn)檔管理程序使用ProfileManagementProperties-nonContextFloating(“簡(jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”)代替常規(guī)的“簡(jiǎn)檔管理特性”對(duì)象。它具有和“簡(jiǎn)檔管理特性”對(duì)象相同的行為,但有一個(gè)例外當(dāng)裝入和保存偏好集時(shí),它們是對(duì)和從運(yùn)行該簡(jiǎn)檔管理程序的管理員的語(yǔ)境裝入和保存的,而不是對(duì)和從管理員正在配置的語(yǔ)境(即,單用戶或用戶小組)裝入和保存的。
簡(jiǎn)檔管理程序?qū)ο笮枰钠眯畔?即配置信息)從而它可為調(diào)用它的管理員裁剪簡(jiǎn)檔管理程序。為此,作為簡(jiǎn)檔管理程序的初始化處理的一部分,簡(jiǎn)檔管理程序在步驟914建立一個(gè)“簡(jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”對(duì)象P_NCF,該對(duì)象用于為該簡(jiǎn)檔管理器小應(yīng)用程序從服務(wù)器裝入、得到、高速緩存、設(shè)定和保存管理員的偏好信息的一份拷貝。接著該簡(jiǎn)檔管理程序?qū)ο笳{(diào)用P_NCF.enablePersistence(profileManagerbject(applet))(P_NCF.使能永久(簡(jiǎn)檔管理程序?qū)ο?小應(yīng)用程序))),在916的步驟1該調(diào)用用簡(jiǎn)檔管理器小服務(wù)程序214的URL來(lái)初始化“簡(jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”對(duì)象P_NCF。該URL是從簡(jiǎn)要管理器小應(yīng)用程序的URL導(dǎo)出的?!昂?jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”對(duì)象P_NCF向簡(jiǎn)檔管理器小服務(wù)程序214發(fā)送請(qǐng)求以得到管理員的語(yǔ)境名(ID)和語(yǔ)境類型(用戶)。簡(jiǎn)檔管理器小服務(wù)程序從該請(qǐng)求(918)得到管理員的ID。web瀏覽器在報(bào)文中和由“簡(jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”對(duì)象P_NCF發(fā)送的信息一起傳送管理員ID和口令。在916的步驟2用運(yùn)行該應(yīng)用的管理器的語(yǔ)境來(lái)初始化“簡(jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”對(duì)象P_NCF。在916的步驟3,通過(guò)詢問(wèn)Java profileManagerObject對(duì)象(按使能永久調(diào)用中的一個(gè)參數(shù)傳送)的全限定類名(即,profileManagerObject.get Class().get Name()),“簡(jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”對(duì)象P_NCF為該簡(jiǎn)檔管理器小應(yīng)用程序生成一個(gè)唯一關(guān)鍵字。和管理員的語(yǔ)境信息組合的該唯一關(guān)鍵字被變換,以便規(guī)定數(shù)據(jù)庫(kù)212中的用于該簡(jiǎn)檔管理器小應(yīng)用程序的管理員專用偏好信息的唯一單元。
對(duì)簡(jiǎn)檔管理器小應(yīng)用程序214發(fā)送請(qǐng)求(922)以得到為管理員配置的簡(jiǎn)檔管理器小應(yīng)用程序剪裁的偏好信息。該請(qǐng)求(922)包括用于標(biāo)識(shí)適當(dāng)?shù)钠眯畔⒌倪m當(dāng)語(yǔ)境名、類型和關(guān)鍵字信息。簡(jiǎn)檔管理器小服務(wù)程序214用“簡(jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”對(duì)象P_NCF中高速緩存的所請(qǐng)求的偏好信息(924)應(yīng)答。簡(jiǎn)檔管理程序從“簡(jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”讀出它的偏好信息并且相應(yīng)地更新它(即,例如把它的背景顏色設(shè)定為蘭色)。
操作在圖10繼續(xù)。在1002,簡(jiǎn)檔管理程序從簡(jiǎn)檔管理器小服務(wù)程序214請(qǐng)求有關(guān)現(xiàn)有的用戶、用戶組以及軟件的信息,并在簡(jiǎn)檔管理程序配置窗口的左屏面建立樹(shù)。管理員的左屏面的例子請(qǐng)參見(jiàn)圖13至24。在此刻1004,管理員通過(guò)在左屏面樹(shù)上點(diǎn)擊某用戶或某組,選擇希望用來(lái)配置的語(yǔ)境。通過(guò)調(diào)用P_NCF.set Context(被選語(yǔ)境),簡(jiǎn)檔管理程序?yàn)楦鳌昂?jiǎn)檔管理特性”對(duì)象設(shè)定語(yǔ)境。見(jiàn)圖13的為“用戶組”的選定語(yǔ)境,其代表所有的系統(tǒng)用戶的組,或者見(jiàn)圖18的選取的“開(kāi)發(fā)”的組語(yǔ)境,或者圖21的選取的“colleend”用戶語(yǔ)境。接著,在步驟1006,管理員從服務(wù)器上的所有小應(yīng)用程序的列表中選擇一個(gè)要配置的小應(yīng)用程序。參見(jiàn)圖17的選擇某小應(yīng)用程序的一個(gè)例子。在步驟1008,管理員接著點(diǎn)擊“運(yùn)行/定制”按鈕以運(yùn)行該選來(lái)配置的小應(yīng)用程序。該小應(yīng)用程序可能是獨(dú)立于最終用戶小應(yīng)用程序的配置小應(yīng)用程序,或者可能是最終用戶小應(yīng)用程序本身。在1009和1011從服務(wù)器請(qǐng)求和裝入所選定的小應(yīng)用程序。在步驟1010,建立并開(kāi)始執(zhí)行配置小應(yīng)用程序?qū)ο笠陨伤摹昂?jiǎn)檔管理特性”對(duì)象P。
如果假定該小應(yīng)用程序是獨(dú)立于最終用戶小應(yīng)用程序的配置小應(yīng)用程序,則在步驟1012該小應(yīng)用程序調(diào)用p.enablepersistence(configAppletObject,fullyQualifiedClassNameOfAppletBeingConfigured)(p.使能永久(配置小應(yīng)用程序?qū)ο?,被配置的小?yīng)用程序的全限定類名)。另一方面,若該小應(yīng)用程序是用戶小應(yīng)用程序,而不是獨(dú)立的配置小應(yīng)用程序,則該調(diào)用會(huì)是p.enablePersistence(endUserAppletObject)(p.使能永久(最終用戶小應(yīng)用程序?qū)ο?),因?yàn)樗M渲盟约旱钠眯畔⒍皇怯糜趧e的小應(yīng)用程序的偏好信息?!昂?jiǎn)檔管理特性”對(duì)象P已經(jīng)知道現(xiàn)行語(yǔ)境,因?yàn)楹笳咭延晒芾韱T通過(guò)管理員的“簡(jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”對(duì)象PM_NCF事先設(shè)定。當(dāng)在簡(jiǎn)檔管理程序的“簡(jiǎn)檔管理特性-無(wú)語(yǔ)境浮動(dòng)”對(duì)象PM_NCF上調(diào)用enablePersistence時(shí),先生成簡(jiǎn)檔管理器小服務(wù)程序214的單元。在配置小應(yīng)用程序的情況下,不需要生成該小應(yīng)用程序的唯一關(guān)鍵字,因?yàn)樗趀nablePersistence調(diào)用時(shí)被該配置小應(yīng)用程序傳送給“簡(jiǎn)檔管理特性”對(duì)象P。
在步驟1014,配置小應(yīng)用程序把帶有其“簡(jiǎn)檔管理特性”對(duì)象P的自己注冊(cè)為語(yǔ)境改變監(jiān)聽(tīng)程序。如前面所討論的那樣,若管理員做出語(yǔ)境改變,則這允許小應(yīng)用程序的“簡(jiǎn)檔管理特性”對(duì)象通知該小應(yīng)用程序,從而在無(wú)需終止該小應(yīng)用程序和在該語(yǔ)境中重新發(fā)動(dòng)下,該小應(yīng)用程序可為新語(yǔ)境裝入偏好信息并更新它的圖形用戶接口以反映新的配置信息。
操作在圖11中繼續(xù)。在步驟1104,該配置小應(yīng)用程序告訴“簡(jiǎn)檔管理特性”對(duì)象P為正被配置的小應(yīng)用程序而從當(dāng)前語(yǔ)境裝入偏好集。向簡(jiǎn)檔管理器小服務(wù)程序214發(fā)送請(qǐng)求1105以便為正被配置的小應(yīng)用程序得到為管理員先前選擇的語(yǔ)境的語(yǔ)境裁剪的偏好信息。該請(qǐng)求1105包括適當(dāng)?shù)恼Z(yǔ)境名(管理員已選擇的語(yǔ)境)、語(yǔ)境類型(用戶、用戶組或所有用戶組中適當(dāng)者)和關(guān)鍵字信息以規(guī)定適當(dāng)偏好信息的單元。在1106簡(jiǎn)檔管理器小服務(wù)程序214用所請(qǐng)求的偏好信息應(yīng)答,該信息被高速緩存在“簡(jiǎn)檔管理特性”對(duì)象P中。該配置小應(yīng)用程序從“簡(jiǎn)檔管理特性”對(duì)象P得到偏好集并相應(yīng)地更新它的圖形用戶接口。
管理員在1107配置該小應(yīng)用程序,并且例如通過(guò)點(diǎn)擊該小應(yīng)用程序提供的“保存”按鈕,保存修改后的偏好集。作為該操作的結(jié)果,該配置小應(yīng)用程序調(diào)用其“簡(jiǎn)檔管理特性”對(duì)象P上的save()方法?!昂?jiǎn)檔管理特性”對(duì)象P向簡(jiǎn)檔管理器小服務(wù)程序214發(fā)送偏好集、正被配置的小應(yīng)用程序的唯一關(guān)鍵字以及規(guī)定現(xiàn)行語(yǔ)境的信息。簡(jiǎn)檔管理器小服務(wù)程序在數(shù)據(jù)庫(kù)212中的由語(yǔ)境及關(guān)鍵字規(guī)定的單元上存儲(chǔ)偏好信息。
步驟1108是該配置小應(yīng)用程序仍在運(yùn)行時(shí)管理員改變語(yǔ)境的一個(gè)例子。管理員通過(guò)點(diǎn)擊某用戶或某用戶組選擇新的語(yǔ)境(參見(jiàn)圖18的管理員左屏幕屏面中新語(yǔ)境的各種例子)。作為語(yǔ)境改變的結(jié)果,簡(jiǎn)檔管理程序506通過(guò)調(diào)用P_NCF.setContext(selectedNEWcontext)(P_NCF.設(shè)定語(yǔ)境(被選的新語(yǔ)境))向“簡(jiǎn)檔管理特性”對(duì)象P(510)發(fā)送一個(gè)設(shè)定語(yǔ)境消息,這進(jìn)而導(dǎo)致對(duì)象P通過(guò)重裝入特性API515向事件監(jiān)聽(tīng)程序512通知語(yǔ)境改變。在步驟1112,事件監(jiān)聽(tīng)程序512進(jìn)行l(wèi)oad()(裝入方法)調(diào)用以檢索用于該新語(yǔ)境的偏好集,并在步驟1118用該新的偏好集更新對(duì)象P?,F(xiàn)在管理員若需要就可著手修改用于該語(yǔ)境的新偏好集,并若需要就可保存它們,以及若需要就可如上面說(shuō)明按新的語(yǔ)境改變繼續(xù)進(jìn)行。
剩余的圖12至24示出在運(yùn)行簡(jiǎn)檔管理程序206的各部分時(shí)的管理員工作站的實(shí)際屏幕瞬態(tài)圖。
在圖12中示出主配置窗口1200。該窗口左側(cè)上的樹(shù)圖屏面1202描述作為服務(wù)器上幾種可使用的服務(wù)中的一種的簡(jiǎn)檔管理1204。當(dāng)如圖12中所示選擇該條目1204時(shí),主窗口的右屏面1205顯示對(duì)簡(jiǎn)檔管理服務(wù)的歡迎信息。利用諸如1208的展開(kāi)圖符和收縮圖符控制左屏幕中某條目下的各子條目的出現(xiàn),若存在子條目的話。1208中的“十”稱為“展開(kāi)圖符”,并表示在“簡(jiǎn)檔管理”之下存在子條目。管理員通過(guò)點(diǎn)擊展開(kāi)圖符1208可顯示這些子條目,然后該展開(kāi)圖符變成“收縮圖符”(“-”)。
圖13示出圖12的簡(jiǎn)檔管理?xiàng)l目1208的展開(kāi),這造成在圖13中顯示三個(gè)缺省子條目-“小應(yīng)用程序”1300、“用戶組”1302和“用戶”1304。展開(kāi)圖符表明這些條目還可展開(kāi)?!靶?yīng)用程序”1300允許管理員定義服務(wù)器202上可使用的用戶小應(yīng)用程序,“用戶組”1302允許管理員建立并擴(kuò)充圖3的用戶組樹(shù)和設(shè)定組偏好集?!坝脩簟?304允許管理員建立新用戶和設(shè)定他們的偏好集或?qū)ΜF(xiàn)有用戶改變偏好集。在圖13的例子中,選擇“小應(yīng)用程序”1300。當(dāng)選擇該條目時(shí),窗口右側(cè)屏面1305顯示一個(gè)系統(tǒng)已定義過(guò)的用戶小應(yīng)用程序的列表1306。在1308處示出1306中選定的應(yīng)用的各屬性。通過(guò)選擇1306中的<新>,管理員定義一個(gè)新小應(yīng)用程序并且輸入1308中要求的名字和位置信息。如所示在1306中選擇一個(gè)已有的小應(yīng)用程序“數(shù)據(jù)庫(kù)資源管理程序”。在1308,“小應(yīng)用程序名”字段顯示該小應(yīng)用程序名。“URL”(統(tǒng)一資源定位符)字段顯示服務(wù)器202上的該小應(yīng)用程序的內(nèi)聯(lián)網(wǎng)或因特網(wǎng)web地址。字段“html文件的完整路徑”顯示服務(wù)器202的盤目錄結(jié)構(gòu)中的該小應(yīng)用程序的目錄路徑及文件名。字段“全限定類名”顯示該小應(yīng)用程序的全限定類名。字段“圖符URL”顯示用來(lái)為用戶桌面上的該小應(yīng)用程序生成一個(gè)圖符的圖象文件的web地址。其余字段用于選用信息,在調(diào)用時(shí)軟件可能需要選用信息。命令按鈕1310,“從文件輸入小應(yīng)用程序表”,允許管理員把小應(yīng)用程序的定義添加到來(lái)自某現(xiàn)有正文文件的現(xiàn)有表1306上。當(dāng)點(diǎn)擊按鈕1310時(shí),彈出圖14中示出的窗口,該窗口允許管理員輸入包含著要添加的小應(yīng)用程序定義的正文文件的路徑以及文件名。為了保存所有待決改變,管理員點(diǎn)擊“文件”1312并接著“點(diǎn)擊”保存(未示出)。
在左屏面中,“各用戶組”條目1302對(duì)應(yīng)于圖3的AllUsers組(這里可互換的使用“各用戶組”和“AllUsers”)。圖15示出在選擇“各用戶組”條目1302時(shí)管理員站的右屏面。在圖15中,示出右側(cè)的筆記本屏面,它包含三個(gè)標(biāo)記-成員標(biāo)記1514、子組標(biāo)記1516和小應(yīng)用程序許可標(biāo)記1518。在圖15中選擇成員標(biāo)記。成員屏面包括一個(gè)已對(duì)系統(tǒng)定義的所有成員的登錄標(biāo)識(shí)表1520。為了建立一個(gè)新用戶(他會(huì)自動(dòng)地得到目前選定的組語(yǔ)境“用戶組”中的成員資格),管理員從表1520選擇<新>,向該表右邊的各項(xiàng)目字段1522輸入適當(dāng)?shù)男畔?,并接著點(diǎn)擊“建立”按鈕1522。當(dāng)從表1520中選擇某已有成員時(shí),在1522顯示先前為該用戶存儲(chǔ)的屬性。這些屬性包括該選定成員的全名、該成員的系統(tǒng)ID、口令以及任何需要的注解。除了ID之外的這些屬性可通過(guò)點(diǎn)擊“修改”按鈕1524編輯和提出修改(但不被保存),或者通過(guò)點(diǎn)擊“刪除”按鈕1526徹底地從該系統(tǒng)中去掉該用戶。通過(guò)選擇表1520中的該項(xiàng)目并點(diǎn)擊“取消”按鈕1528可去掉任何待決的改變。
圖16示出當(dāng)選擇“子組”標(biāo)記1516時(shí)所顯示的管理員右屏面。子組表1620示出各個(gè)是在左屏面中選擇的條目(本例中為“用戶組”)的子組的組。從而,表1620顯示“AllUsers”組的所有直接子組。在左屏面中,展開(kāi)“各用戶組”。表1620中示出的各子組也是左屏面中的“各用戶組”之下的展開(kāi)條目。在表1620中,狀態(tài)字段示出各個(gè)子組的當(dāng)前狀態(tài),例如“!刪除”、“!修改”和“!建立”。表1620中的空狀態(tài)字段表示該子組存在并且沒(méi)有要保存的待決行動(dòng)。符號(hào)“!”表示該狀態(tài)是待決的(尚未保存)。在1622中出現(xiàn)表1620中被選子組的各屬性。這些屬性包括子組名和關(guān)于該子組的所需注解。為了建立一個(gè)新子組,管理員從表1620選擇<新>,在1622中輸入子組名和所需注解并點(diǎn)擊“建立按鈕”1628。接著在表1620中出現(xiàn)一個(gè)“!建立<子組名>”的條目,作為一個(gè)待決的行為。為了保持所有待決行為,管理員點(diǎn)擊頂菜單欄中的“文件”按鈕并接著點(diǎn)擊“保存”按鈕(未示出)。
圖17示出當(dāng)選擇小應(yīng)用程序許可標(biāo)記1518時(shí)所顯示的右屏面。表1720示出已對(duì)該系統(tǒng)定義的所有小應(yīng)用程序的所有名,并且示出分配給左屏面中所選擇的組或子組(當(dāng)前“語(yǔ)境”)中的各個(gè)小應(yīng)用程序的許可狀態(tài)(允許或拒絕訪問(wèn))。如別的筆記本頁(yè)面所說(shuō)明的那樣,驚嘆號(hào)表示所描繪的狀態(tài)是一個(gè)有待保存的改變。在圖17中,在左屏面中示出的樹(shù)中選擇組“各用戶組”,它對(duì)應(yīng)于圖3中所示的“AllUsers”組。由于系統(tǒng)的所有用戶都具有“各用戶組”組中的資格,故表1720為該系統(tǒng)中定義的每個(gè)小應(yīng)用程序示出所有系統(tǒng)用戶的全局缺省許可。例如,對(duì)于“AllUsers”組,小應(yīng)用程序“數(shù)據(jù)庫(kù)資源管理程序”的缺省許可狀態(tài)是“允許”(意味著準(zhǔn)許訪問(wèn));類似地,所有用戶對(duì)小應(yīng)用程序TFTP的缺省許可狀態(tài)是“拒絕”(拒絕訪問(wèn))。通過(guò)在表1720中選擇某小應(yīng)用程序并點(diǎn)擊“準(zhǔn)許組訪問(wèn)”按鈕1730或者點(diǎn)擊“拒絕組訪問(wèn)”按鈕1732,管理員可改變?cè)撔?yīng)用程序的許可狀態(tài)。此外,和選定語(yǔ)境下的小應(yīng)用程序的許可狀態(tài)無(wú)關(guān),管理員可從1720選擇某小應(yīng)用程序并點(diǎn)擊“運(yùn)行/定制”按鈕1734以便在該選定語(yǔ)境下執(zhí)行該用戶小應(yīng)用程序。接著先前示出用于該當(dāng)前語(yǔ)境的筆記本的屏面部分變成由正執(zhí)行的該用戶小應(yīng)用程序所占據(jù)。若該用戶小應(yīng)用程序恰好是用于別的軟件的配置小應(yīng)用程序,則管理員可保持軟件偏好集(通過(guò)該配置小應(yīng)用程序?qū)υ摬僮魈峁┑奈ㄒ还δ?,該偏好集將按該軟件的用于該選定語(yǔ)境的缺省偏好集來(lái)保存。若該小應(yīng)用程序是一個(gè)最終用戶小應(yīng)用程序,則這些操作是相同的,不同之處只是該最終用戶小應(yīng)用程序裝入和保存它自己的而不是用于另一個(gè)軟件的偏好集。
圖18示出“各用戶組”之下的管理員左屏面子組樹(shù)的完全展開(kāi)。直接在“各用戶組”的下面,存在二個(gè)子組,即,一個(gè)不能去掉的缺省子集“管理員小組”和一個(gè)由管理員定義的子組“IBM”?!癐BM”子集也已經(jīng)被展開(kāi)并包含三個(gè)子組“硬件”、“服務(wù)”和“軟件”?!败浖弊咏M已被展開(kāi)并至少包括一個(gè)稱為“開(kāi)發(fā)”的子組?!伴_(kāi)發(fā)”子組至少包括一個(gè)稱為“NCoD”的子組。子組“NCoD”包括一些子組,例如一個(gè)不具有子女的“ConfigFW58”。而且在該例子中,在展開(kāi)樹(shù)上選擇子組“開(kāi)發(fā)”。由于“開(kāi)發(fā)”不處于樹(shù)形層次(“AllUsers”組)的頂部,右屏面中示出的簿式視窗和選擇“各用戶組”時(shí)的圖15的右屏面有些不同,因?yàn)樗杏脩舨蛔詣?dòng)地都是“開(kāi)發(fā)”的成員,但他們都是“各用戶組”的成員。表1820顯示所有的系統(tǒng)成員的登錄系統(tǒng)ID。表1820中每個(gè)用戶ID旁邊的狀態(tài)示出該用戶是否擁有“開(kāi)發(fā)”子組中的成員資格?!笆恰北硎驹撚脩羰恰伴_(kāi)發(fā)”子組的成員,“否”表示該用戶不是“開(kāi)發(fā)”子組的成員,而“繼承的”表示該用戶通過(guò)屬于該樹(shù)下方的“開(kāi)發(fā)”的至少一個(gè)子組而繼承“開(kāi)發(fā)”組內(nèi)的成員資格。通過(guò)選擇表1820中的用戶并接著點(diǎn)擊“添加到組中”按鈕1836或“從組中去掉”按鈕1838,管理員修改該用戶的在某子組內(nèi)的成員資格狀態(tài)。若管理員希望建立一個(gè)新的系統(tǒng)用戶或者修改或刪除某現(xiàn)有成員,則管理員點(diǎn)擊“建立/修改/刪除用戶”按鈕1840。該動(dòng)作建立圖19中示出的簿視窗頁(yè)面。圖19的右屏面和圖15的右屏面類似,并允許管理員通過(guò)選擇表1920中的“新”和點(diǎn)擊“建立”按鈕建立新的系統(tǒng)用戶。類似地,通過(guò)選擇表1920中的適當(dāng)用戶和點(diǎn)擊適當(dāng)按鈕“修改”或“刪除”,管理員可修改或刪除現(xiàn)有的系統(tǒng)用戶。在任何子組語(yǔ)境(例如,“開(kāi)發(fā)”)下建立的用戶不僅獲得“各用戶組”中所需的成員資格,還自動(dòng)地是選定子組的成員。通過(guò)點(diǎn)擊右屏面頂菜單欄中的“文件”并接著點(diǎn)擊“保存”(未示出),保存系統(tǒng)用戶表的改變。
圖20示出一種直接,而不是通過(guò)圖19中示出的組和子組路由,得到系統(tǒng)用戶表以進(jìn)行編輯的方式。為了得到圖20,管理員例如選擇圖13的左屏面中的“用戶”1304。然后在圖20的右屏面中,管理員可以不在組或子組的語(yǔ)境下,如已討論的那樣,建立新用戶和修改、刪除已有用戶。
在圖21中,管理員希望直接在與其ID為“colleend”的用戶對(duì)應(yīng)的信息上工作。為此管理員例如展開(kāi)圖21的左屏面的“用戶”并接著選擇“colleend”,如所示。接著出現(xiàn)專用于colleend的系統(tǒng)信息的右屏面。該右屏面包括三個(gè)標(biāo)記。第一標(biāo)記“用戶信息”是由缺省選擇的。在該標(biāo)記下,管理員可修改與colleend有關(guān)的名字、ID、口令和注解。
圖22示出當(dāng)管理員選擇第二標(biāo)記“組成員資格”時(shí)的右屏面。表2220示出colleend為其一員的所有子組。該表中示出的各子組是按對(duì)colleend的子組優(yōu)先級(jí)次序的。通過(guò)選擇某子組并根據(jù)需要利用表2220右方的向上或向下箭頭而在表中向上或向下移動(dòng)該選定的子組,管理員可改變colleend的子組優(yōu)先級(jí)。若管理員點(diǎn)擊圖22中的“添加/去掉組成員資格”按鈕2242,則右屏面示出圖23的內(nèi)容。圖23的右屏面允許管理員修改colleend是其一員的各子組。通過(guò)點(diǎn)擊與某所希望的子組對(duì)應(yīng)的適當(dāng)?shù)目?,管理員進(jìn)行修改。若該框是空白的(意味colleend目前不是成員),則對(duì)該框添加選擇標(biāo)記以把colleend包含到該子組中。相反,若某子組框已被選擇,則在框上點(diǎn)擊清除該選擇標(biāo)記并從該子組去掉colleend。
圖24示出當(dāng)管理員選擇圖22的小應(yīng)用程序許可標(biāo)記時(shí)的右屏面。在該右屏面中,表2420顯示系統(tǒng)中定義的所有小應(yīng)用程序。管理員可通過(guò)選擇表2420中的某小應(yīng)用程序并接著點(diǎn)擊“準(zhǔn)許用戶訪問(wèn)”按鈕2430,允許colleend訪問(wèn)該小應(yīng)用程序;或者可通過(guò)點(diǎn)擊“拒絕用戶訪問(wèn)”按鈕2432,對(duì)colleend拒絕訪問(wèn)。通過(guò)點(diǎn)擊“運(yùn)行/定制”按鈕2434,管理員還可在colleend的語(yǔ)境下發(fā)動(dòng)某小應(yīng)用程序。當(dāng)這樣做時(shí),表2420中被選中的小應(yīng)用程序被發(fā)射到右屏面。然后管理員可修改該小應(yīng)用程序允許的任何偏好,并以該小應(yīng)用程序提供的方式保存偏好集。這處的一種典型情況是管理員發(fā)動(dòng)某配置小應(yīng)用程序,接著填寫(xiě)各個(gè)偏好字段。然而,若不為某用戶小應(yīng)用程序提供獨(dú)立配置,則管理員可在一個(gè)用戶的語(yǔ)境下發(fā)動(dòng)該用戶小應(yīng)用程序并從該用戶小應(yīng)用程序設(shè)定偏好集。此處的一種典型情況是管理員選擇某組或某用戶語(yǔ)境,接著如上面所述發(fā)動(dòng)該用戶小應(yīng)用程序。接著管理員典型地從某選擇菜單修改偏好集并按該用戶提供的任何方式保存偏好集。例如,典型地,當(dāng)關(guān)閉該選擇對(duì)話時(shí)保存用戶偏好值,或者該用戶小應(yīng)用程序可提供別的保存偏好集的方法。在任何情況下,由于本例中管理員在colleend的語(yǔ)境下運(yùn)行該小應(yīng)用程序,所以仿佛colleend通過(guò)運(yùn)行小應(yīng)用程序直接進(jìn)入那樣,在服務(wù)器上保持管理員通過(guò)用戶小應(yīng)用程序建立的偏好集。
這些圖中未示出用戶可修改某些和某用戶小應(yīng)用程序有關(guān)的偏好的情況。例如,用戶小應(yīng)用程序可能允許用戶選擇背景顏色或者字形及字形大小,從而當(dāng)該用戶小應(yīng)用程序在用戶桌面上執(zhí)行時(shí)每個(gè)系統(tǒng)用戶可在某種程度上個(gè)體化該小應(yīng)用程序。在這種情況下,以管理員運(yùn)行該用戶小應(yīng)用程序時(shí)的相同方式保存用戶修改過(guò)的偏好。不過(guò)一種差異是,管理員可在組的語(yǔ)境下運(yùn)行用戶小應(yīng)用程序以設(shè)定偏好集,而用戶只能為他們各自的語(yǔ)境而影響偏好集。
權(quán)利要求
1.在由內(nèi)連著一個(gè)服務(wù)器和多個(gè)用戶站的網(wǎng)絡(luò)構(gòu)成的網(wǎng)絡(luò)系統(tǒng)中,其中該服務(wù)器存儲(chǔ)多個(gè)用于下載到用戶站的用戶應(yīng)用,一種管理用于在用戶站上執(zhí)行的各應(yīng)用的用戶配置偏好集的方法,所述方法包括步驟在一個(gè)樹(shù)形層次中表示該系統(tǒng)的所有用戶,該樹(shù)形層次由包含所有系統(tǒng)用戶的一個(gè)AllUsers組節(jié)點(diǎn)和多個(gè)子組節(jié)點(diǎn)組成,每個(gè)子組節(jié)點(diǎn)包含一些屬于由該子組節(jié)點(diǎn)代表的組中的選定用戶,每個(gè)節(jié)點(diǎn)包含一些系統(tǒng)上可得到的選定應(yīng)用的配置偏好集;對(duì)每個(gè)是多個(gè)組的成員的用戶分配一個(gè)組優(yōu)先次序;對(duì)于任何請(qǐng)求執(zhí)行某選定應(yīng)用的給定用戶,確定該用戶的組優(yōu)先次序;以及通過(guò)以下步驟從該樹(shù)建立配置偏好集從組優(yōu)先級(jí)表確定可從其中為該選定應(yīng)用導(dǎo)出一組偏好的第一組;借助從AllUsers組節(jié)點(diǎn)到該第一組的在樹(shù)上移動(dòng),把各偏好匯合到用于該選定應(yīng)用的一個(gè)集合中;收集用于該選定應(yīng)用的每個(gè)節(jié)點(diǎn)處的各偏好;以及隨著越過(guò)每個(gè)節(jié)點(diǎn),用在該節(jié)點(diǎn)處為該選定應(yīng)用規(guī)定的各偏好,修改所收集到的偏好。
2.在由內(nèi)連著一個(gè)服務(wù)器和多個(gè)用戶站的網(wǎng)絡(luò)構(gòu)成的網(wǎng)絡(luò)系統(tǒng)中,其中該服務(wù)器存儲(chǔ)多個(gè)用于下載到用戶站的用戶應(yīng)用,一種管理用于在用戶站上執(zhí)行的各應(yīng)用的用戶配置偏好集的裝置,所述設(shè)備包括用于在一個(gè)樹(shù)形層次中表示該系統(tǒng)的所有用戶的裝置,該樹(shù)形層次由包含所有系統(tǒng)用戶的一個(gè)AllUsers組節(jié)點(diǎn)和多個(gè)子組節(jié)點(diǎn)組成,每個(gè)子組節(jié)點(diǎn)包含一些屬于由該子組節(jié)點(diǎn)代表的組中的選定用戶,每個(gè)節(jié)點(diǎn)包含一些系統(tǒng)上可得到的選定應(yīng)用的配置偏好集;用于對(duì)每個(gè)是多個(gè)組的成員的用戶分配一個(gè)組優(yōu)先次序的裝置;用于對(duì)任何請(qǐng)求執(zhí)行某選定應(yīng)用的給定用戶,確定該用戶的組優(yōu)先次序的裝置;以及用于通過(guò)以下步驟從該樹(shù)建立配置偏好集的裝置從組優(yōu)先級(jí)表確定可從其中為該選定應(yīng)用導(dǎo)出一組偏好的第一組;借助從AllUsers組節(jié)點(diǎn)到該第一組的在樹(shù)上移動(dòng),把各偏好匯合到用于該選定應(yīng)用的一個(gè)集合中;收集用于該選定應(yīng)用的每個(gè)節(jié)點(diǎn)處的各偏好;以及隨著越過(guò)每個(gè)節(jié)點(diǎn),用在該節(jié)點(diǎn)處為該選定應(yīng)用規(guī)定的各偏好,修改所收集到的偏好。
3.一種存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上的計(jì)算機(jī)程序產(chǎn)品,用于當(dāng)在計(jì)算機(jī)上運(yùn)行時(shí),在網(wǎng)絡(luò)系統(tǒng)中實(shí)現(xiàn)一種管理用于在用戶站上執(zhí)行的各應(yīng)用的用戶配置偏好的方法,所述網(wǎng)絡(luò)系統(tǒng)由內(nèi)連著一個(gè)服務(wù)器和多個(gè)用戶站的網(wǎng)絡(luò)構(gòu)成,其中該服務(wù)器存儲(chǔ)多個(gè)用于下載到用戶站的用戶應(yīng)用,所述方法包括步驟在一個(gè)樹(shù)形層次中表示該系統(tǒng)的所有用戶,該樹(shù)形層次由包含所有系統(tǒng)用戶的一個(gè)AllUsers組節(jié)點(diǎn)和多個(gè)子組節(jié)點(diǎn)組成,每個(gè)子組節(jié)點(diǎn)包含一些屬于由該子組節(jié)點(diǎn)代表的組中的選定用戶,每個(gè)節(jié)點(diǎn)包含一些系統(tǒng)上可得到的選定應(yīng)用的配置偏好集;對(duì)每個(gè)是多個(gè)組的成員的用戶分配一個(gè)組優(yōu)先次序;對(duì)于任何請(qǐng)求執(zhí)行某選定應(yīng)用的給定用戶,確定該用戶的組優(yōu)先次序;以及通過(guò)以下步驟從該樹(shù)建立配置偏好集;從組優(yōu)先級(jí)表確定可從其中為該選定應(yīng)用導(dǎo)出一組偏好的第一組;借助從AllUsers組節(jié)點(diǎn)到該第一組的在樹(shù)上移動(dòng),把各偏好匯合到用于該選定應(yīng)用的一個(gè)集合中,收集用于該選定應(yīng)用的每個(gè)節(jié)點(diǎn)處的各偏好;以及隨著越過(guò)每個(gè)節(jié)點(diǎn),用在該節(jié)點(diǎn)處為該選定應(yīng)用規(guī)定的各偏好,修改所收集到的偏好。
全文摘要
在帶有一個(gè)互連著一個(gè)服務(wù)器和多個(gè)用戶站的網(wǎng)絡(luò)的系統(tǒng)中,系統(tǒng)管理員按一個(gè)層次來(lái)建立系統(tǒng)的各用戶或各用戶組、各終端和各終端組的模型,并且分別為每個(gè)組和每個(gè)用戶設(shè)定桌面和用戶應(yīng)用偏好集。對(duì)于選定的組語(yǔ)境,比方說(shuō)該系統(tǒng)的所有用戶組或者代表所有用戶的組下面的某子組語(yǔ)境,為選定的用戶應(yīng)用而確定缺省偏好集。接著根據(jù)在該選定組下具體規(guī)定的各偏好,修改該缺省集。還可根據(jù)專屬于該用戶的一組偏好,再次修改這些偏好。
文檔編號(hào)H04L29/08GK1292965SQ9881401
公開(kāi)日2001年4月25日 申請(qǐng)日期1998年12月21日 優(yōu)先權(quán)日1998年5月5日
發(fā)明者小明特·菲爾莫爾·海斯 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司