Uniform resource discovery and API layering
AssigneeMicrosoft Corporation
InventorsDouglas K. Brubacher, Dale A. Sather, Ralph Allen Lipe, Roland J. Ayala
Life of this patent
Estimating the term…
Abstract
In response to receiving a request for function instances, underlying function instances are identified using API layer data. The requested function instances are then created based on the underlying function instances.
Claims17
A method to be performed on a computer to provide programmatic access to different types of computing resources provided by the computer, the computing resources comprising hardware devices and software components of the computer, where different resources have corresponding different resource-specific APIs for directly accessing the resources, and where a discovery module is provided to be used by applications to obtain function instances corresponding to the resources, the discovery module having an API used by the applications to submit requests and return corresponding function instances, a function instance comprising metadata about its corresponding resource and activation data for activating the resource-specific API of the corresponding resource, the method comprising:
- receiving from an application a request for one or more function instances, where the request is received by the discovery module;
- identifying underlying function instances using API layer data, where the underlying function instances implement resource-specific APIs that are specific to resources that correspond to the underlying function instances, wherein API layer data specifies an underlying function instance resource category, the underlying function resource category defining a generic type of resource that includes resources with similar functionality and that is used to identify at least two underlying function instances that are in the resource category but which have different resource-specific APIs;
- creating the requested one or more function instances corresponding to the underlying function instances, the creating including copying metadata about a resource from an underlying function instance to a function instance being created, and copying metadata from the API layer data to the function instance being created;
- and
- returning to the application the created one or more function instances, each function instance containing a metadata field and an activation field, the metadata field including the copied metadata, and the activation field containing information for activating an implementation of a resource-specific API for accessing the corresponding resource.
One or more computer-readable media having embodied therein components to be used by a computing device to enable providing of function instances that comprise metadata and activation data for corresponding types of computing and software resources on the computer, the function instances being provided by an implementation of an API through which a generic category of resource can be specified and through applications can request and receive function instances for resources in the generic category, where the resources are accessible through respective different interfaces, implementations of which can be activated using the function instances, the components comprising:
- means for receiving a request for one or more function instances;
- means for identifying underlying function instances based on API layer data that specifies an underlying function instance resource category and an underlying function instance resource subcategory, where the underlying function instances implement resource-specific APIs that are specific to resources that correspond to the underlying function instances, and where the underlying function resource category defines a generic type of resource that includes resources with similar functionality, where the underlying function resource category is used to identify at least two underlying function instances that are in the resource category but which have different resource-specific APIs;
- and
- means for creating the requested one or more function instances based on information specified in the underlying function instances that were identified using the underlying function resource category, the creating including copying metadata about a resource from the resource's identified underlying function to the function instance being created.
Dependencies are inferred from the claim text.