US2021036944A1PendingUtilityA1

Ranking service implementations for a service interface

59
Assignee: ORACLE INT CORPPriority: Mar 29, 2017Filed: Oct 19, 2020Published: Feb 4, 2021
Est. expiryMar 29, 2037(~10.7 yrs left)· nominal 20-yr term from priority
G06F 9/45504G06F 9/449G06F 9/44521H04L 67/51G06F 9/4552G06F 9/45525G06F 9/45516H04L 43/16G06F 8/41H04L 67/16
59
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Techniques for ranking service implementations for a service interface are disclosed. Each module that includes a service implementation may be referred to as a “service provider module.” The ranking of the service implementations, for the particular service interface, may be based on modular information. Modular information includes information associated with module dependencies and/or service dependencies corresponding to one or more of a candidate set of service provider modules. Additionally or alternatively, the ranking of the service implementations, for the particular service interface, may be based on statically-available information and/or dynamically-available information associated with one or more of a candidate set of service implementations.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A non-transitory computer readable medium comprising instructions which, when executed by one or more hardware processors, cause performance of operations comprising:
 identifying a plurality of classes that implement a service interface;   identifying a set of one or more attributes associated with each of the plurality of classes,
 wherein the set of attributes associated with a particular class, of the plurality of classes, is based on at least one of: (a) information generated by analyzing contents of the particular class, (b) information associated with classes depend upon by the particular class, and (c) information generated by emulating or executing the particular class in a virtual environment; 
   wherein the set of attributes are not explicitly included in the plurality of classes; and   based on at least one of the set of attributes associated with each of the plurality of classes:
 selecting a first class of the plurality of classes for implementing the service interface. 
   
     
     
         2 . The medium of  claim 1 , wherein the operations further comprise: generating a ranking of the plurality of classes for implementing the service interface, wherein the first class is selected responsive to determining that the first class is ranked highest in the ranking of the plurality of classes for implementing the service interface. 
     
     
         3 . The medium of  claim 2 , wherein a particular caller specifies, as an input to a lookup procedure that obtains instances of the plurality of classes that implement the service interface, at least one of the set of attributes to be prioritized in generating the ranking of at least the subset of the plurality of classes. 
     
     
         4 . The medium of  claim 2 , wherein the ranking of a particular class, of the plurality of classes, is based at least on a source code of the particular class. 
     
     
         5 . The medium of  claim 1 , wherein the attributes associated with the particular class, of the plurality of classes, indicate a security level associated with the class. 
     
     
         6 . The medium of  claim 1 , wherein the attributes associated with the particular class, of the plurality of classes, provide an indication of whether or not the class is lightweight. 
     
     
         7 . The medium of  claim 1 , wherein the information generated by analyzing the contents of the particular class or the information associated with classes depend upon by the particular class comprises at least one of:
 (a) a code footprint of the particular class;   (b) a code footprint of the particular class and code that is directly or indirectly depended upon by the particular class;   (c) computational constructs in the particular class;   (d) computational constructs in the particular class and code that is directly or indirectly depended upon by the particular class; and   (e) a number of classes directly or indirectly depended upon by the particular class.   
     
     
         8 . The medium of  claim 1 , wherein the information generated by emulating or executing the particular class in a virtual environment comprises at least one of:
 (a) emulated or estimated memory footprint for executing the particular class; and   (b) emulated or estimated processor cycles for executing the particular class.   
     
     
         9 . The medium of  claim 1 , wherein the set of attributes is determined based on one or more system configurations. 
     
     
         10 . The medium of  claim 1 , wherein each class, of the plurality of classes, is a service implementation to implement a particular service. 
     
     
         11 . A method, comprising:
 identifying a plurality of classes that implement a service interface;   identifying a set of one or more attributes associated with each of the plurality of classes,
 wherein the set of attributes associated with a particular class, of the plurality of classes, is based on at least one of: (a) information generated by analyzing contents of the particular class, (b) information associated with classes depend upon by the particular class, and (c) information generated by emulating or executing the particular class in a virtual environment; 
   wherein the set of attributes are not explicitly included in the plurality of classes; and   based on at least one of the set of attributes associated with each of the plurality of classes:
 selecting a first class of the plurality of classes for implementing the service interface, 
   wherein the method is performed by at least one device including a hardware processor.   
     
     
         12 . The method of  claim 11 , wherein the operations further comprise: generating a ranking of the plurality of classes for implementing the service interface, wherein the first class is selected responsive to determining that the first class is ranked highest in the ranking of the plurality of classes for implementing the service interface. 
     
     
         13 . The method of  claim 12 , wherein a particular caller specifies, as an input to a lookup procedure that obtains instances of the plurality of classes that implement the service interface, at least one of the set of attributes to be prioritized in generating the ranking of at least the subset of the plurality of classes. 
     
     
         14 . The method of  claim 12 , wherein the ranking of a particular class, of the plurality of classes, is based at least on a source code of the particular class. 
     
     
         15 . The method of  claim 11 , wherein the attributes associated with the particular class, of the plurality of classes, indicate a security level associated with the class. 
     
     
         16 . The method of  claim 11 , wherein the attributes associated with the particular class, of the plurality of classes, provide an indication of whether or not the class is lightweight. 
     
     
         17 . A system comprising:
 at least one device including a hardware processor;   the system being configured to perform operations comprising:   identifying a plurality of classes that implement a service interface;   identifying a set of one or more attributes associated with each of the plurality of classes,
 wherein the set of attributes associated with a particular class, of the plurality of classes, is based on at least one of: (a) information generated by analyzing contents of the particular class, (b) information associated with classes depend upon by the particular class, and (c) information generated by emulating or executing the particular class in a virtual environment; 
   wherein the set of attributes are not explicitly included in the plurality of classes; and   based on at least one of the set of attributes associated with each of the plurality of classes:
 selecting a first class of the plurality of classes for implementing the service interface. 
   
     
     
         18 . The system of  claim 17 , wherein the operations further comprise: generating a ranking of the plurality of classes for implementing the service interface, wherein the first class is selected responsive to determining that the first class is ranked highest in the ranking of the plurality of classes for implementing the service interface. 
     
     
         19 . The system of  claim 18 , wherein the ranking of a particular class, of the plurality of classes, is based at least on a source code of the particular class. 
     
     
         20 . The system of  claim 17 , wherein the attributes associated with the particular class, of the plurality of classes, indicate a security level associated with the class.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.