Object connectivity through loosely coupled publish and subscribe events
First Claim
1. A computer-readable storage medium having computer-executable program code stored thereon to implement an object-oriented event communications model for distributing events from a publisher to any subscribers of the events, where a subscriber exposes an outgoing event interface that receives events as calls to methods of the outgoing event interface, the program code comprising:
- subscription code operative to create a plurality of subscriptions in computer memory, each associating an event with the subscriber;
code operative to manage the plurality of the subscriptions; and
event distribution code operative in response to issuance of an event instance by publisher code so as to retrieve the subscription and the subscriber associated with the event and issue a method call to the subscriber'"'"'s outgoing event interface to thereby distribute the event instance to the subscriber associated via the subscription with the event, wherein the outgoing event interface exposed by the subscriber comprises methods to get and set data contained by the subscription;
wherein the deactivated subscriber is activated by said event distribution code before the method call is issued,wherein the code operative to manage a plurality of subscriptions includes at least a subscription object that comprises an event class identifier, an event method identifier, and a subscriber reference, andwherein the subscriber reference is an interface identifier of an instance of the subscriber.
1 Assignment
0 Petitions
Accused Products
Abstract
An object-based event communications system supplies an event distribution object having an outgoing-from-publisher event interface and associated with unique identifiers defined for a publisher that is programmed to fire events by calling a method on the event distribution object'"'"'s outgoing-from-publisher event interface. The event communications system stores subscriptions of subscriber objects to methods of the outgoing-from-publisher event interface. On receiving a call from a publisher to its outgoing-from-publisher interface methods, the event distribution object multi-casts calls to counterpart methods of subscriber objects that have stored subscriptions to the respective outgoing-from-publisher interface methods.
119 Citations
12 Claims
-
1. A computer-readable storage medium having computer-executable program code stored thereon to implement an object-oriented event communications model for distributing events from a publisher to any subscribers of the events, where a subscriber exposes an outgoing event interface that receives events as calls to methods of the outgoing event interface, the program code comprising:
-
subscription code operative to create a plurality of subscriptions in computer memory, each associating an event with the subscriber; code operative to manage the plurality of the subscriptions; and event distribution code operative in response to issuance of an event instance by publisher code so as to retrieve the subscription and the subscriber associated with the event and issue a method call to the subscriber'"'"'s outgoing event interface to thereby distribute the event instance to the subscriber associated via the subscription with the event, wherein the outgoing event interface exposed by the subscriber comprises methods to get and set data contained by the subscription; wherein the deactivated subscriber is activated by said event distribution code before the method call is issued, wherein the code operative to manage a plurality of subscriptions includes at least a subscription object that comprises an event class identifier, an event method identifier, and a subscriber reference, and wherein the subscriber reference is an interface identifier of an instance of the subscriber. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-enabled method of distributing events from a publisher object to subscriber objects, where subscriber objects expose an outgoing event interface that receives events as calls to methods of the outgoing event interface, the method comprising:
-
managing a plurality of subscriptions, the subscriptions stored in computer memory, where a subscription associates an event object with a subscriber object; in response to a publisher object issuing an event by calling a method of the event object, 1) the event object using the method and an event class identifier of the event object to locate a plurality of subscriptions associated with the method of the event, 2) the event object retrieving from each subscription a reference to a subscriber object associated with the event object, and 3) the event object issuing a method call to each referenced subscriber object'"'"'s outgoing event interface to thereby distribute the event to the subscriber object associated via the subscription with the event object, wherein the outgoing event interface exposed by the subscriber object comprises methods to get and set data contained by the subscription; wherein a deactivated subscriber is activated before the method call is issued to the referenced subscriber'"'"'s outgoing interface, wherein managing a plurality of subscriptions includes managing at least a subscription object that comprises an event class identifier, an event method identifier, and a subscriber reference, and wherein the subscriber reference is an interface identifier of an instance of the subscriber. - View Dependent Claims (9, 10, 11)
-
-
12. An object-oriented event communications system for distributing events from publishers to subscribers of the events, where a subscriber exposes an outgoing event interface that receives events as calls to methods of the outgoing event interface, the system comprising:
-
networked computer devices; a computer memory; and a distributed application stored in the computer memory, wherein the distributed application comprising, subscription management code, operative to manage a plurality of subscriptions, where a subscription associates an event to the subscriber, and event distribution code operative in response to issuance of an event instance by publisher code so as to retrieve the subscription and the subscriber associated with the event and issue a method call to the subscribers outgoing event interface to thereby distribute the event instance to the subscriber associated via the subscription with the event, wherein the outgoing event interface exposed by the subscriber comprises methods to get and set data contained by the subscription; subscriber filter code operative in response to the method call to the subscriber'"'"'s outgoing event interface to transform the method call to a call on a different subscriber method, wherein the subscriber filter code accesses subscriber properties using a subscription interface pointer, and wherein the subscriber properties are used to determine whether to transform the method call to a call on a different subscriber method; wherein a deactivated subscriber is activated by said event distribution code before the method call is issued, wherein the subscription management code manages at least a subscription object that comprises an event class identifier, an event method identifier, and a subscriber reference, and wherein the subscriber reference is an interface identifier of an instance of the subscriber.
-
Specification