IP Library Granted Patent US 9,075,966
Granted Patent B2
US 9,075,966 · App. 14/165,293 · Granted Jul 7, 2015

System and method for loading application classes

Inventor: Thomas Wheeler (Frisco, TX)
Assignee: Oscad Remote Limited Liability Company
G06F21/121G06F21/51G06F21/53G06F21/54G06F2221/2141G06F2221/2149H04L63/105
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,075,966
App. No.
14/165,293
Granted
Jul 7, 2015
Kind
B2
Abstract

In an application, variants of a class may be generated and associated with different security permissions for the application. When a class is to be loaded, a determination is made as to the application's security permissions, e.g. by decoding a security token. The class is then retrieved from a repository that stores class variants matching the required security level. The retrieved class variant, which may have a full or a reduced functionality as appropriate for the security permission may then by loaded.

Claims (44)

1. A method, comprising:

determining, at a processing device, a class invoked by an application at run time;

decoding, at the processing device, a security token encoded in the application upon installation of the application; and

retrieving, from at least one memory store, a class variant based at least in part on decoding the security token;

wherein the variant defines a level of functionality of the application consistent with the security token.

2. The method of claim 1 , further comprising decoding, at the processing device, a security permission encoded in the security token.

3. The method of claim 1 , wherein each of a plurality of class variants comprise a same namespace or a same application programming interface.

4. The method of claim 1 ,

wherein a first class variant provides a first functionality; and

wherein a second class variant provides a reduced functionality in comparison to the first class variant.

5. The method of claim 1 , further comprising associating each of a plurality of class variants with a class variant repository.

6. The method of claim 1 , further comprising storing a plurality of class variants for the class in a repository with a plurality of class variants for at least another class having equivalent security permissions.

7. A device, comprising:

a memory device configured to store instructions; and

a processing device configured to execute the instructions stored in the memory device to:

determine a class invoked by an application at run time;

decode a security token encoded in the application upon installation of the application to extract a security permission; and

load a class variant from a corresponding class store based at least in part on the decoded security token;

wherein the class variant is configured to define a level of functionality of the application consistent with the security permission.

8. The device of claim 7 , wherein the processing device is further configured to execute the instructions stored in the memory device to associate each of a plurality of class variants with corresponding security permissions.

9. The device of claim 7 , wherein each of a plurality of class variants comprise a same namespace or a same application programming interface.

10. The device of claim 7 , wherein the processing device is further configured to execute the instructions stored in the memory device to associate each of a plurality of class variants with a class variant repository.

11. The device of claim 7 , wherein the processing device is further configured to execute the instructions stored in the memory device to store the class variant for the class together with a class variant for at least another class having equivalent permissions encoded in corresponding security tokens.

12. The device of claim 7 ,

wherein a first class variant provides a first functionality and is associated with a first security permission encoded in the security token; and

wherein a second class variant provides a reduced functionality in comparison to the first class variant and is associated with a second security permission encoded in the security token.

13. A computer-readable storage device including computer-executable instructions stored thereon that, when executed by a processing device, configure the processing device to perform operations comprising:

decoding a security permission encoded in a security token upon installation of the application;

determining a class invoked by the application at run time of the application; and

accessing a variant of the class from a store corresponding to the class based at least in part on the security permission decoded from the security token;

wherein the variant of the class is associated with a level of functionality of the application consistent with the security permission.

14. The computer-readable storage device of claim 13 , wherein the computer-executable instructions, when executed by the processing device, further configure the processing device to associate each of a plurality of class variants with corresponding security permissions.

15. The computer-readable storage device of claim 13 , wherein each of a plurality of class variants comprise a same namespace or a same application programming interface.

16. The computer-readable storage device of claim 13 , wherein the computer-executable instructions, when executed by the processing device, further configure the processing device to associate each of a plurality of class variants with a class variant repository.

17. The computer-readable storage device of claim 13 , wherein the computer-executable instructions, when executed by the processing device, further configure the processing device to store the class variant for the class together with a class variant for at least another class having equivalent permissions encoded in corresponding security tokens.

18. The computer-readable storage device of claim 13 ,

wherein a first class variant provides a first functionality; and

wherein a second class variant provides a reduced functionality in comparison to the first class variant.

19. The computer-readable storage device of claim 18 ,

wherein the first class variant corresponds to a first security permission encoded in the security token; and

wherein the second class variant corresponds to a second security permission encoded in the security token.

20. The computer-readable storage device of claim 19 , wherein the computer-executable instructions, when executed by the processing device, further configure the processing device to:

store the first class variant in a first repository; and

store the second class variant in a second repository distinct from the first repository.

Assignments (2)
MERGER Recorded Dec 30, 2015
From: OSOCAD REMOTE LIMITED LIABILITY COMPANY
To: OL SECURITY LIMITED LIABILITY COMPANY
Reel/Frame 037387/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2014
From: RECURSION SOFTWARE, INC.
To: OSOCAD REMOTE LIMITED LIABILITY COMPANY
Reel/Frame 032061/0570 →
Continuity (2)
Continuation 12629934 · Dec 3, 2009
Related Publication 20140143895A1 · May 22, 2014