Object oriented mechanism for dynamically constructing customized implementations to enforce restrictions
First Claim
1. In a system comprising an application, a framework, and an implementation class which provides an implementation for a particular service, a method performed by the framework, comprising:
- receiving a request from an application for a customized implementation of a particular service;
instantiating an implementation class which provides an implementation for the particular service to give rise to an implementation instance;
determining a set of zero or more restrictions to be imposed on said customized implementation;
instantiating a wrapper class to give rise to a wrapper instance, said wrapper instance comprising enforcement logic for enforcing said restrictions;
encapsulating said implementation instance and said restrictions within said wrapper instance; and
providing said wrapper instance to the application as said customized implementation;
wherein said wrapper instance comprises one or more invocable methods,wherein said implementation instance comprises one or more invocable methods, andwherein encapsulating comprises;
mapping the one or more invocable methods of said wrapper instance to the one or more invocable methods of said implementation instance;
wherein determining the set of zero or more restrictions comprises;
accessing information specifying one or more limitations; and
processing said limitations to derive said restrictions; and
wherein the particular service is an encryption/decryption service, and wherein said information comprises a set of one or more default encryption limitations.
2 Assignments
0 Petitions
Accused Products
Abstract
An object oriented mechanism for dynamically constructing service implementations to enforce restrictions on services provided to an application is disclosed. When an application desires an implementation for a particular service, the application makes a request to a framework. The framework receives the request and, in response, determines what restrictions, if any, need to be imposed on the requested implementation. Once the restrictions are determined, the framework dynamically constructs the requested implementation. The requested implementation is constructed such that it incorporates a general implementation of the service, the restrictions, and enforcement logic for enforcing the restrictions on the general implementation. Once the requested implementation is constructed, it is provided to the application. Thereafter, the application invokes the requested implementation directly for services. Since the requested implementation incorporates the restrictions and enforcement logic for enforcing the restrictions, it is not necessary for the application to further interact with the framework. The requested implementation itself will provide the services, and will guarantee that the restrictions are enforced. By dynamically constructing requested implementations in this manner, the framework ensures that the necessary restrictions are enforced on the services provided to the application.
-
Citations
69 Claims
-
1. In a system comprising an application, a framework, and an implementation class which provides an implementation for a particular service, a method performed by the framework, comprising:
-
receiving a request from an application for a customized implementation of a particular service; instantiating an implementation class which provides an implementation for the particular service to give rise to an implementation instance; determining a set of zero or more restrictions to be imposed on said customized implementation; instantiating a wrapper class to give rise to a wrapper instance, said wrapper instance comprising enforcement logic for enforcing said restrictions; encapsulating said implementation instance and said restrictions within said wrapper instance; and providing said wrapper instance to the application as said customized implementation; wherein said wrapper instance comprises one or more invocable methods, wherein said implementation instance comprises one or more invocable methods, and wherein encapsulating comprises; mapping the one or more invocable methods of said wrapper instance to the one or more invocable methods of said implementation instance; wherein determining the set of zero or more restrictions comprises; accessing information specifying one or more limitations; and processing said limitations to derive said restrictions; and wherein the particular service is an encryption/decryption service, and wherein said information comprises a set of one or more default encryption limitations. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. In a system comprising an application and an implementation class which provides an implementation for a particular service, a framework comprising:
-
a mechanism for receiving a request from an application for a customized implementation of a particular service; a mechanism for instantiating an implementation class which provides an implementation for the particular service to give rise to an implementation instance; a mechanism for determining a set of zero or more restrictions to be imposed on said customized implementation; a mechanism for instantiating a wrapper class to give rise to a wrapper instance, said wrapper instance comprising enforcement logic for enforcing said restrictions; a mechanism for encapsulating said implementation instance and said restrictions within said wrapper instance; and a mechanism for providing said wrapper instance to the application as said customized implementation; wherein said wrapper instance comprises one or more invocable methods, wherein said implementation instance comprises one or more invocable methods, and wherein the mechanism for encapsulating comprises; a mechanism for mapping the one or more invocable methods of said wrapper instance to the one or more invocable methods of said implementation instance; wherein the mechanism for determining the set of zero or more restrictions comprises; a mechanism for accessing information specifying one or more limitations; and a mechanism for processing said limitations to derive said restrictions; and wherein the particular service is an encryption/decryption service, and wherein said information comprises a set of one or more default encryption limitations. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
-
47. In a system comprising an application and an implementation class which provides an implementation for a particular service, a computer readable medium having stored thereon instructions which, when executed by one or more processors, cause the one or more processors to implement a framework which dynamically constructs a customized implementation, said computer readable medium comprising:
-
instructions for causing one or more processors to receive a request from an application for a customized implementation of a particular service; instructions for causing one or more processors to instantiate an implementation class which provides an implementation for the particular service to give rise to an implementation instance; instructions for causing one or more processors to determine a set of zero or more restrictions to be imposed on said customized implementation; instructions for causing one or more processors to instantiate a wrapper class to give rise to a wrapper instance, said wrapper instance comprising enforcement logic for enforcing said restrictions; instructions for causing one or more processors to encapsulate said implementation instance and said restrictions within said wrapper instance; and instructions for causing one or more processors to provide said wrapper instance to the application as said customized implementation; wherein said wrapper instance comprises one or more invocable methods, wherein said implementation instance comprises one or more invocable methods, and wherein the instructions for causing one or more processors to encapsulate comprises; instructions for causing one or more processors to map the one or more invocable methods of said wrapper instance to the one or more invocable methods of said implementation instance; wherein the instructions for causing one or more processors to determine the set of zero or more restrictions comprises; instructions for causing one or more processors to access information specifying one or more limitations; and instructions for causing one or more processors to process said limitations to derive said restrictions; and wherein the particular service is an encryption/decryption service, and wherein said information comprises a set of one or more default encryption limitations. - View Dependent Claims (48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69)
-
Specification