A method and apparatus for maintaining data consistency between a subject and an observer. In one embodiment, an observer configures an aspect with a desired update type indicator, and then instructs the aspect to attach itself to a subject. The subject sends an update to the aspect when it changes state. The aspect interrogates the update, generates a update type indication, and selectively communicates an update based on a comparison between the desired type indication and the update type indicator. Some embodiments may also selectively modify and accumulate the update.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer-implemented method of communicating updates from a subject to an observer, comprising: in an observer, creating an aspect object, the aspect object comprising logic adapted selectively communicate update information from a subject to the observer based on configuration information, the configuration information comprising an attribute of the observer; attaching the aspect object to the subject; notifying the aspect object of an update; in the aspect object, interrogating the update to generate to generate the update information; and selectively communicating the update information to the observer based on a comparison between the update and the configuration information.
2. The computer-implemented method of claim 1 , further comprising selectively modifying the update information based on a comparison between the update and the configuration information.
3. The computer-implemented method of claim 1 , further comprising selectively accumulating the update information based on the configuration information.
4. The computer-implemented method of claim 1 , further comprising sending updated configuration information from the observer to the aspect object, wherein the updated configuration information comprises an updated attribute of the observer.
5. The computer-implemented method of claim 4 , wherein the updated attribute of the observer includes a system load indication.
6. The computer-implemented method of claim 1 , wherein subject comprises an object and wherein the observer comprises an object.
7. The computer-implemented method of claim 1 , wherein the configuration information comprises a type of updates desired indication.
8. The computer-implemented method of claim 7 , wherein the aspect object selectively discards the update information in response to the type of updates desired indication.
9. The computer-implemented method of claim 1 , wherein the attribute of the observer includes a maximum desired communication rate indication.
10. The computer-implemented method of claim 9 , further comprising an accumulating the update information if a required communication rate is greater than the maximum desired communication rate indication.
11. The computer-implemented method of claim 1 , further comprising preprocessing the update to selectively modify the update information in response to the configuration information.
12. The computer-implemented method of claim 11 , wherein the preprocessing comprises encapsulating the update with Internet routing information.
13. The computer-implemented method of claim 11 , wherein the preprocessing comprises compressing the message.
14. The computer-implemented method of claim 11 , wherein the preprocessing comprises encrypting the message.
15. The computer-implemented method of claim 11 , wherein the preprocessing comprises calculating a related value.
16. The computer-implemented method of claim 1 , further comprising, in the subject, providing a set of attach/detach methods that enable the observer to attach the aspect object to and detach the aspect object from the subject.
17. A computer-implemented method of maintaining data consistency between a subject object on a first computer system and an observer object on a second computer system, comprising: 1) by an observer object, creating an aspect object, the aspect object comprising logic adapted selectively communicate update information from a subject object to the observer based on configuration information, the configuration information comprising a desired type indicator and a desired communication rate indicator; b) attaching the aspect object to the subject object; and c) in response to a state change indication from the subject object: 1) sending an update to the aspect object; 2) by the aspect object, interrogating the update to generate an update type indicator; 3) by the aspect object, modifying the update based on a comparison between the update type indicator and the desired type indicator to produce a modified update; 4) by the aspect object, sending the modified update to an accumulator; 5) by the aspect object, using the desired communication rate indicator to determine whether the object is ready to receive the modified update; and 6) communicating the modified update to the observer.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
March 7, 2001
April 6, 2010
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.