Extensible language framework using data cartridges
First Claim
1. A method comprising:
- receiving, by a computer system, a query expressed in an event processing language, the query including a reference to a complex type implemented in another language distinct from the event processing language; and
compiling, by the computer system, the query by;
retrieving metadata pertaining to the complex type from information stored in a data cartridge for the complex type without requiring definition of a function interface for the complex type using data types that are defined in the event processing language; and
generating, based on the metadata, executable instructions for executing the query;
wherein the reference to the complex type within the query specifies both (a) a class identifier of a class written in said language distinct from the event processing language and (b) a method identifier of a particular method of the class;
wherein the class written in said language distinct from the event processing language includes a plurality of methods that are invocable as complex types referenced in queries expressed in the event processing language; and
wherein the particular method is one of the plurality of methods.
2 Assignments
0 Petitions
Accused Products
Abstract
A framework for extending the capabilities of an event processing system using one or more plug-in components referred to herein as data cartridges. In one set of embodiments, the data cartridge framework described herein can enable an event processing system to support one or more extension languages that are distinct from the native event processing language supported by the system. For example, certain “extension language” data cartridges can be provided that enable an event processing system to support complex data types and associated methods/operations that are common in object-oriented languages, but are not common in event processing languages. In these embodiments, an event processing system can access an extension language data cartridge to compile and execute queries that are written using a combination of the system'"'"'s native event processing language and the extension language.
431 Citations
16 Claims
-
1. A method comprising:
-
receiving, by a computer system, a query expressed in an event processing language, the query including a reference to a complex type implemented in another language distinct from the event processing language; and compiling, by the computer system, the query by; retrieving metadata pertaining to the complex type from information stored in a data cartridge for the complex type without requiring definition of a function interface for the complex type using data types that are defined in the event processing language; and generating, based on the metadata, executable instructions for executing the query; wherein the reference to the complex type within the query specifies both (a) a class identifier of a class written in said language distinct from the event processing language and (b) a method identifier of a particular method of the class; wherein the class written in said language distinct from the event processing language includes a plurality of methods that are invocable as complex types referenced in queries expressed in the event processing language; and wherein the particular method is one of the plurality of methods. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a processor configured to; receive a query expressed in an event processing language, the query including a reference to a complex type implemented in another language distinct from the event processing language; and compile the query by; retrieving metadata pertaining to the complex type from information stored in a data cartridge for the complex type without requiring definition of a function interface for the complex type using data types that are defined in the event processing language; and generating, based on the metadata, executable instructions for executing the query; wherein the reference to the complex type within the query specifies both (a) a class identifier of a class written in said language distinct from the event processing language and (b) a method identifier of a particular method of the class; wherein the class written in said language distinct from the event processing language includes a plurality of methods that are invocable as complex types referenced in queries expressed in the event processing language; and wherein the particular method is one of the plurality of methods. - View Dependent Claims (9)
-
-
10. A non-transitory computer-readable storage medium having stored thereon instructions executable by a processor, the instructions comprising:
-
instructions that cause the processor to receive a query expressed in an event processing language, the query including a reference to a complex type implemented in another language distinct from the event processing language; and instructions that cause the processor to compile the query by; retrieving metadata pertaining to the complex type from information stored in a data cartridge for the complex type without requiring definition of a function interface for the complex type using data types that are defined in the event processing language; and generating, based on the metadata, executable instructions for executing the query; wherein the reference to the complex type within the query specifies both (a) a class identifier of a class written in said language distinct from the event processing language and (b) a method identifier of a particular method of the class; wherein the class written in said language distinct from the event processing language includes a plurality of methods that are invocable as complex types referenced in queries expressed in the event processing language; and wherein the particular method is one of the plurality of methods. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
Specification