Application programming interface naming using collaborative services
AssigneeInternational Business Machines Corporation
InventorsSwaminathan Balasubramanian, Andrew R. Jones, Brian M. O'Connell, Keith R. Walker
Life of this patent
Estimating the term…
Abstract
A method, computer system, and computer program product for improving application programming interface naming. An alternate name is received for a target application programming interface feature from a consumer developer. In addition, an indirection to the application programming interface feature is generated based on the alternate name. Then, the indirection to the application programming interface feature is transmitted to an indirections repository.
Claims14
A method for improving names of methods or classes of a target application programming interface, the method, performed on an application programming interface consumer computer, comprising the steps of:
- receiving a copy of the target application programming interface from another computer, wherein the target application programming interface has an original name to one of the methods or classes;
- receiving an alternate name for a the original name of one of the methods or classes of the target application programming interface;
- generating, by a compiler, an indirection to the one method or class of the target application programming interface based on the alternate name, wherein the indirection points from the alternate name created by an application programming interface consumer for the one method or class of the target application programming interface to the original name created by an application programming interface provider for the one method or class of the target application programming interface;
- replacing, by the compiler, the original name with the alternate name for the one method or class of the target application programming interface, and in response, the compiler completing compilation of code for the one method or class of the target application programming interface;
- after completing the compilation, determining whether an application programming interface change log indicates a modification to the indirection corresponding to the one method or class of the target application programming interface;
- responsive to a determination that the application programming interface change log indicates a modification to the indirection corresponding to the one method or class of the target application programming interface, updating the indirection;
- and
- transmitting, via a network, the indirection to the one method or class of the application programming interface to an indirections repository located in the another computer that stores indirections generated by other computers for current methods or classes associated with local application programming interface libraries.
A computer system for improving names of methods or classes of a target application programming interface, the computer system comprising:
- one or more processors, one or more computer-readable memories, and one or more computer-readable storage devices and program instructions, stored on the one or more storage devices for execution by the one or more processors via the one or more memories, the program instructions comprising:
- program instructions to receive a copy of the target application programming interface from another computer, wherein the target application programming interface has an original name to one of the methods or classes;
- program instructions to receive an alternate name for the original name of one of the methods or classes of the target application programming interface;
- program instructions to generate, by a compiler, an indirection to the one method or class of the target application programming interface based on the alternate name, wherein the indirection points from the alternate name created by an application programming interface consumer for the one method or class of the target application programming interface to the original name created by an application programming interface provider for the one method or class of the target application programming interface;
- program instructions to replace, by the compiler, the original name with the alternate name for the one method or class of the target application programming interface, and in response, the compiler completes compilation of code for the one method or class of the target application programming interface;
- program instructions, after completing the compilation, to determine whether an application programming interface change log indicates a modification to the indirection corresponding to the one method or class of the target application programming interface;
- program instructions, responsive to a determination that the application programming interface change log indicates a modification to the indirection corresponding to the one method or class of the target application programming interface, to update the indirection;
- and
- program instructions to transmit, via a network, the indirection to the one method or class of the target application programming interface to an indirections repository located in the another computer that stores indirections generated by other computers for current methods or classes associated with local application programming interface libraries.
A computer program product for improving names of methods or classes of a target application programming interface, the computer program product comprising:
- one or more computer-readable storage devices and program instructions, stored on the one or more computer-readable storage devices, the program instructions comprising:
- program instructions to receive a copy of the target application programming interface from another computer, wherein the target application programming interface has an original name to one of the methods or classes;
- program instructions to receive an alternate name for the original name of one of the methods or classes of the target application programming interface;
- program instructions to generate, by a compiler, an indirection to the one method or class of the target application programming interface based on the alternate name, wherein the indirection points from the alternate name created by an application programming interface consumer for the one method or class of the target application programming interface to the original name created by an application programming interface provider for the one method or class of the target application programming interface;
- program instructions to replace, by the compiler, the original name with the alternate name for the one method or class of the target application programming interface, and in response, the compiler completes compilation of code for the one method or class of the target application programming interface;
- program instructions, after completing the compilation, to determine whether an application programming interface change log indicates a modification to the indirection corresponding to the one method or class of the target application programming interface;
- program instructions, responsive to a determination that the application programming interface change log indicates a modification to the indirection corresponding to the one method or class of the target application programming interface, to update the indirection;
- and
- program instructions to transmit, via a network, the indirection to the one method or class of the target application programming interface to an indirections repository located in the another computer that stores indirections generated by other computers for current methods or classes associated with local application programming interface libraries.
Dependencies are inferred from the claim text.