System and method for forward custom marshaling event filters
First Claim
1. In a computer system including an event-detection component for detecting events and an event provider for reporting the occurrence of the events detected, a method for selecting which of the events detected are to be reported by the event provider, the method comprising the steps of:
- storing, in a computer-readable medium accessible by the computer system, a database of possible events that can occur within the computer system or in an environment of the computer system, wherein the database of possible events that can occur within the computer system or in the environment of the computer is arranged and classified in a hierarchical fashion;
providing at least one event-filtering definition that specifies a subset of the possible events that are to be reported by the event provider;
detecting the occurrence of at least one of the possible events using the event-detection component; and
forwarding reports from the event provider of the occurrence of only those detected events that are specified by the at least one event-filtering definition.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for reporting the occurrence of events in a computer system to event subscriber software are disclosed. Events arc detected within a computer system or computer system environment by event detection components. An Event provider receives notification of the occurrence of each event. Instead of the event provider then forwarding each of the events to a single, centralized location for filtering, embodiments of the present invention perform the filtering of events at the location of the event provider. This is accomplished by custom forward marshaling a proxy to each event provider. Also marshaled is at least one event-filtering definition that specifics which events should be reported by that event provider to the subscriber software. The event-filtering definitions are written in a structured query language, which can be used to precisely select which events are to be reported. In this way, instead of reporting each event received by it, an event provider, by virtue of the proxy procedure, will only report those events that have been requested by an event subscriber. Non requested events are discarded, thereby reducing the use of processing resources that would otherwise be used if all events were sent to a single, centralized filter.
173 Citations
21 Claims
-
1. In a computer system including an event-detection component for detecting events and an event provider for reporting the occurrence of the events detected, a method for selecting which of the events detected are to be reported by the event provider, the method comprising the steps of:
-
storing, in a computer-readable medium accessible by the computer system, a database of possible events that can occur within the computer system or in an environment of the computer system, wherein the database of possible events that can occur within the computer system or in the environment of the computer is arranged and classified in a hierarchical fashion;
providing at least one event-filtering definition that specifies a subset of the possible events that are to be reported by the event provider;
detecting the occurrence of at least one of the possible events using the event-detection component; and
forwarding reports from the event provider of the occurrence of only those detected events that are specified by the at least one event-filtering definition. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
associating a proxy component with the event provider;
passing the at least one event-filtering definition to the proxy component;
filtering, by the proxy component, all of the events detected by the event-detection component so as to identify which of the events are specified by the at least one event-filtering definition; and
forwarding the specified events from the event provider via the proxy component.
-
-
10. A method as defined in claim 1, wherein the reports of the event occurrences forwarded by the event provider are received by an event subscriber functioning within the computer system.
-
11. In a computer system including at least one event-detection component, a method for reporting the occurrence of selected detected events to an event subscriber, the method comprising the steps of:
-
receiving, at an event provider component, notifications of the occurrence of a plurality of events detected by at least one event-detection component;
at the event provider component, filtering, by using a proxy component that is associated with the event provider component, the notifications received to identify the existence of any subscriber-requested event from the plurality of events, wherein the event subscriber has requested a report of the occurrence of the subscriber requested event; and
transmitting from the event provider component a report for every occurrence of any subscriber-requested event for reporting to the requesting event subscriber. - View Dependent Claims (12, 13)
-
-
14. A method for reporting the occurrence of selected events within a computer system environment to an event subscriber, the method comprising the steps of:
-
providing at least one event-filtering definition that specifies the selected events that are to be reported to the event subscriber;
activating an event provider that communicates with an event-detection component that is configured to detect the occurrence of at least one of the events specified by the at least one event-filtering definition;
associating a proxy component with the event provider;
receiving at an event provider notifications of the occurrence of all events detected by the event-detection component;
filtering by the proxy each of the notifications received by the event provider with the at least one event-filtering definition to identify which of the events are to reported to the event subscriber;
discarding at the proxy each of the notifications for which the events are not specified by the at least on event-filtering definition; and
forwarding from the event provider by the proxy a report of each of the notifications received for which the events are specified by the at least on event-filtering definition. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A system for reporting the occurrence of events to an event subscriber, the system comprising:
-
a digital computer for implementing a computer-executable method;
an event-detection component capable of detecting events in the system or in the environment of the system;
an event provider, in communication with the event-detection component, that is capable of reporting the occurrence of all events detected by the event-detection component;
an event subscriber capable of receiving reports of the occurrence of at least some of the events;
and wherein the computer-executable method comprises the steps of;
associating and invoking a proxy component at the event provider in a manner such that the proxy component is executing in a same execution space as the provider, and wherein the proxy has a defined interface for receiving all of the event occurrences reported by the event provider;
filtering, by the proxy component, each of the event occurrences reported by the event reported to identify which of the events are to be reported to the event subscriber;
forwarding notifications of the occurrence of only the events which are to be reported to the event subscriber from the event provider via its proxy component; and
transmitting the reports to the event subscriber. - View Dependent Claims (21)
-
Specification