CN1292965A - 用于在层次数据结构中保持应用偏好的客户/服务器系统 - Google Patents

用于在层次数据结构中保持应用偏好的客户/服务器系统 Download PDF

Info

Publication number
CN1292965A
CN1292965A CN988140160A CN98814016A CN1292965A CN 1292965 A CN1292965 A CN 1292965A CN 988140160 A CN988140160 A CN 988140160A CN 98814016 A CN98814016 A CN 98814016A CN 1292965 A CN1292965 A CN 1292965A
Authority
CN
China
Prior art keywords
group
user
preference
applet
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN988140160A
Other languages
English (en)
Other versions
CN1120606C (zh
Inventor
小明特·菲尔莫尔·海斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1292965A publication Critical patent/CN1292965A/zh
Application granted granted Critical
Publication of CN1120606C publication Critical patent/CN1120606C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Abstract

在带有一个互连着一个服务器和多个用户站的网络的系统中,系统管理员按一个层次来建立系统的各用户或各用户组、各终端和各终端组的模型,并且分别为每个组和每个用户设定桌面和用户应用偏好集。对于选定的组语境,比方说该系统的所有用户组或者代表所有用户的组下面的某子组语境,为选定的用户应用而确定缺省偏好集。接着根据在该选定组下具体规定的各偏好,修改该缺省集。还可根据专属于该用户的一组偏好,再次修改这些偏好。

Description

用于在层次数据结构中保持应用偏好的客户/服务器系统
本发明一般地涉及个人计算和连网领域。它尤其涉及网络计算的新发展的领域,在其中台式计算机用户利用同诸如公司内联网、因特网或者某网络或因特网服务提供商(ISP)连接的个人计算机(可能是无盘的),得到对各种以后在该台式计算机上执行的应用程序的访问。更准确地说,本发明涉及一种用于从服务器检索的并在台式计算机上执行的软件的软件偏好(配置数据)的基于服务器的存储。
网络计算机领域目前处于其初级阶段。然而,出于一些原因,预料它会迅速发展,尤其在公司环境下。该预料是当公司以及可能还有个人用户达到硬件和软件更新点时,进入该新领域会更有效和更省钱,而不是以传统方式用装有盘的计算机和在本地存储并管理软件应用进行更新。例如,在公司环境下,用户例如可利用TCP/IP和因特网的HTTP协议,与公司内联网连接,并根据他们的需要把软件应用直接从网络服务器下载到台式计算机。用户按传统方式在台式机上执行应用以完成有用的工作。这种配置的优点是与传统装着盘的计算机相比,网络计算机要便宜得多。比起为每个用户购买独立的软件拷贝,为用户群购买所需的软件许可证数量成本也为较低。无疑,大量公司用户参与的软件管理问题会明显减小。当前,有盘的计算机或工作站的每个用户通常自己充当系统管理员,由于缺少经验这常常消耗过分的资源。预计通过把该问题有效地转移到少量服务器管理专家身上而不是让许多用户竭力于软件安装、更新和计算机管理问题,从而消除该问题会是很有好处的。
如前面所述,未来个人计算的这种设想目前处于早期阶段。从而,现有系统目前存在许多问题和缺陷。
典型地,在网络计算机系统中,管理人员建立存储在网络服务器上的用户简档。简档可包含不同类型的信息,例如用户桌面的偏好和用户访问驻留在服务器的不同软件应用的许可。当用户登录系统时,用户向服务器标明自己,服务器找出该用户的简档并把简档发送到用户计算机以在那里配置计算机和生成桌面。该桌面可包括一些代表估计用户会访问的应用的图符。简档可能还包含计算机和桌面的其它属性,例如,桌面的背景色彩,或桌面上使用的字型和点的尺寸,或数据文件搜索路径,这些对于该用户是唯一的。简档可能是用户能修改的或不能修改的。
在用户可以修改自己的简档的环境下,在注销时修改的简档被上装到服务器,并存储在服务器中以供下次用户登录时检索。尽我们所知,在一些现有技术系统中,用户可在他们的桌面上生成他们希望的任何应用图符配置,不论这些应用是否在服务器上存在,也不论用户是否已得到访问服务器上某应用的许可。Lotus公司的WorkplaceDesktop(以前称为Kona Desktop)系统是这种类型的操作的一个例子。在其它系统中,服务器向用户展示其具有的所有应用的一个列表,用户可从中挑选。在该情况下,不能保证用户具有从桌面上的包含表中选取的某应用的访问许可。Sun公司的Hot Java View系统是这种类型的系统的一个例子。换言之,现有技术系统不在用户可对桌面应用图符组做出的配置和用户实际上获得访问许可的应用之间建立连系。在这样的情况下,当用户点击某图符以执行某应用时,若不存在访问许可,则可能出现出错消息(例如未批准访问消息),或者在更坏情况下用户的计算机可能发生故障。
现有技术的另一个限制是使用平面数据结构对用户、用户组、终端和终端组建立模型。按照常用的管理用户访问计算机资源的方式建好的所谓的网络计算机实现(例如Lotus公司的AdministrationFacility for Desktop、Microsoft公司的Windows NT Profiles andPolicies以及Sun公司的Hot Java Views),在服务器上实施一种平面“分组”结构,以管理不同语境下的软件偏好(或属性)。本文中使用的术语“语境”指的是单个用户、用户组、终端或终端组。用于管理服务器上的软件偏好的任何分组结构允许管理员为不同的用户组以及为各个用户定义偏好属性。然而在许多场合下,尤其在具有大量用户的场合下,平面系统是不灵活的。需要提供一种支持把偏好信息组织到层次结构中的管理工具。
现有系统的另一个限制是在管理员和用户必须进行工作站桌面的用户配置的方式上所受到的限制。例如,目前需要管理员利用与用户应用分离的但又相关的配置程序配置用户偏好。最好是允许厂家只提供单个应用。为了从厂家只得到最终用户应用,必须使中央管理设施能在一个用户或用户组的语境下执行最初用户应用。现有技术不允许管理操作的这样的灵活性。换言之,尽我们所知,在现有技术中,管理人员不具有在一个用户的语境下运行某用户应用以便为该用户以及该应用设定偏好的能力。此外,在技术上管理人员不能运行某用户应用以设定用户组语境下的偏好。
本发明小组所知的现有技术中的再一个限制是现有技术划分服务器永久存储空间,以保证用于存储和服务器上的各不同应用相关的用户偏好的唯一空间得到保留的方式。据发明人员所知,在面向对象的系统中(其中可以用完全合格的类名查询对象,该类名唯一标识该对象并使对象与其它类相区别),防止不同应用的偏好信息存储冲突问题是通过使第一中央主管分配一个应用于某厂家的唯一标志并通过使该厂家处的第二主管为该厂家的每个应用分配和第一标志相关的第二标志予以解决的。例如,可由第一主管向厂家A分配标志vendorA,并且确保在该第一主管生效的体系结构内该标志是唯一的。接着厂家A的第二主管为它的在该体系结构内的每个应用分配第二标志。例如,厂家A的一个应用可能标志成:vendorA.App1;而另一个应用标志成:vendorA.App2。该技术把系统中的每个应用的唯一标志变换到系统的永久存储中的某单元以保持在存储中不同应用的偏好数据不发生冲突。应用运行时向网络计算机服务器通知它的唯一存储单元,而该服务器负责根据语境(用户、用户组、终端或终端组)在该开始单元划分一个用于存储偏好信息的区域,从而不和不同语境下的偏好信息冲突。很明显,管理存储空间的这种方式是不方便的和不希望的。需要发明一种方法,以便在不要求中央主管出于防止偏好信息存储中的冲突的目的而分配唯一标志情况下以及不必把存储单元信息编码到应用情况下,自动地为存储上述面向对象的应用的偏好信息而生成各唯一存储单元。
技术中的另一个限制是不存在任何在不需要改变现有硬件和应用下把现有应用和硬件迁移到中央管理式网络计算新世界中的设备。现有硬件(以终端为例)在连网环境下于引导时从设置在服务器上的某专用格式的文件中得到其配置信息。终端被编程成知道如何去访问它的配置文件。终端利用一个唯一标识符从服务器访问该文件。该唯一标识符通常是终端的介质访问控制(MAC)地址。然而,在涉及到不同于为终端所设计的协议和API的新型中央管理环境下,终端不能访问该新环境下的偏好信息,终端只能按为其设计的方式访问它的配置文件。这是一个严重的问题,因为存在大量的正在使用的这样的已有设备。不能在新系统上使用它们,实质上阻碍鼓励用户迁移到新系统中。
现有技术中的再一个限制涉及到管理员和配置管理系统之间的接口。当管理设施内的配置软件为各种用户、用户组、终端及终端组而配置偏好信息时,就在运行该设施的管理人员所设定的语境(用户、用户组、终端或终端组)下发动管理软件。当该管理人员改变应用运行的语境时,需要重新发动应用以装入用于新语境的配置信息。每次改变语境都重新发动软件的处理是耗时的和对管理员是不方便的,尤其对于具有许多用户的系统更是如此。在这样的系统中,预计管理员在配置应用时会多次改变语境。
依据一个方面,本发明在网络系统中提供一种管理用于在用户站上运行的各应用的用户配置偏好的方法,所述网络系统由内连着一个服务器和多个用户站的网络构成,其中该服务器存储多个用于下载到用户站的用户应用,所述方法包括步骤:在一个树形层次中表示该系统的所有用户,该树形层次由包含所有系统用户的一个AllUsers组节点和多个子组节点组成,每个子组节点包含一些属于由该子组节点代表的组中的选定用户,每个节点包含用于一些系统上可得到的选定应用的配置偏好;对每个是多个组的成员的用户分配一个组优先次序;对于任何请求执行某选定应用的给定用户确定该用户的组优先次序;以及,通过从组优先级表确定从中可为选定应用导出一组偏好的第一组,通过从AllUsers组节点到该第一组在树上移动把各偏好汇合到用于该选定应用的一个集合中,通过收集用于该选定应用的每个节点处的各偏好,以及通过随着越过每个节点用该节点处为该选定应用规定的各偏好,修改所收集到的偏好,而从该树建立一组配置偏好。
依据第二方面,本发明在网络系统中提供一种管理用于在用户站上运行的各应用的用户配置偏好的设备,所述网络系统由内连着一个服务器和多个用户站的网络构成,其中该服务器存储多个用于下载到用户站的用户应用,所述设备包括:用于在一个树形层次中表示该系统的所有用户的装置,该树形层次由包含所有系统用户的一个AllUsers组节点和多个子组节点组成,每个子组节点包含一些属于由该子组节点代表的组的选定用户,每个节点包含用于一些系统上可得到的选定应用的配置偏好;用于对每个是多个组的成员的用户分配一个组优先次序的装置;用于对任何请求执行某选定应用的给定用户,确定该用户的组优先次序的装置;用于通过从组优先级表确定从中可为选定应用导出一组偏好的第一组,通过从AllUsers组节点到该第一组在树上移动把各偏好汇合到用于该选定应用的一个集合中,通过收集用于该选定应用的每个节点处的各偏好,以及通过随着越过每个节点用该节点处为该选定应用规定的各偏好修改所收集到的偏好,从而为该树建立一组偏置偏好的装置。
依据第三方面,本发明提供一种存储在计算机可读存储介质上的计算机程序产品,当在计算机上运行时其用于在网络系统中实现一种管理用于在用户站上运行的各应用的用户配置偏好的方法,所述网络系统由内连着一个服务器和多个用户站的网络构成,其中该服务器存储多个用于下载到用户站的用户应用,所述方法包括步骤:在一个树形层次中表示该系统的所有用户,该树形层次由包含所有系统用户的一个AllUsers组节点和多个子组节点组成,每个子组节点包含一些属于由该子组节点代表的组中的选定用户,每个节点包含用于一些系统上可得到的选定应用的配置偏好;对每个是多个组的成员的用户分配一个组优先次序;对于任何请求执行某选定应用的给定用户确定该用户的组优先次序;以及,通过从组优先级表确定从中可为选定应用导出一组偏好的第一组,通过从AllUsers组节点到该第一组在树上移动把各偏好汇合到用于该选定应用的一个集合中,通过收集用于该选定应用的每个节点处的各偏好,以及通过随着越过每个节点用该节点处为该选定应用规定的各偏好修改所收集到的偏好,而从该树建立一组配置偏好。
本文中所说明的系统为客户/服务器环境下的用户和小应用程序程序提供一个配置信息的公用储存库。这称之为客户简档管理。该系统允许用户漫游,即在任何时候从系统中的任何计算机登录并在运行时刻根据服务器处为该用户存储的偏好而自动进行配置。优选实施方式是基于Java(Java是Sun公司的一个商标)的系统并且客户计算机使用设置成执行Java应用的web浏览器接口。这样,在该优选实施方式下,假定用户小程序以及桌面小程序是Java小程序。但是,没有把本发明限制在Java环境的意图。用于本地存储的应用的偏好可按传统方式在本地存储,而用于基于服务器的小程序的偏好可按本说明的方式处理。
本发明允许系统管理员按一种层次对系统的用户或用户组、终端及终端组建模,并允许分别对每个组和各个用户设定桌面和用户应用偏好。对于选定的组语境,例如对于系统所有用户的组或者包含一些选定用户的某子组,为选定的用户小程序确定缺省偏好集。然后根据在该选定组下专用规定的偏好,修改该缺省集。接着再用该用户专用的偏好集,修改这些偏好。
在优选实施例中,在一个树形层次中表示该系统的所有用户,该树形层次由包含所有系统用户的一个AllUsers组节点和多个子组节点组成,每个子组节点包含属于由该子组节点代表的组中的一组选定的用户。每个节点还包含用于一些系统上可使用的选定应用的配置偏好。管理员对每个是多个组的成员的用户分配组优先次序。当用户执行某应用时,该应用从服务器请求它的各偏好。首先确定该用户的组优先次序。接着通过从组优先级表确定在其中可为选定的应用导出一组偏好的第一组并且然后把这些偏好汇合到选定的应用的偏好集合中,而从该树建立一组配置偏好。通过从AllUsers组节点到该第一组在树上移动,通过收集在该选定应用的每个节点规定的各偏好,以及随着越过每个节点通过在该节点处对选定应用规定的各偏好修改收集到的偏好集,使该汇合得以实现。
和非层次结构相比,本发明提供多得多的组织灵活性和管理能力。层次结构可更准确地描述大多数企业的结构。越宏大地对企业建模,按层次的组织的能力越重要。
图1示出一个示意网络和多个用户站,其中包括在其上可实施本发明的一个管理员站;
图2是一个示意方块图,示出和服务器通信的管理员站以及管理员站的和提供中央简档管理和偏好管理的服务器的构件;
图3示出系统的用户组以及用户的层次组织,该示意层次组织也可包括各个终端以及终端组;然而出于简明,它们被略去;
图4示出一个示意的各个用户以及组优先次序表,其用于从图3的层次组织确定一组可应用于某用户以及该用户执行的某具体应用的偏好;
图5更详细地描述图2的管理员站和服务器;
图6示意示出用户终端处的软件对象,其中包括某用户应用以及在该应用和其它构件间的API,在用户终端执行该应用期间它们合作以建立用户偏好;
图7至8示出用户终端和服务器处的操作,用于在用户终端处的用户登录以及初始建立包含着桌面偏好的用户桌面;
图9至11示出管理员终端和服务器的操作,用于管理员用户登录、建立管理员桌面以及示例的应用及配置语境的选择,该例子还示出配置用户桌面期间的语境改变以及所引起的操作;以及
图12至24示出应用管理的不同阶段的管理员实际屏幕的各种瞬态图,其中包括建立图3的层次以代表建立和删除用户等的一个例子、为各应用建立应用偏好以及在偏好建立期间的语境改变。
本文中所说明的系统为客户/服务器环境下的所有用户和小应用程序提供一个配置信息的公用储存库。这称之为客户简档管理。该系统允许用户漫游,即在任何时候从系统中的任何计算机登录并在运行时刻根据服务器处为该用户存储的偏好自动进行配置。优选实施方式是基于Java(Java是Sun公司的一个商标)的系统并且客户计算机使用一个被设置成执行Java应用的web浏览器接口。
术语“小应用程序”和“小服务程序”是Java编程语言技术中的既定术语并用于本文中,因为业内人士知道这些术语的含义。“小应用程序”指的是在Java使能的web浏览器内运行的独立软件模块。“小服务程序”指的是驻留在Java使能web服务器上的软件模块。应理解,在本文中使用术语“小应用程序”和“小服务程序”没有以任何方式限制本发明的意图。为了简明,本文中使用短语“配置小应用程序”表示用来为最终用户软件应用例如字处理程序、数据库管理程序等配置偏好的软件模块。由于Java环境中软件应用也是“小应用程序”,故本文中使用的短语“用户小应用程序”或仅仅“小应用程序”表示某最终用户应用。
在优选实施方式中,用户小应用程序和桌面小应用程序被假定为Java小应用程序。但是,应理解本发明不限于Java环境。本发明可用于任何客户/服务器系统。例如,若需要,则本系统可设计成使用专有通信协议的以及在任何需要的编程语言下书写并编译的应用。另外,即使在优选的基于Java的环境下,基于盘的计算机也可本地访问一些应用以及从服务器访问其它小应用程序。用于本地存储的应用的偏好可用传统方式在本地存储,同时按本文中说明的方式处理基于服务器的小应用程序的偏好。
简单的应用程序接口(API)允许对API写的小应用程序在由用户或管理员执行该小程序时方便地存储和检索偏好数据。可以根据组成员资格和个人身份定义小应用程序许可和用户偏好。
客户简档管理包括下述服务:
登录支持:映射到用户简档;
用户支持:建立用户标识并对用户直接提供服务和偏好的管理能力;
用户组支持:建立分级的用户组并且根据组成员资格提供服务和偏好的管理能力;
用户小应用程序语境透明性:自动确定用户小应用程序的执行语境,即,确定应用于用户小应用程序执行的用户和/或组简档并且自动建立简档环境;
用户小应用程序偏好储存库:对语境敏感的用于用户小应用程序配置数据的服务器存储;
动态用户小应用程序偏好继承:通过继承的面向对象的原则的用户小应用程序偏好的存入时间的分层汇合;以及
用户小应用程序访问控制:根据缺省组成员资格特权,控制用户小应用程序执行,管理员可以越过缺省组特权并可以为各个用户而许可或拒绝附加的访问特权。
简档管理提供一个通过其进行这些任务的框架。简档管理直接支持一些任务例如用户/组管理、小应用程序列表、语境切换、偏好继承等,而专用于各用户小应用程序的配置服务是由系统管理员在客户简档管理环境下调用的各独立配置小应用程序支持的。一些最初用户小应用程序可能提供作为最终用户小应用程序的一部分的配置能力。若为这种情况,则管理员可在单个用户和组的语境下执行该最终用户小应用程序(与执行独立的配置小应用程序不同)以便为这些用户和这些组设定配置偏好。
图1示出用于实现本发明的预期环境的高层图。设置网络以互连多个用户站如台式个人计算机102、移动式膝上计算机104、工作站106(例如RISC计算机)以及管理员站108和服务器110。在一种实施方式中,网络100可以是局域网。在另一种实施方式中,网络100可包括用于多个实体的广域连网,这些实体例如是具有地理上散布的多个点的但这些点仍包含在该系统内的公司。不对可实现本发明的环境做出限制;实际上,可想象互连着许多类型的站的任何类型的网络。
图2中示出简档管理的管理运行环境的高层图。在图的左侧表示管理员客户网络计算机200,而用于该系统的服务器位于右侧。通过用203表示的网络,客户机和服务器通信。图2的具体例子假定客户计算机是系统管理员的计算机。
客户机侧上的简档管理程序206允许管理员在用户级和小组级上配置用户小应用程序偏好。管理员可建立新的用户层和组层、把用户添加到不同的组中和为每个组以及为每个用户规定小应用程序许可。并且管理员可以在单个用户或一个组的语境下配置各小应用程序。管理员可以为用户添加、删除和重置口令。简档管理支持对于普通用户是透明的。管理员可以在用户或组的任一语境下调用简档管理程序206。只有管理员才能改变语境以管理各客户(用户)和各小组。服务器不会允许不具有管理授权的用户切换语境。当某请求进入服务器时,它会询问试图访问该功能的用户的确认ID。若该用户不拥有管理授权(即,不是AllUsers管理员小组的一个成员),则简档管理程序小服务程序214会拒绝该请求。
如图2中所示,简档管理程序206调用其它小应用程序,例如小应用程序1(208)。在该例中,小应用程序1可能是用于配置与用户桌面有关的偏好的管理小应用程序。即,小应用程序1可以是与最终用户小应用程序相关的配置公用程序,例如编辑程序、字处理程序、数据库等。最好但不必必须是,诸如208的配置小应用程序组以独立于它们对应的用户小应用程序的形式存在。在图2的语境下,小应用程序1典型地是一个用于某用户小应用程序的配置小应用程序;管理员在小组语境下运行该配置小应用程序以便设置组偏好和许可缺省,或在单个用户语境下为个人定制用户小应用程序配置。通过把小应用程序1实施成是一个独立于其用户小应用程序的模块,可提高性能,因为和该用户小应用程序相比,配置小应用程序1有可能是小的。此外,分立的配置小应用程序允许管理员具有控制最终用户的能力以配置用户小应用程序。
传统独立计算机本地地与用户小应用程序关联地存储用户小应用程序配置信息。传统的基于Java的独立计算机利用通过java.util.Properties类提供的格式,存储用户小应用程序配置信息。这二种方式都要求用户小应用程序规定在其中存储和该用户小应用程序相关的配置信息的本地文件的名字。换言之,需要在计算机和其上装入的用户小应用程序之间建立关系。本文中所说明的简档管理提供真正java.util.Properties对象的类似能力,并外加支持用户漫游能力以及对强大管理框架(简档管理程序)的无缝可插入性的附加功能。
ProfileManagementProperties P 210是一个用于小应用程序1的特性对象并提供小应用程序1和服务器之间的API,该API允许服务器确定在用户和小组的语境下在何处存储用于小应用程序1的配置信息。ProfileManagementProperties对象类提供java.util.properties类的所有功能,并且还对软件从永久存储提供建立、保存、检索配置信息的能力。在中央位置存储这样的信息使管理用户配置和小组配置成为可能。
当某用户担当管理员时,ProfileManagementProperties 210允许管理员配置和配置小应用程序1对应的用户小应用程序,或者当小应用程序1是最终用户小应用程序时配置小应用程序1,并把配置信息按适当语境存储在服务器上的适当位置上。这允许建立在用户小应用程序和用户之间的关系,而不是传统系统中的在用户小应用程序和计算机之间的关系。ProfileManagementProperties 210是java.util.Properties类的一种扩充。该扩充允许把特性对象的偏好信息的关键字/值对和一个关键字相关联,这和利用java.util.Properties与流关联不同。这进而允许应用开发者利用该关键字规定和用于偏好信息的语境相关的唯一单元,而不是规定文件名和路径。ProfileManagementProperties 210自动地确定该关键字。关键字的生成将连同图8和9作更多的说明。通过在java.util.Properties类后建立ProfileManagementProperties 210模型,系统可利用通过递归类-缺省评定的偏好继承。从而,这种扩充的类通过在如对图3讨论那样从当前语境开始沿缺省的语境层次移动积累偏好而提供“组缺省”能力。
服务器202包括数据库212,后者存储用户数据和组数据,例如用户偏好和组偏好以及用户小应用程序访问许可。Web服务器218代表典型的具有对Java小服务程序支持的web服务器。简档管理器小应用程序214把用户标识和组标识变换成偏好数据。它还保持一个访问控制表以管理用户对服务器上的应用的访问。
如图3中所示,按树形层次存储用户偏好和组偏好。系统的所有用户都自动地属于顶端组AllUsers。所有的用户都属于AllUsers组;该组包含用于服务器上的一些或所有用户小应用程序的缺省偏好。在图3中,假定服务器至少包含三个用户小应用程序,用App3、App4、App5标记。如在AllUsers组中所指示,App3的缺省背景(BG)为BG=兰色。其它用x、y、z标记的示意偏好被示成分别具有缺省值1、2和3。术语x,y,z用于代表任何希望的偏好,而值1、2、3是任意的并仅仅用来示意这一点。x偏好例如可能是桌面的屏幕字形;值x=1可能为要求正体字的缺省字形。类似地,对所有用户App4的缺省偏好为BG=灰色、x=2、y=2和z=2。
可以以任何希望的方式为其它语境,例如分别的用户组和为别的单个用户,修改AllUsers组中的缺省值。例如,除了图3中的AllUsers语境外,还示出四个别的组(GroupX,GroupY GroupY1和GroupY2)。此外,示出二个个别用户User1和UserN。用户可以是多于一个组的成员。在图3中,User1是AllUsers、GroupX和GroupY1的成员;UserN是AllUsers和GroupY2的成员。若用户是多于一个组的成员(AllUsers之外的另一个组的成员),则出于为该用户选择某给定小应用程序的偏好的目的对这些组排优先级。管理员为用户配置组的优先级。在图4中示出组的优先级。在图4中,User1以GroupX(用完整限定名AllUsers.GroupX标识)为其最高优先级组。User1的次高优先级组是Group Y1(AllUsers.GroupY.Group Y1)。User1的最低优先级组是AllUsers组。当某用户假如User1请求运行某小应用程序例如App3时,根据该用户属于的组或多个组从图3的树汇合偏好,并相应地在用户桌面上配置该用户小应用程序。
为任何语境汇合偏好的第一步是得到各缺省。如果存在,则一个用户的缺省集是来自可为该小应用程序得到偏好信息的最高优先级组的汇合后的偏好集。如果存在,则一个组的缺省集是来自组的父母(即,AllUsers组是AllUsers.GroupX的父母)的该小应用程序的偏好汇合集。若一个组无父母(即,顶层AllUsers组),则该组不存在缺省。为了在某语境下为某小应用程序汇合偏好,在该语境为该小应用程序显式存储的各偏好,盖写该小应用程序在该语境下的缺省偏好集。从而,为了在组的语境下为某小应用程序把各偏好汇合到缺省集中,从各个组节点向上最后到达AllUsers组进行递归式调用以请求该小应用程序的各级父女偏好集。请参照图3以举出下例。例如,若语境是AllUsers.GroupY.GroupY1,则调用GroupY1的父母即GroupY以请求其对该小应用程序的缺省偏好集。GroupY1对它的父母AllUsers作出递归调用。AllUsers不具有父母,从而AllUsers对来自GroupY的调用回送它的用于该小应用程序的偏好集。用GroupY处存储的用于该小应用程序的各偏好(若存在)修改该偏好集。这现在是该小应用程序在GroupY1的语境下的缺省偏好集。作为从GroupY1到GroupY的递归调用的结果向GroupY1回送该缺省偏好集,并用GroupY1处用于该小应用程序的各偏好(若存在)予以修改,以得到该情况下使用的实际偏好集。除了利用可从其得到该用户的偏好信息的最高优先级组以首先确立可从其得到缺省集的组的语境外,还以相同的方式为用户建立该语境的偏好集。然后利用上面说明的递归过程为用户和该用户请求的该小应用程序建立实际的偏好集。
下面的例子说明上面的偏好汇合并应连带图3一并阅读。
例1:管理员运行用于App3的配置小应用程序以便为组AllUsers.GroupX设定偏好。
为了对App3设定AllUsers.GroupX语境下的偏好集,必须确定现行偏好集。AllUsers.GroupX向它父母AllUsers请求缺省集。因为AllUsers为顶层组,故它向GroupX返回它的用于App3的各偏好。它们是GroupX语境下App3的缺省偏好集。由于GroupX不具有用于App3的偏好,故来自AllUsers的缺省集是被使用的实际偏好集。在该例中,这些来自AllUsers组的偏好是:BG=Blue(兰色),x=1,y=2,z=3。现在管理员可利用该配置小应用程序以任何希望的方式修改汇合后的偏好集。
例2:User1请求执行com.ibm.App3。必须为com.ibm.App3汇合User1语境下的偏好。
图4示出,User1的最高优先级组是AllUsers.GroupX;首先为和App3有关的偏好信息检查该分支的组层次。从此处起,除了利用汇合后的偏好集配置用户工作站上的App3之外,本例基本上和上面的例1相同。User1的用于App3的各偏好是BG=Breen(绿色),x=1,y=2,z=3,这是因为存储在User1的语境下的用于App3的BG=Breen偏好盖写了从偏好树的AllUsers.GroupX分支得到的缺省BG=Blue偏好。
例3:在User1的语境下为com.ibm.App6汇合偏好。
该例示出最高优先级组不包含用于User1的语境的汇合偏好的情况。此外,User1的最高优先级组是GroupX。该组以及它的父母AllUsers不包含用于App6的偏好。从而,搜索次高优先级组。User1的次高优先级组是GroupY1。从该组可以为App6得到一组偏好。如例1中所说明那样着手偏好的汇合。从GroupY1沿着树向上直到根AllUsers组进行递归调用,并向下对递归调用回送偏好集,并沿该方向进行修改以形成缺省集。然后用GroupY1中存储的各偏好修改该缺省集以形成应用于该语境的汇合偏好集。简言之,AllUsers回送空的偏好集,因为它不具有用于App6的偏好。GroupY用值a=1和b=2修改该空集并按缺省集向GroupY1回送该集。GroupY1用a=33修改该缺省集。该集回送到User1语境,以用作其缺省集。由于在User1语境处不存储用于App6的偏好,故从偏好树的GroupY1得到的缺省集代表用于App6的完整的偏好汇合集。这样用于该语境的实际偏好集变为a=33,b=2。
上面的3个例子说明对某特定软件段响应load()收集偏好。当为某段软件保留偏好信息时,任何已保存的显式地在该语境写入的偏好将写到数据存储(212)中,该写入的单元是由该软件目前运行的语境和正存储其偏好的软件的关键字的组合规定的。
类似地进行许可:一个新组访问该组自身允许的所有的小应用程序名并且访问其子组允许的所有小应用程序。然而,正如Java允许程序员越过越类(Superclass)方法,简档管理允许系统管理员具有超过某继承的许可的能力。这称为越过某许可。
如同Java的继承形式一样,简档管理的偏好和许可继承的形式称为单继承。单继承意味着每个简档管理组只可具有一个超组(尽管任何给定超组可具有多个子组)。
简档管理用户(叶节点)可能需要多个组中的成员资格,从而需要一种功能来限制对单层次组的偏好继承,以便使因交叉组分支汇合所引入的不兼容可变子集造成的不可靠配置的可能为最小。通过允许用户的组成员资格被优先,简档管理在查找和某特定小应用程序相关的各偏好时可遵循一个搜索次序。换言之,从具有最高优先级的组开始,该搜索将停止在第一个找到的含有用于该试图装入它的各偏好的小应用程序的配置数据的组上。
用户从组的成员资格继承软件许可。借助仔细地对企业建模,管理员可以一次一个用户地在无需通过屏面导航下向许多用户分配软件访问。简档管理通过对web服务器编程以允许/拒绝对小应用程序的访问来控制访问。web服务器执行访问控制。通过web服务器出于鉴别目的而要求用户ID和口令方可进入web服务器,也对简档管理程序小服务程序施加保护。按要求向用户提示口令是浏览器的标准功能。
图5更详细地示出图2的系统。简档管理框架内的管理员调用配置小应用程序Applet1。为了紧密地结合到简档管理框架中,Applet1可备有用于询问其操作环境信息(例如,询问语境,询问语境改变事件、询问该语境的访问控制表等)的应用程序接口(API)515,但这不是对配置小应用程序的一个要求。在任何场合下,Applet1的设计者除了用于得到进入和离开java.util.Properties对象的偏好信息的java.wtil.properties对象的基本方法外,只需要理解基本API方法:enablepersistence()、load()和save()。此外API515还包括list()和get Context()方法。Applet1只需要与ProfileManagementPrProperties对象一起注册和适当地调用这些方法。可调用load()方法以检索正在由管理员选取的单用户或小组的语境下被配置的用户小应用程序的偏好集的当前状态。然后管理员可按需要修改偏好并利用小应用程序提供的配置保持功能(该小应用程序使用它的ProfileManagementProperties对象的save()方法)存储它们。类似地,若Applet1需要准予用户访问的用户小应用程序列表,则可利用list()方法从服务器得到该表。小应用程序可以利用getContext()方法以显示它当前运行的语境名或者确保它只在某语境下运行(即,若某小应用程序希望利用导出代理而在服务器上配置某服务,则它可能只允许自己运行在AllUsers语境下,因为正被导出的配置是服务器专用的而不是用户专用的)。对于在简档管理框架下运行的Applet1所需要的只是,与profileManagementProperties410一起注册并且实现ProfileManagementProperties类(java.util.properties类的扩充)。
简档管理程序506还备有用于各配置小应用程序的语境改变API516。Applet1可带有一个语境改变事件监听程序512。API 516和事件监听程序512允许管理员在运行配置小应用程序的同时改变语境(用户或小组),而不必停止和复位配置小应用程序。例如,当配置小应用程序用户偏好集时,管理员在配置期间可能多次改变语境。若配置小应用程序以对这些事件的监听程序注册,则简档管理程序506会通过API516向它通知语境改变。这允许Applet1为每个新语境从服务器更新它的偏好集。不具有事件监听程序API时,管理员必须终止Applet1并在选择了新语境以查阅用于新语境的现有偏好信息并避免由简档管理小应用程序停止和再启动以后,重新启动。为了注册,Appletl调用其特性对象ProfileManagementProperties 510上的一种方法即addContextChangeListener(API516)进行注册。当管理员设置新语境时,简档管理程序506进行对对象510的设置语境调用(API516),该调用随之调用事件监听程序512上的再装入方法(API516)。事件监听程序512接着对其特性对象510进行装入特性调用以便从服务器为该新语境得到新偏好数据,并且使Applet1更新其GUI和内部变量组以反映该新偏好信息。
上述功能避免这样的可能性:网络管理员从一种语境读数据、改变语境并在该新语境下做出配置改变之前企图load()时附带地用save()盖写。
未被作为监听程序注册的小应用程序在管理员强行语境改变时被简档管理小应用程序停止、破坏、重装入和再启动。
简档管理还提供“特性导出”服务以允许方便地把现有硬件和软件翻新到该简档管理环境。该特性导出服务允许简档管理程序514支持用户工作站(物理硬件)以及用户、组和用户应用。由于现有工作站不知道ProfileManagementProperties 510,故该导出服务允许工作站厂家建立工作站配置小应用程序,当厂家小应用程序保存其偏好信息时,这种工作站配置小应用程序规定服务器上的要调用的导出代理520。该导出标记造成建立一个厂家提供的类的实例(导出代理520对象)和调用该对象上的导出方法,以便规定在由被配置的工作站所要求的任何特性文件格式和/文件单元(组)下保存的工作站配置信息。
假定Applet1是某厂家为某种不和本简档管理系统兼容的现有终端提供的配置小应用程序。该厂家还提供导出代理520。通过运行简档管理程序506,管理员就可配置该终端以在本系统中运行、对被配置的该终端设置语境、运行厂家提供的配置Applet1并配置该小应用程序。当管理员保存该配置时,发送到服务器的信息中的一部分是标识该被配置终端的唯一标识符。典型地,它是该终端的介质访问控制(MAC)地址。简档管理器小服务程序514检查某导出代理规定成保存。简档管理程序小服务程序514从一个被保存的说明需要该导出代理的偏好,对此进行检查。该偏好用下述关键字值对:
XXXXEXPORT_AGENTXXXX={导出代理的全限定类名}的形式规定导出标记。
简档管理器小服务程序514调用导出代理的export(Contextcontext,config properties)方法以在服务器上从保存的偏好信息建立一个或多个文件。该专用的文件或多个文件是由包含在来自于Applet1的特性信息内的终端的唯一标识符标识的。当以后引导该终端时,该终端利用它的唯一标识符以和简档管理系统无关的总是那样做的方法,从服务器上的文件组522定位和检索它的配置信息。
图6示出在客户计算机上运行的小应用程序2。小应用程序2可能是一个最终用户小应用程序,例如字处理程序。在任何事件下,小应用程序2在需要时可访问如在图5的515处示出的API方法中的一些相同的方法。小应用程序2利用装入方法检索偏好集,并利用保存方法保持可能由最终用户改变的任何偏好。使能持久方法用和该用户相等的语境初始化用于小应用程序2的简档管理特性对象,并生成用于标识服务器上的偏好信息存储单元的唯一关键字,如上面对管理员作出的说明那样。
图7示出用户发出其桌面的情况。客户机(700)上的用户对其浏览器指点服务器上的桌面小应用程序的URL并在步骤704发送报文http://Server/Desktop.html。由于Desktop.html是服务器保护的文件,故在706向客户机上的web浏览器回送一个盘问。通过向用户提问用户ID和口令,客户机上的web浏览器作出响应。接着在708客户机向服务器发送用户ID和口令信息。在图7的708处以黑体字示出用户ID和口令以表示该信息是由web浏览器自己传送的。本文其它处也利用命名法则以示意相同的含义。由于推测该用户具有运行桌面小应用程序的许可,故该请求会被承兑。
在从服务器向客户机装入桌面小应用程序的代码时,在客户机和服务器之间存在一系列交互(未示出)。在712建立桌面对象并且开始执行。该桌面对象需要它的偏好信息(即,配置信息)从而可为调用它的最终用户裁剪桌面。为此,作为桌面对象的初始化处理的一部分,在714处该桌面建立一个“简档管理特性(profileManagementProperties)”对象P,该对象用于从服务器装入、得到、高速缓存、设定和保存该桌面小应用程序的用户偏好信息的一份拷贝。该桌面对象接着在716进行API调用P.enablePersistence(desktopObject(applet))(P.使能永久(桌面对象(小应用程序)),该调用在716的步骤1)用简档管理器小服务程序214的URL初始化“简档管理特性”对象P。该URL是从先前从服务器装入的桌面小应用程序的URL推出的。“简档管理特性”对象P向简档管理器小服务程序214发送请求718以得到运行该桌面小应用程序的用户的语境。在该情况下,该语境由二部分组成,即语境名和语境类型,前者是该用户的ID而后者在本情况下是“用户”。简档管理器小应用程序得到来自请求718的用户ID并在719回送用户语境。在716的步骤2,“简档管理特性”对象P被用运行桌面的用户的语境初始化。在716的步骤3,“简档管理特性”对象P通过询问该Java桌面对象P的全限定类名而为该桌面软件生成一个唯一关键字。所有的Java对象都知道它们的类名。该唯一关键字和用户语境信息组合,以提供一个数据库212中的用于存储该桌面小应用程序的用户专用偏好信息的唯一单元。可以使用任何需要的方法来把由全限定类名和用户语境信息组成的串变换成数据存储单元。接着,向简档管理器小服务程序214发送请求720,以得到为该用户裁剪过的用于该桌面小应用程序的偏好信息。语境和关键字作为请求720的一部分传送,以标识被请求的偏好信息。在722,简档管理器小服务程序使用高速缓存在“简档管理特性”对象P604中的被请求的偏好信息,作出响应。
在图8中继续,在800桌面对象从它的“简档管理特性”对象P读它的偏好信息,并开始相应地更新桌面(即,它可能把屏幕色彩置成兰色、得到有关图符的位置的信息、等)。该桌面对象调用它的“简档管理特性”对象P上的某方法以得到用户具有访问许可的软件的列表。“简档管理特性”对象P在802请求该来自简档管理器小服务程序214的信息,在804该小服务程序用所请求的信息作为响应。对于每个这样的用户能访问的小应用程序,该信息包括用户便于使用的名、该小应用程序的URL、用于该小应用程序的图符的URL等(桌面所需的用于在桌面上表示、装入和发动该小应用程序的信息)以及其它和本发明无关的供选用的材料。该信息存储在“简档管理特性”对象P中,并回送到桌面对象。在806,该桌面对象利用该小应用程序信息去建立用于这些小应用程序的一个文件夹,并且生成一个为每个用户可访问的小应用程序显示各图符以及用户方便使用的名的窗口。
假定用户在先前的桌面运行中,用户拉出并去掉上面刚说明的文件夹中显示的某些软件的图符。有可能从此刻起该用户不再访问这些从文件夹拉出的并在该桌面去掉的小应用程序。然而,这些桌面对象通常是上一次运行期间保持下来的用户偏好的一部分,并且仍应在桌面上显示。为了避免这种情况,桌面从它的“简档管理特性”对象P检查它的偏好集以核查那些被配置成在窗口的外面出现的小应用程序,其中该窗口是为了显示用户可以访问的所有小应用程序而生成的。图8假定在所生成的小应用程序窗口的外面只存在一个小应用程序。若在小应用程序窗口的外面存在多于一个的这样的小应用程序,则要对每个这样的小应用程序循环下述过程。在步骤810桌面对照来自服务器的用户访问的小应用程序列表,核查每个在小应用程序窗口外出现的小应用程序。若该小应用程序出现在该表中,则在810把该小应用程序的图符放在桌面上与以前相同的位置上。若该用户不再访问该小应用程序,则在步骤814从桌面的偏好集中去掉该小应用程序并且从“简档管理特性”对象P中去掉。若作为该处理的一部分去掉任何小应用程序,则在步骤816桌面告诉“简档管理特性”对象P保存偏好集。“简档管理特性”对象P向简档管理器小服务程序214发送带着偏好、关键字和语境信息的请求818,以把新的偏好信息保存在数据库212中。服务器把响应820发送到“简档管理特性”对象P,把该请求已成功完成通知对象P。
图9示出管理员运行配置小应用程序以便为其它用户或用户组配置用于某小应用程序的偏好集的情况。请理解这里讨论的原则也广泛地应用于终端或终端组的配置。客户机900上的管理员对其web浏览器指点要运行的服务器上的简档管理器小应用程序214。在904向服务器发送该URL。由于ProfileManager.html是服务器保护的一个文件,就向该客户机上的web浏览器回送一个盘问906。通过向管理员提问用户ID和口令,web浏览器作出响应。在报文中包含用户ID和口令信息下,接着在908向服务器重复得到ProfileManager.html的请求。由于假定该管理员具有运行简档管理程序的权限,故该请求被承兑并在910向管理员终端下载简档管理器小应用程序。在从服务器向该客户机装入简档管理器小应用程序的代码时,在客户机和服务器之间存在一系列交互(未示出)。在步骤912建立简档管理程序对象并开始执行。
简档管理程序使用ProfileManagementProperties-nonContextFloating(“简档管理特性-无语境浮动”)代替常规的“简档管理特性”对象。它具有和“简档管理特性”对象相同的行为,但有一个例外:当装入和保存偏好集时,它们是对和从运行该简档管理程序的管理员的语境装入和保存的,而不是对和从管理员正在配置的语境(即,单用户或用户小组)装入和保存的。
简档管理程序对象需要它的偏好信息(即配置信息)从而它可为调用它的管理员裁剪简档管理程序。为此,作为简档管理程序的初始化处理的一部分,简档管理程序在步骤914建立一个“简档管理特性-无语境浮动”对象P_NCF,该对象用于为该简档管理器小应用程序从服务器装入、得到、高速缓存、设定和保存管理员的偏好信息的一份拷贝。接着该简档管理程序对象调用P_NCF.enablePersistence(profileManagerbject(applet))(P_NCF.使能永久(简档管理程序对象(小应用程序))),在916的步骤1该调用用简档管理器小服务程序214的URL来初始化“简档管理特性-无语境浮动”对象P_NCF。该URL是从简要管理器小应用程序的URL导出的。“简档管理特性-无语境浮动”对象P_NCF向简档管理器小服务程序214发送请求以得到管理员的语境名(ID)和语境类型(用户)。简档管理器小服务程序从该请求(918)得到管理员的ID。web浏览器在报文中和由“简档管理特性-无语境浮动”对象P_NCF发送的信息一起传送管理员ID和口令。在916的步骤2用运行该应用的管理器的语境来初始化“简档管理特性-无语境浮动”对象P_NCF。在916的步骤3,通过询问Java profileManagerObject对象(按使能永久调用中的一个参数传送)的全限定类名(即,profileManagerObject.get Class().get Name()),“简档管理特性-无语境浮动”对象P_NCF为该简档管理器小应用程序生成一个唯一关键字。和管理员的语境信息组合的该唯一关键字被变换,以便规定数据库212中的用于该简档管理器小应用程序的管理员专用偏好信息的唯一单元。
对简档管理器小应用程序214发送请求(922)以得到为管理员配置的简档管理器小应用程序剪裁的偏好信息。该请求(922)包括用于标识适当的偏好信息的适当语境名、类型和关键字信息。简档管理器小服务程序214用“简档管理特性-无语境浮动”对象P_NCF中高速缓存的所请求的偏好信息(924)应答。简档管理程序从“简档管理特性-无语境浮动”读出它的偏好信息并且相应地更新它(即,例如把它的背景颜色设定为兰色)。
操作在图10继续。在1002,简档管理程序从简档管理器小服务程序214请求有关现有的用户、用户组以及软件的信息,并在简档管理程序配置窗口的左屏面建立树。管理员的左屏面的例子请参见图13至24。在此刻1004,管理员通过在左屏面树上点击某用户或某组,选择希望用来配置的语境。通过调用P_NCF.set Context(被选语境),简档管理程序为各“简档管理特性”对象设定语境。见图13的为“用户组”的选定语境,其代表所有的系统用户的组,或者见图18的选取的“开发”的组语境,或者图21的选取的“colleend”用户语境。接着,在步骤1006,管理员从服务器上的所有小应用程序的列表中选择一个要配置的小应用程序。参见图17的选择某小应用程序的一个例子。在步骤1008,管理员接着点击“运行/定制”按钮以运行该选来配置的小应用程序。该小应用程序可能是独立于最终用户小应用程序的配置小应用程序,或者可能是最终用户小应用程序本身。在1009和1011从服务器请求和装入所选定的小应用程序。在步骤1010,建立并开始执行配置小应用程序对象以生成它的“简档管理特性”对象P。
如果假定该小应用程序是独立于最终用户小应用程序的配置小应用程序,则在步骤1012该小应用程序调用p.enablepersistence(configAppletObject,fullyQualifiedClassNameOfAppletBeingConfigured)(p.使能永久(配置小应用程序对象,被配置的小应用程序的全限定类名)。另一方面,若该小应用程序是用户小应用程序,而不是独立的配置小应用程序,则该调用会是p.enablePersistence(endUserAppletObject)(p.使能永久(最终用户小应用程序对象)),因为它希望配置它自己的偏好信息而不是用于别的小应用程序的偏好信息。“简档管理特性”对象P已经知道现行语境,因为后者已由管理员通过管理员的“简档管理特性-无语境浮动”对象PM_NCF事先设定。当在简档管理程序的“简档管理特性-无语境浮动”对象PM_NCF上调用enablePersistence时,先生成简档管理器小服务程序214的单元。在配置小应用程序的情况下,不需要生成该小应用程序的唯一关键字,因为它在enablePersistence调用时被该配置小应用程序传送给“简档管理特性”对象P。
在步骤1014,配置小应用程序把带有其“简档管理特性”对象P的自己注册为语境改变监听程序。如前面所讨论的那样,若管理员做出语境改变,则这允许小应用程序的“简档管理特性”对象通知该小应用程序,从而在无需终止该小应用程序和在该语境中重新发动下,该小应用程序可为新语境装入偏好信息并更新它的图形用户接口以反映新的配置信息。
操作在图11中继续。在步骤1104,该配置小应用程序告诉“简档管理特性”对象P为正被配置的小应用程序而从当前语境装入偏好集。向简档管理器小服务程序214发送请求1105以便为正被配置的小应用程序得到为管理员先前选择的语境的语境裁剪的偏好信息。该请求1105包括适当的语境名(管理员已选择的语境)、语境类型(用户、用户组或所有用户组中适当者)和关键字信息以规定适当偏好信息的单元。在1106简档管理器小服务程序214用所请求的偏好信息应答,该信息被高速缓存在“简档管理特性”对象P中。该配置小应用程序从“简档管理特性”对象P得到偏好集并相应地更新它的图形用户接口。
管理员在1107配置该小应用程序,并且例如通过点击该小应用程序提供的“保存”按钮,保存修改后的偏好集。作为该操作的结果,该配置小应用程序调用其“简档管理特性”对象P上的save()方法。“简档管理特性”对象P向简档管理器小服务程序214发送偏好集、正被配置的小应用程序的唯一关键字以及规定现行语境的信息。简档管理器小服务程序在数据库212中的由语境及关键字规定的单元上存储偏好信息。
步骤1108是该配置小应用程序仍在运行时管理员改变语境的一个例子。管理员通过点击某用户或某用户组选择新的语境(参见图18的管理员左屏幕屏面中新语境的各种例子)。作为语境改变的结果,简档管理程序506通过调用P_NCF.setContext(selectedNEWcontext)(P_NCF.设定语境(被选的新语境))向“简档管理特性”对象P(510)发送一个设定语境消息,这进而导致对象P通过重装入特性API515向事件监听程序512通知语境改变。在步骤1112,事件监听程序512进行load()(装入方法)调用以检索用于该新语境的偏好集,并在步骤1118用该新的偏好集更新对象P。现在管理员若需要就可着手修改用于该语境的新偏好集,并若需要就可保存它们,以及若需要就可如上面说明按新的语境改变继续进行。
剩余的图12至24示出在运行简档管理程序206的各部分时的管理员工作站的实际屏幕瞬态图。
在图12中示出主配置窗口1200。该窗口左侧上的树图屏面1202描述作为服务器上几种可使用的服务中的一种的简档管理1204。当如图12中所示选择该条目1204时,主窗口的右屏面1205显示对简档管理服务的欢迎信息。利用诸如1208的展开图符和收缩图符控制左屏幕中某条目下的各子条目的出现,若存在子条目的话。1208中的“十”称为“展开图符”,并表示在“简档管理”之下存在子条目。管理员通过点击展开图符1208可显示这些子条目,然后该展开图符变成“收缩图符”(“-”)。
图13示出图12的简档管理条目1208的展开,这造成在图13中显示三个缺省子条目-“小应用程序”1300、“用户组”1302和“用户”1304。展开图符表明这些条目还可展开。“小应用程序”1300允许管理员定义服务器202上可使用的用户小应用程序,“用户组”1302允许管理员建立并扩充图3的用户组树和设定组偏好集。“用户”1304允许管理员建立新用户和设定他们的偏好集或对现有用户改变偏好集。在图13的例子中,选择“小应用程序”1300。当选择该条目时,窗口右侧屏面1305显示一个系统已定义过的用户小应用程序的列表1306。在1308处示出1306中选定的应用的各属性。通过选择1306中的<新>,管理员定义一个新小应用程序并且输入1308中要求的名字和位置信息。如所示在1306中选择一个已有的小应用程序“数据库资源管理程序”。在1308,“小应用程序名”字段显示该小应用程序名。“URL”(统一资源定位符)字段显示服务器202上的该小应用程序的内联网或因特网web地址。字段“html文件的完整路径”显示服务器202的盘目录结构中的该小应用程序的目录路径及文件名。字段“全限定类名”显示该小应用程序的全限定类名。字段“图符URL”显示用来为用户桌面上的该小应用程序生成一个图符的图象文件的web地址。其余字段用于选用信息,在调用时软件可能需要选用信息。命令按钮1310,“从文件输入小应用程序表”,允许管理员把小应用程序的定义添加到来自某现有正文文件的现有表1306上。当点击按钮1310时,弹出图14中示出的窗口,该窗口允许管理员输入包含着要添加的小应用程序定义的正文文件的路径以及文件名。为了保存所有待决改变,管理员点击“文件”1312并接着“点击”保存(未示出)。
在左屏面中,“各用户组”条目1302对应于图3的AllUsers组(这里可互换的使用“各用户组”和“AllUsers”)。图15示出在选择“各用户组”条目1302时管理员站的右屏面。在图15中,示出右侧的笔记本屏面,它包含三个标记-成员标记1514、子组标记1516和小应用程序许可标记1518。在图15中选择成员标记。成员屏面包括一个已对系统定义的所有成员的登录标识表1520。为了建立一个新用户(他会自动地得到目前选定的组语境“用户组”中的成员资格),管理员从表1520选择<新>,向该表右边的各项目字段1522输入适当的信息,并接着点击“建立”按钮1522。当从表1520中选择某已有成员时,在1522显示先前为该用户存储的属性。这些属性包括该选定成员的全名、该成员的系统ID、口令以及任何需要的注解。除了ID之外的这些属性可通过点击“修改”按钮1524编辑和提出修改(但不被保存),或者通过点击“删除”按钮1526彻底地从该系统中去掉该用户。通过选择表1520中的该项目并点击“取消”按钮1528可去掉任何待决的改变。
图16示出当选择“子组”标记1516时所显示的管理员右屏面。子组表1620示出各个是在左屏面中选择的条目(本例中为“用户组”)的子组的组。从而,表1620显示“AllUsers”组的所有直接子组。在左屏面中,展开“各用户组”。表1620中示出的各子组也是左屏面中的“各用户组”之下的展开条目。在表1620中,状态字段示出各个子组的当前状态,例如“!删除”、“!修改”和“!建立”。表1620中的空状态字段表示该子组存在并且没有要保存的待决行动。符号“!”表示该状态是待决的(尚未保存)。在1622中出现表1620中被选子组的各属性。这些属性包括子组名和关于该子组的所需注解。为了建立一个新子组,管理员从表1620选择<新>,在1622中输入子组名和所需注解并点击“建立按钮”1628。接着在表1620中出现一个“!建立<子组名>”的条目,作为一个待决的行为。为了保持所有待决行为,管理员点击顶菜单栏中的“文件”按钮并接着点击“保存”按钮(未示出)。
图17示出当选择小应用程序许可标记1518时所显示的右屏面。表1720示出已对该系统定义的所有小应用程序的所有名,并且示出分配给左屏面中所选择的组或子组(当前“语境”)中的各个小应用程序的许可状态(允许或拒绝访问)。如别的笔记本页面所说明的那样,惊叹号表示所描绘的状态是一个有待保存的改变。在图17中,在左屏面中示出的树中选择组“各用户组”,它对应于图3中所示的“AllUsers”组。由于系统的所有用户都具有“各用户组”组中的资格,故表1720为该系统中定义的每个小应用程序示出所有系统用户的全局缺省许可。例如,对于“AllUsers”组,小应用程序“数据库资源管理程序”的缺省许可状态是“允许”(意味着准许访问);类似地,所有用户对小应用程序TFTP的缺省许可状态是“拒绝”(拒绝访问)。通过在表1720中选择某小应用程序并点击“准许组访问”按钮1730或者点击“拒绝组访问”按钮1732,管理员可改变该小应用程序的许可状态。此外,和选定语境下的小应用程序的许可状态无关,管理员可从1720选择某小应用程序并点击“运行/定制”按钮1734以便在该选定语境下执行该用户小应用程序。接着先前示出用于该当前语境的笔记本的屏面部分变成由正执行的该用户小应用程序所占据。若该用户小应用程序恰好是用于别的软件的配置小应用程序,则管理员可保持软件偏好集(通过该配置小应用程序对该操作提供的唯一功能),该偏好集将按该软件的用于该选定语境的缺省偏好集来保存。若该小应用程序是一个最终用户小应用程序,则这些操作是相同的,不同之处只是该最终用户小应用程序装入和保存它自己的而不是用于另一个软件的偏好集。
图18示出“各用户组”之下的管理员左屏面子组树的完全展开。直接在“各用户组”的下面,存在二个子组,即,一个不能去掉的缺省子集“管理员小组”和一个由管理员定义的子组“IBM”。“IBM”子集也已经被展开并包含三个子组“硬件”、“服务”和“软件”。“软件”子组已被展开并至少包括一个称为“开发”的子组。“开发”子组至少包括一个称为“NCoD”的子组。子组“NCoD”包括一些子组,例如一个不具有子女的“ConfigFW58”。而且在该例子中,在展开树上选择子组“开发”。由于“开发”不处于树形层次(“AllUsers”组)的顶部,右屏面中示出的簿式视窗和选择“各用户组”时的图15的右屏面有些不同,因为所有用户不自动地都是“开发”的成员,但他们都是“各用户组”的成员。表1820显示所有的系统成员的登录系统ID。表1820中每个用户ID旁边的状态示出该用户是否拥有“开发”子组中的成员资格。“是”表示该用户是“开发”子组的成员,“否”表示该用户不是“开发”子组的成员,而“继承的”表示该用户通过属于该树下方的“开发”的至少一个子组而继承“开发”组内的成员资格。通过选择表1820中的用户并接着点击“添加到组中”按钮1836或“从组中去掉”按钮1838,管理员修改该用户的在某子组内的成员资格状态。若管理员希望建立一个新的系统用户或者修改或删除某现有成员,则管理员点击“建立/修改/删除用户”按钮1840。该动作建立图19中示出的簿视窗页面。图19的右屏面和图15的右屏面类似,并允许管理员通过选择表1920中的“新”和点击“建立”按钮建立新的系统用户。类似地,通过选择表1920中的适当用户和点击适当按钮“修改”或“删除”,管理员可修改或删除现有的系统用户。在任何子组语境(例如,“开发”)下建立的用户不仅获得“各用户组”中所需的成员资格,还自动地是选定子组的成员。通过点击右屏面顶菜单栏中的“文件”并接着点击“保存”(未示出),保存系统用户表的改变。
图20示出一种直接,而不是通过图19中示出的组和子组路由,得到系统用户表以进行编辑的方式。为了得到图20,管理员例如选择图13的左屏面中的“用户”1304。然后在图20的右屏面中,管理员可以不在组或子组的语境下,如已讨论的那样,建立新用户和修改、删除已有用户。
在图21中,管理员希望直接在与其ID为“colleend”的用户对应的信息上工作。为此管理员例如展开图21的左屏面的“用户”并接着选择“colleend”,如所示。接着出现专用于colleend的系统信息的右屏面。该右屏面包括三个标记。第一标记“用户信息”是由缺省选择的。在该标记下,管理员可修改与colleend有关的名字、ID、口令和注解。
图22示出当管理员选择第二标记“组成员资格”时的右屏面。表2220示出colleend为其一员的所有子组。该表中示出的各子组是按对colleend的子组优先级次序的。通过选择某子组并根据需要利用表2220右方的向上或向下箭头而在表中向上或向下移动该选定的子组,管理员可改变colleend的子组优先级。若管理员点击图22中的“添加/去掉组成员资格”按钮2242,则右屏面示出图23的内容。图23的右屏面允许管理员修改colleend是其一员的各子组。通过点击与某所希望的子组对应的适当的框,管理员进行修改。若该框是空白的(意味colleend目前不是成员),则对该框添加选择标记以把colleend包含到该子组中。相反,若某子组框已被选择,则在框上点击清除该选择标记并从该子组去掉colleend。
图24示出当管理员选择图22的小应用程序许可标记时的右屏面。在该右屏面中,表2420显示系统中定义的所有小应用程序。管理员可通过选择表2420中的某小应用程序并接着点击“准许用户访问”按钮2430,允许colleend访问该小应用程序;或者可通过点击“拒绝用户访问”按钮2432,对colleend拒绝访问。通过点击“运行/定制”按钮2434,管理员还可在colleend的语境下发动某小应用程序。当这样做时,表2420中被选中的小应用程序被发射到右屏面。然后管理员可修改该小应用程序允许的任何偏好,并以该小应用程序提供的方式保存偏好集。这处的一种典型情况是管理员发动某配置小应用程序,接着填写各个偏好字段。然而,若不为某用户小应用程序提供独立配置,则管理员可在一个用户的语境下发动该用户小应用程序并从该用户小应用程序设定偏好集。此处的一种典型情况是管理员选择某组或某用户语境,接着如上面所述发动该用户小应用程序。接着管理员典型地从某选择菜单修改偏好集并按该用户提供的任何方式保存偏好集。例如,典型地,当关闭该选择对话时保存用户偏好值,或者该用户小应用程序可提供别的保存偏好集的方法。在任何情况下,由于本例中管理员在colleend的语境下运行该小应用程序,所以仿佛colleend通过运行小应用程序直接进入那样,在服务器上保持管理员通过用户小应用程序建立的偏好集。
这些图中未示出用户可修改某些和某用户小应用程序有关的偏好的情况。例如,用户小应用程序可能允许用户选择背景颜色或者字形及字形大小,从而当该用户小应用程序在用户桌面上执行时每个系统用户可在某种程度上个体化该小应用程序。在这种情况下,以管理员运行该用户小应用程序时的相同方式保存用户修改过的偏好。不过一种差异是,管理员可在组的语境下运行用户小应用程序以设定偏好集,而用户只能为他们各自的语境而影响偏好集。

Claims (3)

1.在由内连着一个服务器和多个用户站的网络构成的网络系统中,其中该服务器存储多个用于下载到用户站的用户应用,一种管理用于在用户站上执行的各应用的用户配置偏好集的方法,所述方法包括步骤:
在一个树形层次中表示该系统的所有用户,该树形层次由包含所有系统用户的一个AllUsers组节点和多个子组节点组成,每个子组节点包含一些属于由该子组节点代表的组中的选定用户,每个节点包含一些系统上可得到的选定应用的配置偏好集;
对每个是多个组的成员的用户分配一个组优先次序;
对于任何请求执行某选定应用的给定用户,确定该用户的组优先次序;以及
通过以下步骤从该树建立配置偏好集:
从组优先级表确定可从其中为该选定应用导出一组偏好的第一组;
借助从AllUsers组节点到该第一组的在树上移动,把各偏好汇合到用于该选定应用的一个集合中;
收集用于该选定应用的每个节点处的各偏好;以及
随着越过每个节点,用在该节点处为该选定应用规定的各偏好,修改所收集到的偏好。
2.在由内连着一个服务器和多个用户站的网络构成的网络系统中,其中该服务器存储多个用于下载到用户站的用户应用,一种管理用于在用户站上执行的各应用的用户配置偏好集的装置,所述设备包括:
用于在一个树形层次中表示该系统的所有用户的装置,该树形层次由包含所有系统用户的一个AllUsers组节点和多个子组节点组成,每个子组节点包含一些属于由该子组节点代表的组中的选定用户,每个节点包含一些系统上可得到的选定应用的配置偏好集;
用于对每个是多个组的成员的用户分配一个组优先次序的装置;
用于对任何请求执行某选定应用的给定用户,确定该用户的组优先次序的装置;以及
用于通过以下步骤从该树建立配置偏好集的装置:
从组优先级表确定可从其中为该选定应用导出一组偏好的第一组;
借助从AllUsers组节点到该第一组的在树上移动,把各偏好汇合到用于该选定应用的一个集合中;
收集用于该选定应用的每个节点处的各偏好;以及
随着越过每个节点,用在该节点处为该选定应用规定的各偏好,修改所收集到的偏好。
3.一种存储在计算机可读存储介质上的计算机程序产品,用于当在计算机上运行时,在网络系统中实现一种管理用于在用户站上执行的各应用的用户配置偏好的方法,所述网络系统由内连着一个服务器和多个用户站的网络构成,其中该服务器存储多个用于下载到用户站的用户应用,所述方法包括步骤:
在一个树形层次中表示该系统的所有用户,该树形层次由包含所有系统用户的一个AllUsers组节点和多个子组节点组成,每个子组节点包含一些属于由该子组节点代表的组中的选定用户,每个节点包含一些系统上可得到的选定应用的配置偏好集;
对每个是多个组的成员的用户分配一个组优先次序;
对于任何请求执行某选定应用的给定用户,确定该用户的组优先次序;以及
通过以下步骤从该树建立配置偏好集;
从组优先级表确定可从其中为该选定应用导出一组偏好的第一组;
借助从AllUsers组节点到该第一组的在树上移动,把各偏好汇合到用于该选定应用的一个集合中,
收集用于该选定应用的每个节点处的各偏好;以及
随着越过每个节点,用在该节点处为该选定应用规定的各偏好,修改所收集到的偏好。
CN98814016A 1998-05-05 1998-12-21 用于在层次数据结构中保持应用偏好的客户/服务器系统 Expired - Lifetime CN1120606C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/073,162 1998-05-05
US09/073,162 US6105063A (en) 1998-05-05 1998-05-05 Client-server system for maintaining application preferences in a hierarchical data structure according to user and user group or terminal and terminal group contexts

Publications (2)

Publication Number Publication Date
CN1292965A true CN1292965A (zh) 2001-04-25
CN1120606C CN1120606C (zh) 2003-09-03

Family

ID=22112093

Family Applications (1)

Application Number Title Priority Date Filing Date
CN98814016A Expired - Lifetime CN1120606C (zh) 1998-05-05 1998-12-21 用于在层次数据结构中保持应用偏好的客户/服务器系统

Country Status (10)

Country Link
US (1) US6105063A (zh)
EP (1) EP1076973B1 (zh)
JP (1) JP3670965B2 (zh)
CN (1) CN1120606C (zh)
CA (1) CA2324396C (zh)
DE (1) DE69828202T2 (zh)
IL (1) IL138133A (zh)
PL (1) PL343688A1 (zh)
TW (1) TW444181B (zh)
WO (1) WO1999057862A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1297890C (zh) * 2002-12-17 2007-01-31 国际商业机器公司 集中管理自含式桌面的系统和方法
CN100405397C (zh) * 2002-12-31 2008-07-23 国际商业机器公司 在联合环境执行注册中介和重定优先级操作的方法和系统
CN100407291C (zh) * 2002-04-05 2008-07-30 英特尔公司 根据用于语音识别的呼叫语境动态地和自适应地选择词汇和声学模型
CN108809680A (zh) * 2017-05-04 2018-11-13 腾讯科技(深圳)有限公司 一种设备管理的方法及设备

Families Citing this family (227)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6324685B1 (en) 1998-03-18 2001-11-27 Becomm Corporation Applet server that provides applets in various forms
US6339826B2 (en) * 1998-05-05 2002-01-15 International Business Machines Corp. Client-server system for maintaining a user desktop consistent with server application user access permissions
US6493749B2 (en) 1998-08-17 2002-12-10 International Business Machines Corporation System and method for an administration server
US6567849B2 (en) * 1998-08-17 2003-05-20 International Business Machines Corporation System and method for configuring and administering multiple instances of web servers
US20020126135A1 (en) * 1998-10-19 2002-09-12 Keith Ball Image sharing for instant messaging
US7339595B2 (en) 1998-10-19 2008-03-04 Lightsurf Technologies, Inc. Method and system for improved internet color
US7043529B1 (en) * 1999-04-23 2006-05-09 The United States Of America As Represented By The Secretary Of The Navy Collaborative development network for widely dispersed users and methods therefor
US6324578B1 (en) 1998-12-14 2001-11-27 International Business Machines Corporation Methods, systems and computer program products for management of configurable application programs on a network
US6510466B1 (en) * 1998-12-14 2003-01-21 International Business Machines Corporation Methods, systems and computer program products for centralized management of application programs on a network
US8181113B2 (en) 1998-12-18 2012-05-15 Microsoft Corporation Mediating conflicts in computer users context data
US7046263B1 (en) 1998-12-18 2006-05-16 Tangis Corporation Requesting computer user's context data
US7225229B1 (en) 1998-12-18 2007-05-29 Tangis Corporation Automated pushing of computer user's context data to clients
US9183306B2 (en) 1998-12-18 2015-11-10 Microsoft Technology Licensing, Llc Automated selection of appropriate information based on a computer user's context
US7779015B2 (en) 1998-12-18 2010-08-17 Microsoft Corporation Logging and analyzing context attributes
US8225214B2 (en) 1998-12-18 2012-07-17 Microsoft Corporation Supplying enhanced computer user's context data
US6842877B2 (en) 1998-12-18 2005-01-11 Tangis Corporation Contextual responses based on automated learning techniques
US6791580B1 (en) 1998-12-18 2004-09-14 Tangis Corporation Supplying notifications related to supply and consumption of user context data
US6920616B1 (en) 1998-12-18 2005-07-19 Tangis Corporation Interface for exchanging context data
US7231439B1 (en) 2000-04-02 2007-06-12 Tangis Corporation Dynamically swapping modules for determining a computer user's context
US6513046B1 (en) 1999-12-15 2003-01-28 Tangis Corporation Storing and recalling information to augment human memories
US6801223B1 (en) 1998-12-18 2004-10-05 Tangis Corporation Managing interactions between computer users' context models
US6993580B2 (en) * 1999-01-25 2006-01-31 Airclic Inc. Method and system for sharing end user information on network
US20020030096A1 (en) * 1999-01-25 2002-03-14 David Isherwood Method and system for directing end user to selected network location of provider based on user-provided codes
US6654814B1 (en) * 1999-01-26 2003-11-25 International Business Machines Corporation Systems, methods and computer program products for dynamic placement of web content tailoring
US7660868B1 (en) 1999-04-26 2010-02-09 John Albert Kembel Apparatus and method for interacting with internet content via one or more applications that do not include native web browsing navigation control features
US20020174329A1 (en) * 1999-04-28 2002-11-21 Bowler Richard A. Method and system for automatically transitioning files among computer systems
US20020023057A1 (en) * 1999-06-01 2002-02-21 Goodwin Johnathan David Web-enabled value bearing item printing
US7149726B1 (en) 1999-06-01 2006-12-12 Stamps.Com Online value bearing item printing
US6516336B1 (en) * 1999-09-08 2003-02-04 International Business Machines Corporation Method and system for using a two-tiered cache
US6687745B1 (en) 1999-09-14 2004-02-03 Droplet, Inc System and method for delivering a graphical user interface of remote applications over a thin bandwidth connection
US7236956B1 (en) 1999-10-18 2007-06-26 Stamps.Com Role assignments in a cryptographic module for secure processing of value-bearing items
US7240037B1 (en) 1999-10-18 2007-07-03 Stamps.Com Method and apparatus for digitally signing an advertisement area next to a value-bearing item
US7233929B1 (en) * 1999-10-18 2007-06-19 Stamps.Com Postal system intranet and commerce processing for on-line value bearing system
EP1224630A1 (en) 1999-10-18 2002-07-24 Stamps.Com Method and apparatus for on-line value-bearing item system
WO2001029776A1 (en) 1999-10-18 2001-04-26 Stamps.Com Cryptographic module for secure processing of value-bearing items
US7216110B1 (en) 1999-10-18 2007-05-08 Stamps.Com Cryptographic module for secure processing of value-bearing items
US6978381B1 (en) * 1999-10-26 2005-12-20 International Business Machines Corporation Enhancement to a system for automated generation of file access control system commands
NO314329B1 (no) * 1999-12-06 2003-03-03 Ericsson Telefon Ab L M Arrangement ved telekommunikasjon og fremgangsmåte for samme
EP1107108A1 (en) * 1999-12-09 2001-06-13 Hewlett-Packard Company, A Delaware Corporation System and method for managing the configuration of hierarchically networked data processing devices
US6697865B1 (en) * 2000-01-04 2004-02-24 E.Piphany, Inc. Managing relationships of parties interacting on a network
US7035825B1 (en) * 2000-01-04 2006-04-25 E.Piphany, Inc. Managing relationships of parties interacting on a network
US7933968B1 (en) * 2000-06-20 2011-04-26 Koninklijke Philips Electronics N.V. Token-based personalization of smart appliances
US6816944B2 (en) 2000-02-02 2004-11-09 Innopath Software Apparatus and methods for providing coordinated and personalized application and data management for resource-limited mobile devices
US6738766B2 (en) 2000-02-02 2004-05-18 Doongo Technologies, Inc. Apparatus and methods for providing personalized application search results for wireless devices based on user profiles
US6370646B1 (en) 2000-02-16 2002-04-09 Miramar Systems Method and apparatus for multiplatform migration
AU2001247986A1 (en) * 2000-02-16 2001-08-27 Stamps.Com Secure on-line ticketing
WO2001075676A2 (en) 2000-04-02 2001-10-11 Tangis Corporation Soliciting information based on a computer user's context
US7464153B1 (en) 2000-04-02 2008-12-09 Microsoft Corporation Generating and supplying user context data
US6751794B1 (en) 2000-05-25 2004-06-15 Everdream Corporation Intelligent patch checker
US7251775B1 (en) * 2000-06-30 2007-07-31 Nokia Corporation System and method for visual history presentation and management
US7526762B1 (en) * 2000-06-30 2009-04-28 Nokia Corporation Network with mobile terminals as browsers having wireless access to the internet and method for using same
AU2001287105A1 (en) * 2000-09-06 2002-03-22 Portalvision, Inc. Method and apparatus for an information application programming interface
WO2002029603A1 (en) * 2000-09-30 2002-04-11 Intel Corporation Method, apparatus, and system for determining information representations and modalities based on user preferences and resource consumption
KR100516331B1 (ko) * 2000-10-09 2005-09-21 김화윤 인터넷 기반의 원격 제어 시스템 및 방법
US20020054130A1 (en) 2000-10-16 2002-05-09 Abbott Kenneth H. Dynamically displaying current status of tasks
US8875116B2 (en) * 2000-11-17 2014-10-28 Hewlett-Packard Development Company, L.P. Network for updating firmware and / or software in wireless communication devices
US7401320B2 (en) * 2000-11-17 2008-07-15 Hewlett-Packard Development Company, L.P. Operator network that routes customer care calls based on subscriber/device profile and CSR skill set
US20030182414A1 (en) * 2003-05-13 2003-09-25 O'neill Patrick J. System and method for updating and distributing information
US7082549B2 (en) * 2000-11-17 2006-07-25 Bitfone Corporation Method for fault tolerant updating of an electronic device
CA2414281C (en) * 2000-11-17 2009-06-02 Bitfone Corporation System and method for updating and distributing information
US7409685B2 (en) * 2002-04-12 2008-08-05 Hewlett-Packard Development Company, L.P. Initialization and update of software and/or firmware in electronic devices
US6832373B2 (en) * 2000-11-17 2004-12-14 Bitfone Corporation System and method for updating and distributing information
US8479189B2 (en) 2000-11-17 2013-07-02 Hewlett-Packard Development Company, L.P. Pattern detection preprocessor in an electronic device update generation system
US20040068721A1 (en) * 2000-11-17 2004-04-08 O'neill Patrick Network for updating firmware and / or software in wireless communication devices
US7024471B2 (en) * 2000-12-12 2006-04-04 International Business Machines Corporation Mechanism to dynamically update a windows system with user specific application enablement support from a heterogeneous server environment
US7380008B2 (en) 2000-12-22 2008-05-27 Oracle International Corporation Proxy system
US7711818B2 (en) * 2000-12-22 2010-05-04 Oracle International Corporation Support for multiple data stores
US7475151B2 (en) * 2000-12-22 2009-01-06 Oracle International Corporation Policies for modifying group membership
US7581011B2 (en) * 2000-12-22 2009-08-25 Oracle International Corporation Template based workflow definition
US7937655B2 (en) 2000-12-22 2011-05-03 Oracle International Corporation Workflows with associated processes
US7415607B2 (en) * 2000-12-22 2008-08-19 Oracle International Corporation Obtaining and maintaining real time certificate status
US7085834B2 (en) * 2000-12-22 2006-08-01 Oracle International Corporation Determining a user's groups
US7213249B2 (en) * 2000-12-22 2007-05-01 Oracle International Corporation Blocking cache flush requests until completing current pending requests in a local server and remote server
US7802174B2 (en) 2000-12-22 2010-09-21 Oracle International Corporation Domain based workflows
US8015600B2 (en) 2000-12-22 2011-09-06 Oracle International Corporation Employing electronic certificate workflows
US7363339B2 (en) * 2000-12-22 2008-04-22 Oracle International Corporation Determining group membership
US7349912B2 (en) 2000-12-22 2008-03-25 Oracle International Corporation Runtime modification of entries in an identity system
US6961773B2 (en) 2001-01-19 2005-11-01 Esoft, Inc. System and method for managing application service providers
US7958237B2 (en) * 2001-01-23 2011-06-07 Pearl Software, Inc. Method for managing computer network access
US7356816B2 (en) 2001-02-13 2008-04-08 Computer Associates Think, Inc. Method and apparatus for multiplatform migration
US20020124188A1 (en) * 2001-02-20 2002-09-05 Vipadvisor.Com, Inc. Computing environment for facilitating collaboration between professional service providers and their clients
US6897880B2 (en) * 2001-02-22 2005-05-24 Sony Corporation User interface for generating parameter values in media presentations based on selected presentation instances
US20040098386A1 (en) * 2001-03-30 2004-05-20 Marcus Thint Profile management system
US7143164B2 (en) * 2001-05-21 2006-11-28 Exigen Group Dynamic object library software architecture
US6687733B2 (en) 2001-06-01 2004-02-03 Intergenix Method and system for automatically configuring a client-server network
US7346546B2 (en) * 2001-06-07 2008-03-18 Gateway Inc. Purchasing interface with a task display
US20020194226A1 (en) * 2001-06-15 2002-12-19 Dinesh Sheth Internet information aggregation system using programmatic data extraction
US6996602B2 (en) * 2001-06-18 2006-02-07 Ford Global Technologies, Llc Server-side page table framework for client application definition and execution
US8782254B2 (en) * 2001-06-28 2014-07-15 Oracle America, Inc. Differentiated quality of service context assignment and propagation
US7161899B2 (en) * 2001-07-20 2007-01-09 Bay Microsystems, Inc. Interlocking SONET/SDH network architecture
US20030069906A1 (en) * 2001-07-27 2003-04-10 Cichowlas Bruce William Method and system for multi-page web applications with central control
US7050923B2 (en) 2001-08-15 2006-05-23 National Instruments Corporation Network-based system for configuring a measurement system using configuration information generated based on a user specification
US6889172B2 (en) * 2001-08-15 2005-05-03 National Instruments Corporation Network-based system for configuring a measurement system using software programs generated based on a user specification
US6910041B2 (en) * 2001-08-23 2005-06-21 International Business Machines Corporation Authorization model for administration
US7225256B2 (en) 2001-11-30 2007-05-29 Oracle International Corporation Impersonation in an access system
US6915341B2 (en) * 2002-01-08 2005-07-05 International Business Machines Corporation System for sending messages to all users in a web hosting environment
EP1343271B1 (en) * 2002-03-08 2005-08-10 Sun Microsystems, Inc. Method and apparatus for providing configuration data
US7369851B2 (en) * 2002-04-19 2008-05-06 Hewlett-Packard Development Company, L.P. Communications network capable of determining SIM card changes in electronic devices
CA2481298A1 (en) * 2002-04-19 2003-10-30 Computer Associates Think, Inc. Method and system for managing a computer system
US7290054B2 (en) * 2002-04-26 2007-10-30 Redback Networks Inc. Dynamic modification of a subscriber connection
US6993665B2 (en) * 2002-05-01 2006-01-31 Sun Microsystems, Inc. Applet permissions manager
US7216163B2 (en) * 2002-05-15 2007-05-08 Oracle International Corporation Method and apparatus for provisioning tasks using a provisioning bridge server
US7840658B2 (en) 2002-05-15 2010-11-23 Oracle International Corporation Employing job code attributes in provisioning
US20040064480A1 (en) * 2002-07-19 2004-04-01 Bartlett Troy L. System and method for utilizing profile information
US8737816B2 (en) * 2002-08-07 2014-05-27 Hollinbeck Mgmt. Gmbh, Llc System for selecting video tracks during playback of a media production
US7739584B2 (en) * 2002-08-08 2010-06-15 Zane Vella Electronic messaging synchronized to media presentation
US7340736B2 (en) * 2002-08-22 2008-03-04 Hewlett-Packard Development Company, L.P. Electronic device with an update agent that employs preprocessing techniques for update
US8233893B2 (en) * 2002-08-22 2012-07-31 Hewlett-Packard Development Company, L.P. Mobile handset update package generator that employs nodes technique
US8010423B2 (en) * 2002-08-29 2011-08-30 International Business Machines Corporation Anticipatory mobile system service brokering and resource planning from multiple providers
US7669197B1 (en) 2002-09-12 2010-02-23 Hewlett-Packard Development Company, L.P. Embedded system employing component architecture platform
US7472380B1 (en) 2002-09-23 2008-12-30 Hewlett-Packard Development Company, L.P. Processing system with component architecture platform support
US7461372B2 (en) * 2002-10-11 2008-12-02 Hewlett-Packard Development Company, L.P. System for optimizing distribution of information employing a universal dictionary
US6978453B2 (en) * 2002-10-21 2005-12-20 Bitfone Corporation System with required enhancements to syncML DM environment to support firmware updates
US8027843B2 (en) * 2002-11-07 2011-09-27 International Business Machines Corporation On-demand supplemental diagnostic and service resource planning for mobile systems
US7447642B2 (en) * 2002-11-07 2008-11-04 International Business Machines Corporation Location based services revenue sharing and cost offsetting
US7984435B2 (en) * 2002-11-13 2011-07-19 Hewlett-Packard Development Company, L.P. Update system employing reference software to reduce number of update packages
US20040093592A1 (en) 2002-11-13 2004-05-13 Rao Bindu Rama Firmware update in electronic devices employing SIM card for saving metadata information
US7047448B2 (en) * 2002-11-21 2006-05-16 Bitfone Corporation Software self-repair toolkit for electronic devices
US7359930B2 (en) * 2002-11-21 2008-04-15 Arbor Networks System and method for managing computer networks
US6996818B2 (en) * 2002-11-22 2006-02-07 Bitfone Corporation Update system for facilitating software update and data conversion in an electronic device
US7434216B1 (en) 2002-11-25 2008-10-07 Hewlett-Packard Development Company, L.P. Update package generator that employs genetic evolution to determine bank order
US7111245B2 (en) * 2002-12-17 2006-09-19 International Business Machines Corporation System and method for smart graphical components
US7243336B2 (en) * 2002-12-17 2007-07-10 International Business Machines Corporation System and method of extending application types in a centrally managed desktop environment
US7117448B2 (en) 2002-12-17 2006-10-03 International Business Machines Corporation System and method for determining desktop functionality based on workstation and user roles
US20040113950A1 (en) * 2002-12-17 2004-06-17 International Business Machines Corporation System and method for centrally managed self-contained desktops
US7203905B2 (en) 2002-12-17 2007-04-10 International Business Machines Corporation System and method for platform independent desktop lockdown
AU2003300431A1 (en) * 2002-12-31 2004-07-29 Bitfone Corporation Management of service components installed in an electronic device in a mobile services network
US7890427B1 (en) 2003-01-09 2011-02-15 Hewlett-Packard Development Company, L.P. Authentication of notifications received in an electronic device in a mobile services network
US7480907B1 (en) 2003-01-09 2009-01-20 Hewlett-Packard Development Company, L.P. Mobile services network for update of firmware/software in mobile handsets
TWI349204B (en) * 2003-01-10 2011-09-21 Panasonic Corp Group admission system and server and client therefor
WO2004063899A2 (en) 2003-01-13 2004-07-29 Bitfone Corporation Mobile handset capable of updating its update agent
US7644406B2 (en) * 2003-01-21 2010-01-05 Hewlett-Packard Development Company, L.P. Update system capable of updating software across multiple FLASH chips
WO2004070571A2 (en) * 2003-02-03 2004-08-19 Bitfone Corporation Update system for facilitating firmware/software update in a mobile handset
US6941453B2 (en) * 2003-02-11 2005-09-06 Bitfone Corporation System and method for determining if a device needs to be updated and locating and invoking an update agent to update the firmware or software in the device
US8027482B2 (en) * 2003-02-13 2011-09-27 Hollinbeck Mgmt. Gmbh, Llc DVD audio encoding using environmental audio tracks
US7689981B1 (en) 2003-02-28 2010-03-30 Hewlett-Packard Development Company, L.P. Mobile handset with efficient interruption point detection during a multiple-pass update process
US20040230965A1 (en) * 2003-02-28 2004-11-18 Harri Okkonen Mobile handset network that facilitates interaction between a generic intelligent responsive agent and a service broker server
US8082339B2 (en) 2003-02-28 2011-12-20 Hewlett-Packard Development Company, L.P. Electronic device network having graceful denial of service
US7881745B1 (en) 2003-03-10 2011-02-01 Hewlett-Packard Development Company, L.P. Electronic device network employing provisioning techniques to update firmware and/or software in electronic devices
US7356727B1 (en) 2003-03-10 2008-04-08 Hewlett-Packard Development Company, L.P. Electronic device employing efficient fault tolerance
US7548986B1 (en) 2003-03-17 2009-06-16 Hewlett-Packard Development Company, L.P. Electronic device network providing streaming updates
US7657884B2 (en) * 2003-03-24 2010-02-02 Hewlett-Packard Development Company, L.P. Electronic device supporting multiple update agents
US7587411B2 (en) * 2003-03-27 2009-09-08 Microsoft Corporation System and method for filtering and organizing items based on common elements
US7975147B1 (en) 2003-03-31 2011-07-05 Hewlett-Packard Development Company, L.P. Electronic device network supporting enciphering and deciphering and update generation in electronic devices
US7447785B2 (en) * 2003-03-31 2008-11-04 Microsoft Corporation Dependent context trees for related network offerings
US7987449B1 (en) 2003-05-22 2011-07-26 Hewlett-Packard Development Company, L.P. Network for lifecycle management of firmware and software in electronic devices
US7747994B1 (en) 2003-06-04 2010-06-29 Hewlett-Packard Development Company, L.P. Generator based on multiple instruction streams and minimum size instruction set for generating updates to mobile handset
EP1654640B1 (en) 2003-06-04 2018-08-01 Qualcomm Incorporated Network having customizable generators of sofware updates and mobile electronic devices having customizable updating software
US7584466B1 (en) 2003-06-16 2009-09-01 Hewlett-Packard Development Company, L.P. Management tree management in a mobile handset
US8046753B1 (en) 2003-06-18 2011-10-25 Hewlett-Packard Development Company, L.P. Mobile handset with symbian OS and update agent
EP1639435A4 (en) * 2003-06-27 2009-12-30 Hewlett Packard Development Co SYSTEM AND METHOD FOR DOWNLOADING UPDATE PACKAGES INTO A MOBILE HAND APPARATUS IN A CARRIER NETWORK
US7343443B1 (en) * 2003-07-08 2008-03-11 Hewlett-Packard Development Company, L.P. Updated package generation based on analysis of bank dependency
EP1652100A4 (en) * 2003-07-09 2009-12-16 Hewlett Packard Development Co TELECOMMUNICATIONS COMPANY NETWORK FOR PROVIDING REMOTE DIAGNOSIS OF MOBILE COMBINATION
US7366125B1 (en) 2003-07-24 2008-04-29 Bbn Technologies Corp. Extensible satellite communication system
EP1652075B1 (en) * 2003-07-29 2018-10-31 Qualcomm Incorporated Mobile handset with update agent implemented in hardware
US20050025349A1 (en) * 2003-07-30 2005-02-03 Matthew Crewe Flexible integration of software applications in a network environment
US7886093B1 (en) 2003-07-31 2011-02-08 Hewlett-Packard Development Company, L.P. Electronic device network supporting compression and decompression in electronic devices
US7822831B2 (en) * 2003-07-31 2010-10-26 International Business Machines Corporation Method, system and program product for preserving and restoring mobile device user settings
KR101003888B1 (ko) * 2003-09-03 2010-12-30 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 전자 장치에서의 3-단계 부팅 프로세스
US8555273B1 (en) 2003-09-17 2013-10-08 Palm. Inc. Network for updating electronic devices
US7668612B1 (en) 2003-09-18 2010-02-23 Hewlett-Packard Development Company, L.P. System and method for efficient manufacture and update of electronic devices
KR20090035044A (ko) * 2003-09-26 2009-04-08 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘 피 네트워크에서의 생성자와 콘텐츠 서버 간의 업데이트 패키지 전송을 위한 업데이트 패키지 카탈로그
EP1668951B1 (en) * 2003-10-03 2011-12-28 Hewlett-Packard Development Company, L.P. Network and method for registration of mobile devices and management of the mobile devices
US7904487B2 (en) 2003-10-09 2011-03-08 Oracle International Corporation Translating data access requests
US7340447B2 (en) 2003-10-09 2008-03-04 Oracle International Corporation Partitioning data access requests
US7882132B2 (en) 2003-10-09 2011-02-01 Oracle International Corporation Support for RDBMS in LDAP system
US7716276B1 (en) 2003-11-17 2010-05-11 Hewlett-Packard Development Company, L.P. Network that supports user-initiated device management
US20050125412A1 (en) * 2003-12-09 2005-06-09 Nec Laboratories America, Inc. Web crawling
US20050132351A1 (en) * 2003-12-12 2005-06-16 Randall Roderick K. Updating electronic device software employing rollback
US7797693B1 (en) 2003-12-12 2010-09-14 Hewlett-Packard Development Company, L.P. NAND mobile devices capable of updating firmware or software in a manner analogous to NOR mobile devices
US9323515B1 (en) 2004-01-16 2016-04-26 Qualcomm Incorporated Network with broker for device management
US8838754B1 (en) 2004-01-26 2014-09-16 Qualcomm Incorporated Mobile device with a management forest in a device management network
US7984485B1 (en) 2004-01-29 2011-07-19 Hewlett-Packard Development Company, L.P. Ingestion interface for transferring update package containers into a distribution network
US7551912B2 (en) * 2004-02-12 2009-06-23 Hewlett-Packard Development Company, L.P. Device management network that facilitates selective billing
EP1569489B1 (fr) * 2004-02-26 2019-12-25 Orange Procédé de génération automatique de profils actifs pour terminal de télécommunications
US8837921B2 (en) * 2004-02-27 2014-09-16 Hollinbeck Mgmt. Gmbh, Llc System for fast angle changing in video playback devices
US8238721B2 (en) * 2004-02-27 2012-08-07 Hollinbeck Mgmt. Gmbh, Llc Scene changing in video playback devices including device-generated transitions
US20050210409A1 (en) * 2004-03-19 2005-09-22 Kenny Jou Systems and methods for class designation in a computerized social network application
US8165448B2 (en) * 2004-03-24 2012-04-24 Hollinbeck Mgmt. Gmbh, Llc System using multiple display screens for multiple video streams
US7739679B2 (en) * 2004-04-06 2010-06-15 Hewlett-Packard Development Company, L.P. Object ordering tool for facilitating generation of firmware update friendly binary image
US7904895B1 (en) 2004-04-21 2011-03-08 Hewlett-Packard Develpment Company, L.P. Firmware update in electronic devices employing update agent in a flash memory card
US7971199B1 (en) 2004-05-03 2011-06-28 Hewlett-Packard Development Company, L.P. Mobile device with a self-updating update agent in a wireless network
US7689982B1 (en) 2004-05-07 2010-03-30 Hewlett-Packard Development Company, L.P. Transparent linker profiler tool with profile database
US7543118B1 (en) 2004-05-07 2009-06-02 Hewlett-Packard Development Company, L.P. Multiple variance platform for the management of mobile devices
US7657886B1 (en) 2004-06-03 2010-02-02 Hewlett-Packard Development Company, L.P. Mobile device with a MMU for faster firmware updates in a wireless network
US20060026587A1 (en) * 2004-07-28 2006-02-02 Lemarroy Luis A Systems and methods for operating system migration
US8526940B1 (en) 2004-08-17 2013-09-03 Palm, Inc. Centralized rules repository for smart phone customer care
US8045845B2 (en) * 2005-01-03 2011-10-25 Hollinbeck Mgmt. Gmbh, Llc System for holding a current track during playback of a multi-track media production
US20060175271A1 (en) * 2005-01-31 2006-08-10 Emrey David A Apparatus and method of holding a golf score card and writing instrument, and golf bag and system incorporating the same
US8972549B2 (en) * 2005-06-10 2015-03-03 Adaptive Spectrum And Signal Alignment, Inc. User-preference-based DSL system
US20070101342A1 (en) * 2005-10-31 2007-05-03 Microsoft Corporation Automated device driver management
US20070101328A1 (en) * 2005-10-31 2007-05-03 Microsoft Corporation Sequencing a single task sequence across multiple operating environments
US7669123B2 (en) * 2006-08-11 2010-02-23 Facebook, Inc. Dynamically providing a news feed about a user of a social network
EP2025095A2 (en) 2006-06-08 2009-02-18 Hewlett-Packard Development Company, L.P. Device management in a network
US8752044B2 (en) 2006-07-27 2014-06-10 Qualcomm Incorporated User experience and dependency management in a mobile device
US20080079539A1 (en) * 2006-08-15 2008-04-03 Daley Robert C Friends Finder Service for a Mobile Device in a Network
US7874008B2 (en) * 2006-08-29 2011-01-18 International Business Machines Corporation Dynamically configuring extensible role based manageable resources
US8126128B1 (en) * 2006-11-01 2012-02-28 At&T Intellectual Property I, Lp Life cycle management of user-selected applications on wireless communications devices
US7904572B2 (en) * 2006-11-10 2011-03-08 Canon Denshi Kabushiki Kaisha Method, apparatus, and medium for controlling access to and setting for features of an imaging processing device
US9779556B1 (en) 2006-12-27 2017-10-03 Stamps.Com Inc. System and method for identifying and preventing on-line fraud
US8510233B1 (en) 2006-12-27 2013-08-13 Stamps.Com Inc. Postage printer
US20100198937A1 (en) * 2006-12-29 2010-08-05 Bernard Schletz Management of data for installation on a remote device
US8391775B2 (en) * 2007-03-09 2013-03-05 Airbiquity Inc. Mobile digital radio playlist system
US20080250050A1 (en) * 2007-04-05 2008-10-09 Cracchiolo Martin J Method and system for developing a desired set of configuration profiles for an application program and storage medium for storing a set of computer instructions which effectuate the method
US7818396B2 (en) * 2007-06-21 2010-10-19 Microsoft Corporation Aggregating and searching profile data from multiple services
US20080317042A1 (en) * 2007-06-22 2008-12-25 Palo Alto Research Center Incorporated Extensible framework for compatibility testing
FI121618B (fi) * 2007-11-09 2011-01-31 Capricode Oy Mobiilin laitteen laitehallintamenetelmä ja -järjestely
WO2009063034A2 (en) 2007-11-15 2009-05-22 Desknet Sa Method enabling a computer apparatus run by an operating system to execute software modules
US8219595B2 (en) * 2008-02-14 2012-07-10 Hewlett-Packard Development Company, L.P. System and method for efficient remote data access for server management
US8725647B2 (en) * 2008-03-27 2014-05-13 Ca, Inc. Method and system for determining software license compliance
US20090249493A1 (en) * 2008-03-27 2009-10-01 Computer Associates Think, Inc. Method and System for Determining Software License Compliance
US8181230B2 (en) * 2008-06-30 2012-05-15 International Business Machines Corporation System and method for adaptive approximating of a user for role authorization in a hierarchical inter-organizational model
US8645375B1 (en) * 2008-09-29 2014-02-04 Emc Corporation Controlling information about a data storage system returned to an end-user
JP5530450B2 (ja) * 2008-10-28 2014-06-25 エアビクティ インコーポレイテッド 車内のラジオで放送される楽曲の購入
US20100229188A1 (en) * 2009-03-03 2010-09-09 International Business Machines Corporation Presenting Data Files to an Application Based on a Characteristic of the Application and the Files
US9485339B2 (en) * 2009-05-19 2016-11-01 At&T Mobility Ii Llc Systems, methods, and mobile devices for providing a user interface to facilitate access to prepaid wireless account information
US8831823B2 (en) * 2009-10-15 2014-09-09 Airbiquity Inc. Centralized management of motor vehicle software applications and services
US8838332B2 (en) * 2009-10-15 2014-09-16 Airbiquity Inc. Centralized management of motor vehicle software applications and services
US9370029B2 (en) 2009-10-15 2016-06-14 Airbiquity Inc. Efficient headunit communication integration
US8942888B2 (en) 2009-10-15 2015-01-27 Airbiquity Inc. Extensible scheme for operating vehicle head unit as extended interface for mobile device
US9002574B2 (en) 2009-10-15 2015-04-07 Airbiquity Inc. Mobile integration platform (MIP) integrated handset application proxy (HAP)
JP5244831B2 (ja) * 2010-01-25 2013-07-24 株式会社日立製作所 計算機システム及びストレージ統合管理方法
US9081747B1 (en) 2012-03-06 2015-07-14 Big Bang Llc Computer program deployment to one or more target devices
TW201404636A (zh) 2012-06-08 2014-02-01 Airbiquity Inc 遠程識別機動車輛及監測駕駛員行爲之電子感測器資料的評估
CN103646055B (zh) * 2013-11-29 2017-09-26 广州视源电子科技股份有限公司 一种程序配置信息的获取方法和装置
US10171472B2 (en) 2016-03-02 2019-01-01 Microsoft Technology Licensing, Llc Role-specific service customization
CN109039670A (zh) 2017-06-09 2018-12-18 钉钉控股(开曼)有限公司 团队配置方法、团队配置方案的分享方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4885770A (en) * 1987-09-04 1989-12-05 Digital Equipment Corporation Boot system for distributed digital data processing system
US5717923A (en) * 1994-11-03 1998-02-10 Intel Corporation Method and apparatus for dynamically customizing electronic information to individual end users
US5491820A (en) * 1994-11-10 1996-02-13 At&T Corporation Distributed, intermittently connected, object-oriented database and management system
US5835727A (en) * 1996-12-09 1998-11-10 Sun Microsystems, Inc. Method and apparatus for controlling access to services within a computer network
US5848233A (en) * 1996-12-09 1998-12-08 Sun Microsystems, Inc. Method and apparatus for dynamic packet filter assignment
US6003082A (en) * 1998-04-22 1999-12-14 International Business Machines Corporation Selective internet request caching and execution system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100407291C (zh) * 2002-04-05 2008-07-30 英特尔公司 根据用于语音识别的呼叫语境动态地和自适应地选择词汇和声学模型
CN1297890C (zh) * 2002-12-17 2007-01-31 国际商业机器公司 集中管理自含式桌面的系统和方法
CN100405397C (zh) * 2002-12-31 2008-07-23 国际商业机器公司 在联合环境执行注册中介和重定优先级操作的方法和系统
CN108809680A (zh) * 2017-05-04 2018-11-13 腾讯科技(深圳)有限公司 一种设备管理的方法及设备
CN108809680B (zh) * 2017-05-04 2021-03-02 腾讯科技(深圳)有限公司 一种设备管理的方法及设备

Also Published As

Publication number Publication date
TW444181B (en) 2001-07-01
EP1076973B1 (en) 2004-12-15
CA2324396A1 (en) 1999-11-11
EP1076973A1 (en) 2001-02-21
US6105063A (en) 2000-08-15
JP3670965B2 (ja) 2005-07-13
CN1120606C (zh) 2003-09-03
CA2324396C (en) 2004-10-26
DE69828202D1 (de) 2005-01-20
WO1999057862A1 (en) 1999-11-11
DE69828202T2 (de) 2005-12-15
IL138133A0 (en) 2001-10-31
PL343688A1 (en) 2001-08-27
IL138133A (en) 2005-03-20
JP2003505745A (ja) 2003-02-12

Similar Documents

Publication Publication Date Title
CN1120606C (zh) 用于在层次数据结构中保持应用偏好的客户/服务器系统
US6205476B1 (en) Client—server system with central application management allowing an administrator to configure end user applications by executing them in the context of users and groups
US6105066A (en) Client-server system with central application management and using fully qualified class names of object-oriented applications for determining permanent server storage locations for application configuration information
US6339826B2 (en) Client-server system for maintaining a user desktop consistent with server application user access permissions
KR100296362B1 (ko) 중앙 애플리케이션 매니저먼트를 가지고 존재하는 하드웨어 및애플리케이션을 시스템으로 개장하기 위하여 익스포트 에이전트능력을 제공하는 클라이언트-서버 시스템
CN109194506B (zh) 区块链网络部署方法、平台及计算机存储介质
US6237092B1 (en) Client-server system with central application management allowing an administrator to configure user and group contexts during application configuration without relaunching the application
CN109688120B (zh) 基于改进RBAC模型及Spring Security框架的动态权限管理系统
US6327628B1 (en) Portal server that provides a customizable user Interface for access to computer networks
US7493563B2 (en) Using content aggregation to build administration consoles
US20020194267A1 (en) Portal server that provides modification of user interfaces for access to computer networks
EP0752652B1 (en) System and method for implementing a hierarchical policy for computer system administration
CA2249487A1 (en) Remote object access
US8973017B2 (en) Productivity application management
WO2002001388A2 (en) Portal server that provides a customizable user interface for access to computer networks
CN110138582A (zh) 信息处理方法、装置及运维环境治理系统
US6886172B2 (en) Method for mapping procedural C++ code to java object-oriented classes
Wan An open source alternative for libraries
Adamski et al. Documented second release of the security infrastructure and APIs
CZ20004081A3 (cs) Systém klient-server pro udržování nastavení aplikace v hierarchické datové struktuře podle kontextu uživatele a skupiny uživatelů nebo terminálu a skupiny terminálů

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20030903

CX01 Expiry of patent term