code: public static <T> T getFake(Class<T> type) {
      // If initMocks hasn't been called, read from the default fake provider map. This allows static
      // fields to be initialized with fakes in tests that don't use the GwtMockito test runner.
      T fake = getFakeFromProviderMap(
          type,
          bridge != null ? bridge.registeredProviders : DEFAULT_FAKE_PROVIDERS);
      if (fake == null) {
        throw new IllegalArgumentException("No fake provider has been registered "
            + "for " + type.getSimpleName() + ". Call useProviderForType to "
            + "register a provider before calling getFake.");
      }
      return fake;
    }
docs: Returns a new fake object of the given type assuming a fake provider is
  available for that type. Additional fake providers can be registered via
  {@link #useProviderForType}.
  
  @param type type to get a fake object for
  @return a fake of the given type, as returned by an applicable provider
  @throws IllegalArgumentException if no provider for the given type (or one
  of its superclasses) has been registered