Patent ID: 7711783

Claim:
A method implemented in a resource-constrained device, said method comprising: receiving, by a generic event notification service executing on said resource-constrained device, a registration request to register an event listener for receipt of an event, wherein said event listener is associated with an event-consuming application executing on said resource-constrained device; said event listener is executed in a context of said event-consuming application; and said event is one of (i) an event in a set of predefined events provided by said generic event notification service and (ii) an application-specific event, wherein said set of predefined events includes a resource-constrained device platform event and a standard application event; registering, by said generic event notification service, said event listener for receipt of said event even though said generic event notification service finds that an event-producing application for said event is not yet deployed thereby allowing the late binding of said event-producing application; receiving, by said generic event notification service executing on said resource-constrained device, an event fired by a first event-producing application executing on said resource-constrained device, wherein said event fired by said first event-producing application is a fired event, and said fired event has a unique event identifier, and further wherein said generic event notification service controls communications between applications, executing on said resource-constrained device, using events; and said fired event comprises a shareable interface object, wherein said shareable interface object allows an application executing in a first context, different from a second context in which said first event-producing application is executing, to communicate directly with said first event-producing application by bypassing a firewall separating said first and second contexts; determining, by said generic event notification service, whether said first event-producing application is authorized to fire said fired event; determining, by said generic event notification service, event-consuming applications authorized by said first event-producing application to receive said fired event upon said generic event notification service finding said first event-producing application is authorized to fire said fired event; and forwarding, by said generic event notification service, said fired event to each event-consuming application authorized by said first event-producing application to receive said fired event, wherein each event-consuming application can communicate directly with said first event-producing application using said fired event to bypass said firewall.