Claims
- 1. A method for changing a version of an application transparently on a client, comprising:
determining when to begin changing a current version to a new version; and when:
determining resources for the client to change to the new version; and supplying the client with the resources; when the resources are located on a server, then downloading the resources from the server, storing the resources locally on the client; and when the resources are stored locally on the client, obtaining the locally stored resources; determining when to switch to the new version on the client; and switching to the new version based on the determination; wherein the client is configured to execute the new version with a subset of the resources associated with the new version.
- 2. The method of claim 1, further comprising identifying resources that belong to the current version; and identifying resources that belong to the new version.
- 3. The method of claim 1, wherein determining the resources to change to the new version, further comprises creating a purge list identifying the resources to purge from the current version using the identified resources that belong to the current version; and the identified resources that belong to the new version.
- 4. The method of claim 3, wherein the purge list further comprises a list of the resources to add to the current version in order to change to the new version.
- 5. The method of claim 4, further comprising supplying the purge list to the client.
- 6. The method of claim 1, wherein identifying the resources that belong to the current version further comprises creating a list of the resources for the current version.
- 7. The method of claim 6, wherein identifying the resources that belong to the new version further comprises creating a list of the resources for the new version.
- 8. The method of claim 1, wherein the version may be changed on the client in the background.
- 9. The method of claim 8, wherein the determination to switch to the new version on the client further comprises determining a minimum set of resources needed to execute the new version.
- 10. The method of claim 7, wherein determining the resources that are needed for the new version, further comprises comparing the list of the resources from the current version to the list of resources in the new version; and in response to the comparison indicating resources to add to the current version and resources to purge from the current version.
- 11. The method of claim 10, further comprising comparing resources in the current version with resources in the new version to determine if there are differences between the resources.
- 12. A system for changing a version of an application transparently on a client, comprising:
a server, comprising:
a network connection configured to communicate with the client; a memory configured to store resources associated with a version of an application; a process arranged to provide resources to the client; a client, comprising:
a network connection configured to communicate with the server; a memory configured to store resources associated with a version of an application; and a process arranged to receive resources associated with a version of an application; and a process configured to perform the following actions:
determine when to change a current version of an application on the client to a new version; and when:
identify resources that belong to the current version; identify resources that belong to the new version; determine resources that are needed for the new version based on the identification of resources that belong to the current version and resources that belong to the new version; and supply the client with the needed resources; when the resources are located on the server then download the resources from the server, store the resource in the memory on the client, modify a data structure to indicate that the resource is stored locally, and provide the resources to the client, wherein the client is configured to execute the new version with a subset of the resources that belong to the new version.
- 13. The system of claim 12, wherein the action to determine the resources that are needed for the new version based on the identification of the resources that belong to the current version and the resources that belong to the new version, further comprises creating a purge list identifying the resources to purge from the current version.
- 14. The system of claim 13, wherein the purge list further comprises a list of the resources to add to the current version in order to change to the new version.
- 15. The system of claim 14, further comprising supplying the purge list to the client.
- 16. The system of claim 12, wherein identifying the resources that belong to the current version further comprises creating a list of the resources for the current version.
- 17. The system of claim 16, wherein identifying the resources that belong to the new version further comprises creating a list of the resources for the new version.
- 18. The system of claim 12, wherein the version may be changed on the client in the background.
- 19. The system of claim 18, wherein a determination is made as to when the client may switch to the new version from the current version.
- 20. The system of claim 17, wherein determining the resources that are needed for the new version, further comprises comparing the list of the resources from the current version to the list of resources in the new version; and in response to the comparison indicating resources to add to the current version and resources to purge from the current version.
- 21. The system of claim 20, further comprising comparing resources in the current version with resources in the new version to determine if there are differences between the resources.
- 22. A system for changing a version of an application transparently on a client, comprising:
means for determining when to begin changing a current version to a new version; and when:
means for determining resources that are needed for the new version; and means for supplying the client with the needed resources; when the resources are located on a server then means for downloading the resources from the server, means for storing the resource locally on the client; and means for providing the resources to the client, wherein the client is configured to execute the new version with a subset of the resources that are needed the new version.
RELATED APPLICATION
[0001] This application is a Utility Patent application based on a previously filed U.S. Provisional Patent application, U.S. Ser. No. 60/341,079 filed on Dec. 12, 2001, the benefit of the filing date of which is hereby claimed under 35 U.S.C. § 119(e).
Provisional Applications (1)
|
Number |
Date |
Country |
|
60341079 |
Dec 2001 |
US |