Component loading based on user interactions
AssigneeMicrosoft Technology Licensing, LLC
InventorsGautam Bhakar, Kevin Christopher Clement, Kenneth Ping-Kuen Chau
Life of this patent
Estimating the term…
Abstract
Provided herein are systems, methods, and software for implementing information management applications. In an implementation, an application embodied in program instructions stored on one or more computer readable storage media comprises components and a control component. The components communicate requests to invoke others of the components. The control component handles the requests by at least determining whether or not any component identified by the requests has already been downloaded or is yet to be downloaded. The control component invokes the component when already downloaded and retrieves the component when not yet downloaded.
Claims20
A computing apparatus comprising:
- one or more computer readable storage media;
- at least one processor;
- and
- an information management application for interfacing with an information exchange service and comprising program instructions stored on the one or more computer readable storage media, wherein the program instructions, when executed by the at least one processor, direct the at least one processor to at least:
- upon starting the information management application, communicate a request for a boot script to the information exchange service to identify an initial subset of a plurality of components to include in the boot script based at least in part on user interaction patterns with the information management application;
- in response to the information exchange service identifying the initial subset of the plurality of components, load the initial subset of the plurality of components into an execution environment;
- and
- attempt to load each of a remaining subset of the plurality of components in accordance with a loading order and load any component not yet loaded but invoked by another component ahead of a corresponding place in the loading order.
A method of operating a service environment to facilitate an information exchange service with respect to an information management application, the method comprising:
- in response to the information management application starting in a local environment remote from the service environment receiving a request for a boot script for identifying, based at least in part on user interaction patterns with the information management application, an initial subset of a plurality of components associated with the information management application to include in the boot script and load from a staging environment to the local environment prior to a remaining subset of the plurality of components in accordance with a loading order;
- and
- communicating to the information management application the boot script, where the boot script indicates which of the plurality of components to include in the initial subset of the plurality of components for loading into the local environment and the loading order for the remaining subset of the plurality of components, where any component not yet loaded but invoked by another component is loaded ahead of a corresponding place in the loading order.
One or more computer readable storage media having stored thereon an information management application comprising program instructions executable by a processing system, the program instructions comprising:
- a plurality of components that when executed by the processing system directs the processing system to at least communicate requests to invoke other components of the plurality of components;
- and
- a control component that when executed by the processing system directs the processing system to at least:
- load an initial subset of the plurality of components into an execution environment prior to loading at least a remaining subset of the plurality of components into the execution environment in accordance with a loading order;
- and
- responsive to the requests, determine whether or not a component identified by the requests has already been loaded into the execution environment or is yet to be loaded into the execution environment, invoke the component when already loaded and, when not yet loaded, load the component ahead of a place for the component in the loading order.
Dependencies are inferred from the claim text.