code: @RequiresPermission(Manifest.permission.INTERNET)
    protected static Observable<Boolean> observeInternetConnectivity(
        final InternetObservingStrategy strategy, final int initialIntervalInMs,
        final int intervalInMs, final String host, final int port, final int timeoutInMs,
        final int httpResponse, final ErrorHandler errorHandler) {
      checkStrategyIsNotNull(strategy);
      return strategy.observeInternetConnectivity(initialIntervalInMs, intervalInMs, host, port,
          timeoutInMs, httpResponse, errorHandler);
    }
docs: Observes connectivity with the Internet in a given time interval.
  
  @param strategy for observing Internet connectivity
  @param initialIntervalInMs in milliseconds determining the delay of the first connectivity
  check
  @param intervalInMs in milliseconds determining how often we want to check connectivity
  @param host for checking Internet connectivity
  @param port for checking Internet connectivity
  @param timeoutInMs for pinging remote host in milliseconds
  @param httpResponse expected HTTP response code indicating that connection is established
  @param errorHandler for handling errors during connectivity check
  @return RxJava Observable with Boolean - true, when we have connection with host and false if
  not