Customized library management system
First Claim
1. A computer program product stored on at least one computer storage medium encoding a computer program for executing on a computer system a computer process for generating, before execution of an application requested by a client, a customized library for execution of the requested application by the client, the client including one or more client-loaded types already loaded on the client, the computer process comprising:
- receiving an application request for the application not loaded on the client;
identifying one or more application-referenced types developed by third parties on which the application depends for execution but which are not part of the application;
identifying the one or more client-loaded types;
comparing the one or more application-referenced types to the one or more client-loaded types to identify one or more client-needed types, wherein client-needed types comprise one or more application-referenced types that are not client-loaded types;
receiving a device profile specifying a characteristic of the client;
identifying more than one client-needed type candidate, based on the client-needed types identified in the operation of the identifying the one or more client-needed types;
selecting one of the client-needed type candidates based on the characteristic identified in the device profile to provide one of the client needed types;
generating the customized library, including the one or more client-needed types; and
separately sending the customized library and the application to the client for execution.
2 Assignments
0 Petitions
Accused Products
Abstract
A customized library management method and system generates a customized class library needed for executing an application in a client system. In response to an identification of a given application, the server determines the appropriate classes and methods to include in a library to be sent to the client based on certain parameters. The customized class library includes classes that are required by the application and that are not yet loaded on the client. The requested application and the customized class library are then transmitted to the client for execution. Within a customized class library management system, a client system can deflate, delete and regenerate applications and class libraries in accordance with resource requirements of the client and other criteria.
-
Citations
29 Claims
-
1. A computer program product stored on at least one computer storage medium encoding a computer program for executing on a computer system a computer process for generating, before execution of an application requested by a client, a customized library for execution of the requested application by the client, the client including one or more client-loaded types already loaded on the client, the computer process comprising:
-
receiving an application request for the application not loaded on the client; identifying one or more application-referenced types developed by third parties on which the application depends for execution but which are not part of the application; identifying the one or more client-loaded types; comparing the one or more application-referenced types to the one or more client-loaded types to identify one or more client-needed types, wherein client-needed types comprise one or more application-referenced types that are not client-loaded types; receiving a device profile specifying a characteristic of the client; identifying more than one client-needed type candidate, based on the client-needed types identified in the operation of the identifying the one or more client-needed types; selecting one of the client-needed type candidates based on the characteristic identified in the device profile to provide one of the client needed types; generating the customized library, including the one or more client-needed types; and separately sending the customized library and the application to the client for execution. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A customized library management system executing on a processor for managing a customized class library, the system comprising:
-
an application server module receiving an application request and transmitting a requested application to a client; a receiver module receiving a device profile specifying a characteristic of the client; an identification module identifying more than one client-needed type candidate, a selection module wherein the selection module selects one of the client-needed type candidates based on the characteristics identified in a device profile to provide one of a client needed type; and a customized library generator identifying application-referenced types, the customized library generator also creating a customized library before execution of the requested application by the client and separately sending the customized library to the client, the customized library including one or more client-needed types, which are application-referenced types developed by third parties not loaded on the client but required by the application to execute.
-
-
21. A customized library management system executing on a processor for separately receiving a customized library associated with an application, the system comprising:
-
a catalog identifying one or more client-loaded types that are loaded on a client; a filter module comparing the catalog to a list of one more application-referenced types, which are developed by third parties and required by the application to execute, and generating a client composite list to identify one or more client-needed types, the client-needed types comprising one or more of the application-referenced-types that are not client-loaded types; a receiver module receiving a device profile specifying a characteristic of the client; an identification module identifying more than one client-needed type candidate, based on the client needed types identified in the operation of identifying the one or more client-needed types; a selection module wherein the selection module selects one of the client-needed type candidates based on the characteristics identified in a device profile to provide one of a client needed type; and a customized library generator loading the client-needed types from the client composite list into the customized library before execution of the application by the client; and a client receipt module for separately receiving the customized library and the application. - View Dependent Claims (22, 23, 24, 25, 26, 27)
-
-
28. A computer program product stored on at least one computer storage medium encoding a computer program for executing on a server computer system a computer process for generating, before execution of an application requested by a client, a customized library for execution of the requested application by the client, the client including one or more client-loaded types already loaded on the client, the computer process comprising:
-
receiving an application request for the application not loaded on the client; identifying one or more application-referenced types developed by third parties on which the application depends for execution but which are not part of the application; sending a list of the one or more application-referenced types; receiving a client composite list of the client-needed types, wherein client-needed types comprise one or more application-referenced types that are not client-loaded types; receiving a device profile specifying a characteristic of the client; identifying more than one client-needed type candidate, based on the client-needed types identified in the operation of the identifying the one or more client-needed types; selecting one of the client-needed type candidates based on the characteristic identified in the device profile to provide one of the client needed types; generating the customized library, including the one or more client-needed types from the client composite list; and separately sending the customized library and the application to the client for execution.
-
-
29. A computer program product stored on at least one computer storage medium encoding a computer program for executing on a client computer system a computer process for receiving, before execution of an application requested by a client, a customized library for execution of the requested application by the client, the client including one or more client-loaded types already loaded on the client, the computer process comprising:
-
sending an application request for the application not loaded on the client; receiving a list of application-referenced types for the application; comparing the list of application-referenced types to a catalog of the one or more client-loaded types; determining one or more client-needed types, wherein the one or more client-needed types are application-referenced types that are not client-loaded types; creating a client composite list including the one or more client-needed types; sending the client composite list; receiving a device profile specifying a characteristic of the client; identifying more than one client-needed type candidate, based on the client-needed types determined in the operation of the determining the one or more client-needed types; selecting one of the client-needed type candidates based on the characteristic identified in the device profile to provide one of the client needed types; receiving the customized library, including the one or more client-needed types in the client composite list; separately receiving the application; and executing the application.
-
Specification