ApiProxy (Google App Engine API for Java)

com.google.apphosting.api

Class ApiProxy

  • java.lang.Object
    • com.google.apphosting.api.ApiProxy


  • public class ApiProxy
    extends java.lang.Object
    ApiProxy is a static class that serves as the collection point for all API calls from user code into the application server. It is responsible for proxying makeSyncCall() calls to a delegate, which actually implements the API calls. It also stores an Environment for each thread, which contains additional user-visible information about the request.
    • Method Detail

      • makeAsyncCall

        public static java.util.concurrent.Future<byte[]> makeAsyncCall(java.lang.String packageName,
                                                                        java.lang.String methodName,
                                                                        byte[] request,
                                                                        ApiProxy.ApiConfig apiConfig)
        Make an asynchronous call to the specified method in the specified API package.

        Note: if you have not installed a Delegate and called setEnvironmentForCurrentThread in this thread before calling this method, it will act like no API calls are available (i.e. the returned Future will throw CallNotFoundException).

        There is a limit to the number of simultaneous asynchronous API calls (currently 100). Invoking this method while this number of API calls are outstanding will block.

        Parameters:
        packageName - the name of the API package.
        methodName - the name of the method within the API package.
        request - a byte array containing the serialized form of the request protocol buffer.
        apiConfig - that specifies API-specific configuration parameters.
        Returns:
        a Future that will resolve to a byte array containing the serialized form of the response protocol buffer on success, or throw one of the exceptions documented for makeSyncCall(String, String, byte[], ApiConfig) on failure.
      • flushLogs

        public static void flushLogs()
        Synchronously flush all pending application logs.
      • setDelegate

        public static void setDelegate(ApiProxy.Delegate aDelegate)
        Sets a delegate to which we will proxy requests. This should not be used from user-code.
      • getDelegate

        public static ApiProxy.Delegate getDelegate()
        Gets the delegate to which we will proxy requests. This should really only be called from test-code where, for example, you might want to downcast and invoke methods on a specific implementation that you happen to know has been installed.
      • setEnvironmentForCurrentThread

        public static void setEnvironmentForCurrentThread(ApiProxy.Environment environment)
        Sets an environment for the current thread. This should not be used from user-code.
      • clearEnvironmentForCurrentThread

        public static void clearEnvironmentForCurrentThread()
        Removes any environment associated with the current thread. This should not be used from user-code.
      • setEnvironmentFactory

        public static void setEnvironmentFactory(ApiProxy.EnvironmentFactory factory)
        Set the EnvironmentFactory instance to use, which will be used to create Environment instances when a thread local one is not set. This should not be used from user-code, and it should only be called once, with a value that must not be null.
      • getRequestThreads

        public static java.util.List<java.lang.Thread> getRequestThreads()
        Returns a list of all threads which are currently running requests.

Monitor your resources on the go

Get the Google Cloud Console app to help you manage your projects.

Send feedback about...

App Engine standard environment for Java