code: private void readRemoteConfig(URL remoteConfig, URL fallbackConfig, boolean cacheRemoteConfig,
                                    String cacheFileName) throws IOException {
          // Check if offline cache exists
          checkForOfflineCacheOrLoadFallback(fallbackConfig, cacheFileName);
          if (!isOfflineMode())
              getRemoteConfig(remoteConfig, cacheRemoteConfig, cacheFileName);
      }
docs: Reads the config from the remote url synchronously. If this fails for any reason and a
  cached config is available, the cached config is used instead. If the
  remote config can't be read and no cached version is available, the
  fallbackConfig is used.
  
  @param remoteConfig      The {@code URL} of the remote config to be read.
  @param fallbackConfig    The config file to be read in case the {@code remoteConfig}
  cannot be downloaded and no cached version is available.
  @param cacheRemoteConfig If {@code true}, the remote config will be cached once
  downloaded for offline use.
  @throws IOException If the specified fallbackConfig does not exist or cannot be read.