Application activation framework
First Claim
1. A computer system, comprising:
- one or more processors; and
one or more computer-readable storage media having stored thereon computer-executable instructions that are executable by the one or more processors to cause the computer system to facilitate an integration of one or more applications with an operating system, and further to cause the computer system to perform at least the following;
identify one or more extensible functionalities of an operating system, wherein each of the one or more extensible functionalities is an integrated functionality of the operating system and is controllable at least by the operating system;
notify the operating system that at least one of the one or more extensible functionalities of the operating system is serviceable by an application, wherein the notification is communicated to the operating system through one or more entry points of the application;
activate the application to service the at least one of the one or more extensible functionalities of the operating system, wherein the application services the at least one of the one or more extensible functionalities of the operating system according to a contract received from the operating system, the contract being received by the application through at least one of the one or more entry points;
obtain a contract object through at least one of the one or more entry points of the application, wherein the contract object identifies the contract and specifies how the application is to fulfill the contract;
perform processing specified by the contract object to fulfill the contract; and
communicate results of the processing to the operating system.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques for application activation are described herein. An operating system (OS) can be configured to incorporate various extension points that are serviceable through contracts defining individual invocations of extensible functionality. The extensible functionality is integrated as part of the OS and controlled by the OS in a centralized manner. However, the specific implementations of the extensible functionally are offloaded to applications using the contracts. For example, the OS can include or otherwise make use of a centralized application activation component that employs an object-oriented approach to invoke applications to perform particular contracts. The application activation component can pass information describing a particular contract to activate a designated application and enable the application to service the contract in the manner specified by the OS. In this way, the manner in which contracts are handled by application code can be managed and coordinated through a centralized application activation component.
-
Citations
20 Claims
-
1. A computer system, comprising:
-
one or more processors; and one or more computer-readable storage media having stored thereon computer-executable instructions that are executable by the one or more processors to cause the computer system to facilitate an integration of one or more applications with an operating system, and further to cause the computer system to perform at least the following; identify one or more extensible functionalities of an operating system, wherein each of the one or more extensible functionalities is an integrated functionality of the operating system and is controllable at least by the operating system; notify the operating system that at least one of the one or more extensible functionalities of the operating system is serviceable by an application, wherein the notification is communicated to the operating system through one or more entry points of the application; activate the application to service the at least one of the one or more extensible functionalities of the operating system, wherein the application services the at least one of the one or more extensible functionalities of the operating system according to a contract received from the operating system, the contract being received by the application through at least one of the one or more entry points; obtain a contract object through at least one of the one or more entry points of the application, wherein the contract object identifies the contract and specifies how the application is to fulfill the contract; perform processing specified by the contract object to fulfill the contract; and communicate results of the processing to the operating system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method, implemented at a computer system that includes one or more processors, for facilitating an integration of one or more applications with an operating system, the method comprising:
-
identifying one or more extensible functionalities of an operating system, wherein each of the one or more extensible functionalities is an integrated functionality of the operating system and is controllable at least by the operating system; notifying an operating system that at least one of the one or more extensible functionalities of the operating system is serviceable by an application, wherein the notification is communicated to the operating system through one or more entry points of the application; activating the application to service the at least one of the one or more extensible functionalities of the operating system, wherein the application services the at least one of the one or more extensible functionalities of the operating system according to a contract received from the operating system, the contract being received by the application through at least one of the one or more entry points; obtaining a contract object through at least one of the one or more entry points of the application, wherein the contract object identifies the contract and specifies how the application is to fulfill the contract; performing processing specified by the contract object to fulfill the contract; responsive to a determination that the contract was not successfully fulfilled, communicating to the operating system that the contract was not successfully fulfilled and initiating a retry of the processing specified by the contract; and responsive to the retry of the processing specified by the contract being successful, communicating results of the processing to the operating system. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A computing device comprising:
-
one or more processors; and computer-readable storage media storing computer-executable instructions that are executable by the one or more processors to cause the computing device to implement an application activation component to provide a common pathway for application activation across different applications and runtime platforms of the computing device, and further to cause the computing device to perform at least the following; identify one or more extensible functionalities of an operating system of the computing device, wherein each of the one or more extensible functionalities is an integrated functionality of the operating system and is controllable at least by the operating system; implement an object-oriented protocol to activate one or more applications to service the one or more extensible functionalities of the operating system; obtain a request to service at least one of the one or more extensible functionalities of the operating system; and activate an application to service the request, wherein the activation includes the following; selecting the application from among multiple applications that are each registered with the operating system to service the at least one of the one or more extensible functionalities of the operating system; and communicating an object to an entry point of the application, wherein the entry point is designated for the at least one of the one or more extensible functionalities of the operating system, and wherein the object is defined in accordance with the object-oriented protocol and configured to cause the entry point to initiate processing by the application to service the requested at least one of the one or more extensible functionalities of the operating system. - View Dependent Claims (17, 18, 19, 20)
-
Specification