Message passing in a collaborative environment
First Claim
1. A server for providing client computing devices notifications concerning subscribed objects, the server comprising:
- a processor;
a computer-readable storage medium having computer-executable instructions stored thereon that, if executed by the processor, cause the server to perform actions for providing the client computing devices notifications regarding a subscribed object using a message chain, wherein the message chain is associated with the subscribed object and includes a linked list that references subscription lists that include the subscribed object in their respective lists of objects, such that the linked list of the message chain does not include a reference to any subscription list that does not include the subscribed object in its respective list of objects, the actions comprising;
in response to a first client computing device subscribing as a listener to the subscribed object, adding a reference to the subscribed object to a first subscription list;
in response to a second client computing device subscribing as a listener to the subscribed object, adding a reference to the subscribed object to a second subscription list;
updating a linked list of the message chain to include a reference to the first subscription list and a reference to the second subscription list;
receiving a notification that the subscribed object experienced an update;
locating the message chain associated with the subscribed object that experienced the update; and
traversing the linked list in the message chain to send a message notification to each client computing device associated with subscription lists of the message chain, including the first and second client computing devices;
wherein the first subscription list includes a first list of objects for which the first client computing device is to be notified when at least one of the objects is updated, and wherein the first list of objects includes at least one object other than the subscribed object;
wherein the second subscription list is separate from the first subscription list and includes a second list of objects for which the second client computing device is to be notified when at least one of the objects is updated, and wherein the second list of objects includes at least one object other than the subscribed object; and
wherein the message provides a semantic description of the update to the subscribed object.
1 Assignment
0 Petitions
Accused Products
Abstract
Generally described, the present invention is directed to a network operating system that provides more effective ways of leveraging the connectivity of computer networks. In one embodiment, an XML virtual machine is implemented that accepts high-level application code written in an XML programming language as input. Functionality is provided to interpret or translate the application code written in an XML programming language into code that is suitable for execution across computer platforms. Moreover, the XML virtual machine supports the Model View Controller (MVC) design paradigm that facilitates true data abstraction from applications to a common data model. Multi-instance applications, with each instance potentially supporting multiple views, may be created and executed.
-
Citations
6 Claims
-
1. A server for providing client computing devices notifications concerning subscribed objects, the server comprising:
-
a processor; a computer-readable storage medium having computer-executable instructions stored thereon that, if executed by the processor, cause the server to perform actions for providing the client computing devices notifications regarding a subscribed object using a message chain, wherein the message chain is associated with the subscribed object and includes a linked list that references subscription lists that include the subscribed object in their respective lists of objects, such that the linked list of the message chain does not include a reference to any subscription list that does not include the subscribed object in its respective list of objects, the actions comprising; in response to a first client computing device subscribing as a listener to the subscribed object, adding a reference to the subscribed object to a first subscription list; in response to a second client computing device subscribing as a listener to the subscribed object, adding a reference to the subscribed object to a second subscription list; updating a linked list of the message chain to include a reference to the first subscription list and a reference to the second subscription list; receiving a notification that the subscribed object experienced an update; locating the message chain associated with the subscribed object that experienced the update; and traversing the linked list in the message chain to send a message notification to each client computing device associated with subscription lists of the message chain, including the first and second client computing devices; wherein the first subscription list includes a first list of objects for which the first client computing device is to be notified when at least one of the objects is updated, and wherein the first list of objects includes at least one object other than the subscribed object; wherein the second subscription list is separate from the first subscription list and includes a second list of objects for which the second client computing device is to be notified when at least one of the objects is updated, and wherein the second list of objects includes at least one object other than the subscribed object; and wherein the message provides a semantic description of the update to the subscribed object. - View Dependent Claims (2, 3, 4, 5, 6)
-
Specification