Claims
- 1. In a system for a distributed computing environment, wherein the system includes a communications bus, a bus manager having at least one bus management component, at least one server node and at least one client node, wherein said at least one server node, said at least one client node and said at least one bus management component are interconnected via said communications bus, and wherein each of said at least one client node includes a property watching component and at least one client resource that may request watching, aided by the property watching component, of at least one property of at least one server resource of said at least one server node, a method for communicating between a server resource and a client resource when the client resource is watching a property of the server resource, comprising:
first registering by the client resource to track a property of a server resource; after the server resource enters the up state, second registering by the client resource to watch a property of the server resource; and after the property of the server resource is set, invoking by the server resource a property set function of the client resource.
- 2. A method according to claim 1, wherein said first registering includes determining that the property of the server resource is available.
- 3. A method according to claim 1, further including receiving by the client resource an initial value of the property after the server resource enters the up state.
- 4. A method according to claim 3, wherein the client resource does not receive any subsequent setting of the property until the initial value of the property is received.
- 5. A method according to claim 1, wherein a server node of the at least one server node is also a client node of the at least one client node.
- 6. A method according to claim 1, wherein the communications bus includes a medium having shared memory.
- 7. A method according to claim 1, wherein said invoking includes passing the context received from the client resource and passing the value of the property.
- 8. A method according to claim 7, wherein the property set function of the client resource uses the context to identify the property and perform the behavior specified when the client resource specified its interests in watching the property.
- 9. A method according to claim 1, further including invoking on behalf of the client resource the stop watching property function of the server resource.
- 10. A method according to claim 1, wherein said second registering includes invoking a watch property function of the server resource passing at least one of (1) the identification of the property to be watched, (2) an identification of the client resource and (3) a context of the client resource that uniquely identifies that property to the client resource.
- 11. A method according to claim 1, further including:
third registering by the server resource to monitor each client resource that at least one of first registers and second registers, so that when a client resource goes down, the method further includes:
receiving by the server resource a resource is down notification on behalf of a client resource; and upon receiving such a notification, the server resource stops notifying the client resource when the property is set.
- 12. A method according to claim 1, wherein a client node having a client resource caches at least one property value from the server resource.
- 13. A method according to claim 1, wherein the property watching component of a client resource utilizes at least one of a directory object data structure, a resource reference object data structure and a client object data structure.
- 14. A method according to claim 13, wherein when a property of a server resource is being watched, a special type of client object is added to the list of client objects of the resource reference object data structure for the watched server resource.
- 15. A method according to claim 14 wherein the special type of client object indicates that it represents the watching of a certain property and includes a property reference object for each time that the client resource has registered to watch that property.
- 16. A method according to claim 15, wherein each property reference object has a function that is invoked when the property is set to notify the client resource.
- 17. A method according to claim 1, wherein the at least one server node includes a context/client table that includes an entry for each property of a server resource that is being watched by at least one client resource, wherein each entry includes a context and a property client indicator and wherein the context uniquely identifies the server resource and property from the perspective of the client resource and the property client indicator refers to the corresponding property client object.
- 18. A method according to claim 1, wherein the client resource further includes a synchronize property function, wherein the synchronize property function is invoked by the server resource when a client resource first registers to watch a certain property of that server resource to provide the current value of the property to the client resource.
- 19. A computer readable medium comprising computer executable instructions for performing the method of claim 1.
- 20. A modulated data signal carrying computer executable instructions for performing the method of claim 1.
- 21. A computing device comprising means for performing the method of claim 1.
- 22. In a system for a distributed computing environment, wherein the system includes a communications bus, a bus manager having at least one bus management component, at least one server node and at least one client node, wherein said at least one server node, said at least one client node and said at least one bus management component are interconnected via said communications bus, and wherein each of said at least one client node includes at least one client resource for requesting watching of at least one property of at least one server resource of said at least one server node, a method for registering to watch a property of the server resource by the client resource, comprising:
invoking a register watch function of a client resource, wherein the register watch function is passed an identification of the server resource to be watched, an identification of a property of the server resource to be watched, and an identification of the client resource that will be watching the server resource; determining whether the client resource is already watching the property; and if the client resource is not already watching the property according to said determining, generating a unique context for the client resource and the property.
- 23. A method according to claim 22, wherein said generating includes:
invoking a watch property function of the server resource, passing the identification of the property and the context to the server resource; generating a property client object for that property and adding the property client object to a client object list of a resource reference object for the server resource; and adding an entry to a context/property table utilized for the server resource.
- 24. A method according to claim 23, further including:
if the client resource is already watching the property according to said determining, adding the property reference object to the list associated with the property client object.
- 25. A method according to claim 22, wherein a server node of the at least one server node is also a client node of the at least one client node.
- 26. A computer readable medium comprising computer executable instructions for performing the method of claim 22.
- 27. A modulated data signal carrying computer executable instructions for performing the method of claim 22.
- 28. A computing device comprising means for performing the method of claim 22.
- 29. In a system for a distributed computing environment, wherein the system includes a communications bus, a bus manager having at least one bus management component, at least one server node and at least one client node, wherein said at least one server node, said at least one client node and said at least one bus management component are interconnected via said communications bus, and wherein each of said at least one client node includes at least one client resource has registered an interest in at least one property of at least one server resource of said at least one server node, a method for setting a property of the server resource by the client resource, comprising:
invoking a property set function by a client resource registered with an interest in a server resource including:
passing the set property function a context and a property value; retrieving a reference to a property client object having at least one property reference object from a context/client table using the passed context; and invoking the behavior associated with each property reference object for the property client object.
- 30. A method according to claim 29, wherein said invoking includes:
selecting a property reference object of the property client object; and invoking the value set function of the property reference object to notify the client resource that the property has been set.
- 31. A method according to claim 30, wherein said selecting and invoking begins with the first property reference object and performs said selecting and invoking until all of the property reference objects have been selected.
- 32. A method according to claim 29, wherein a server node of the at least one server node is also a client node of the at least one client node.
- 33. A computer readable medium comprising computer executable instructions for performing the method of claim 29.
- 34. A modulated data signal carrying computer executable instructions for performing the method of claim 29.
- 35. A computing device comprising means for performing the method of claim 29.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a divisional of U.S. patent application Ser. No. 09/322,457, entitled “METHOD AND SYSTEM FOR PROPERTY NOTIFICATION,” filed on May 28, 1999; which claims benefit of U.S. patent application Ser. No. 60/118,668, entitled “COMMON DISTRIBUTED OBJECT PLATFORM,” filed on Feb. 3, 1999; and which is related to U.S. patent application Ser. No. 09/322,455, entitled “METHOD AND SYSTEM FOR TRACKING SOFTWARE COMPONENTS,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,962, entitled “METHOD AND SYSTEM FOR TRACKING CLIENTS,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,643 “AUDIO VISUAL ARCHITECTURE,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,459, entitled “METHOD AND SYSTEM FOR CONTROLLING ENVIRONMENTAL CONDITIONS,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,207, entitled “METHOD AND SYSTEM FOR DISTRIBUTING ART,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,964, entitled “METHOD AND SYSTEM FOR GENERATING A USER INTERFACE FOR DISTRIBUTED DEVICES,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,852, entitled “METHOD AND SYSTEM FOR MANAGING SOFTWARE COMPONENTS,” filed on May 28, 1999; the disclosures of which are incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60118668 |
Feb 1999 |
US |
Divisions (1)
|
Number |
Date |
Country |
Parent |
09322457 |
May 1999 |
US |
Child |
10298875 |
Nov 2002 |
US |