Patent ID: 8677329

Claim:
A computer implemented method, comprising: in response to receiving a compilation request from an application to compile a source code, the compilation request including a preference to compile the source code, searching a cache for a compiled code that satisfies the compilation request, wherein the compilation request comprises security settings associated with the application, wherein the security settings associated with the application comply with security metadata in the compiled code if the compiled code satisfies the compilation request; and sending a particular reply message including the compiled code to the application in response to the compilation request if the compiled code that satisfies the compilation request is available from the cache, wherein if the compiled code that satisfies the compilation request is not found within the cache, performing: selecting a compiler from a plurality of compilers based on the preference of the compilation request, wherein the compiler is configured to compile source codes from a plurality of independent client applications; instructing the compiler to build the compiled code from the source code for the compilation request; detecting if the compiler fails to build the compiled code for the compilation request or if the compiler has successfully built the compiled code; sending a reply message to the application in response to the compilation request, wherein the reply message includes the compiled code if the compiled code is successfully built for the compilation request, wherein the reply message indicates failure of the compiler if the compiler fails to build the compiled code for the compilation request; automatically receiving, in response to the reply message indicating the failure, an alternative compilation request including an alternative preference from the application to compile the source code, wherein the alternative compilation request comprises the security settings associated with the application, the alternative compilation request indicating an alternative compiler allowed to compile the source code; selecting the alternative compiler from the compilers based on the alternative compilation request to build the compiled code according to the alternative preference, wherein the alternative compiler matches the security settings of the application; compiling the source code using the alternative compiler; providing the application with an alternative reply including the compiled code built for the alternative compilation request; and storing a copy of the compiled code with the security metadata, wherein the compiled code is available for future compilation request.