Move the caching and logic for the ConnectivityModule internally, since it isn't being used externally.

RELNOTES: None.
PiperOrigin-RevId: 252446380
diff --git a/src/main/java/com/google/devtools/build/lib/BUILD b/src/main/java/com/google/devtools/build/lib/BUILD
index 487e2e3..8eba51a 100644
--- a/src/main/java/com/google/devtools/build/lib/BUILD
+++ b/src/main/java/com/google/devtools/build/lib/BUILD
@@ -841,7 +841,7 @@
         "//src/main/java/com/google/devtools/build/lib/buildeventservice",
         "//src/main/java/com/google/devtools/build/lib/dynamic",
         "//src/main/java/com/google/devtools/build/lib/metrics:metrics_module",
-        "//src/main/java/com/google/devtools/build/lib/network:connectivity",
+        "//src/main/java/com/google/devtools/build/lib/network:noop_connectivity",
         "//src/main/java/com/google/devtools/build/lib/outputfilter",
         "//src/main/java/com/google/devtools/build/lib/profiler/callcounts:callcounts_module",
         "//src/main/java/com/google/devtools/build/lib/profiler/memory:allocationtracker_module",
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/Bazel.java b/src/main/java/com/google/devtools/build/lib/bazel/Bazel.java
index 3e9afb0..1ba566e 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/Bazel.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/Bazel.java
@@ -61,7 +61,7 @@
           com.google.devtools.build.lib.dynamic.DynamicExecutionModule.class,
           com.google.devtools.build.lib.bazel.rules.BazelRulesModule.class,
           com.google.devtools.build.lib.bazel.rules.BazelStrategyModule.class,
-          com.google.devtools.build.lib.network.ConnectivityModule.class,
+          com.google.devtools.build.lib.network.NoOpConnectivityModule.class,
           com.google.devtools.build.lib.buildeventservice.BazelBuildEventServiceModule.class,
           com.google.devtools.build.lib.profiler.callcounts.CallcountsModule.class,
           com.google.devtools.build.lib.profiler.memory.AllocationTrackerModule.class,
diff --git a/src/main/java/com/google/devtools/build/lib/buildeventservice/BUILD b/src/main/java/com/google/devtools/build/lib/buildeventservice/BUILD
index a49091f..ad37851 100644
--- a/src/main/java/com/google/devtools/build/lib/buildeventservice/BUILD
+++ b/src/main/java/com/google/devtools/build/lib/buildeventservice/BUILD
@@ -36,8 +36,8 @@
         "//src/main/java/com/google/devtools/build/lib/buildeventstream",
         "//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:build_event_stream_java_proto",
         "//src/main/java/com/google/devtools/build/lib/buildeventstream/transports",
-        "//src/main/java/com/google/devtools/build/lib/network:connectivity",
         "//src/main/java/com/google/devtools/build/lib/network:connectivity_status",
+        "//src/main/java/com/google/devtools/build/lib/network:noop_connectivity",
         "//src/main/java/com/google/devtools/build/lib/profiler",
         "//src/main/java/com/google/devtools/build/lib/vfs",
         "//src/main/java/com/google/devtools/common/options",
diff --git a/src/main/java/com/google/devtools/build/lib/network/BUILD b/src/main/java/com/google/devtools/build/lib/network/BUILD
index dbc730e..349014c 100644
--- a/src/main/java/com/google/devtools/build/lib/network/BUILD
+++ b/src/main/java/com/google/devtools/build/lib/network/BUILD
@@ -8,14 +8,11 @@
 )
 
 java_library(
-    name = "connectivity",
-    srcs = ["ConnectivityModule.java"],
+    name = "noop_connectivity",
+    srcs = ["NoOpConnectivityModule.java"],
     deps = [
         ":connectivity_status",
         "//src/main/java/com/google/devtools/build/lib:runtime",
-        "//src/main/java/com/google/devtools/build/lib:util",
-        "//src/main/java/com/google/devtools/common/options",
-        "//third_party:guava",
     ],
 )
 
diff --git a/src/main/java/com/google/devtools/build/lib/network/ConnectivityModule.java b/src/main/java/com/google/devtools/build/lib/network/ConnectivityModule.java
deleted file mode 100644
index 85343b8..0000000
--- a/src/main/java/com/google/devtools/build/lib/network/ConnectivityModule.java
+++ /dev/null
@@ -1,88 +0,0 @@
-// Copyright 2019 The Bazel Authors. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-//    http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package com.google.devtools.build.lib.network;
-
-import com.google.common.cache.Cache;
-import com.google.common.cache.CacheBuilder;
-import com.google.common.collect.ImmutableList;
-import com.google.devtools.build.lib.network.ConnectivityStatus.Status;
-import com.google.devtools.build.lib.runtime.BlazeModule;
-import com.google.devtools.build.lib.runtime.Command;
-import com.google.devtools.build.lib.runtime.CommandEnvironment;
-import com.google.devtools.build.lib.util.AbruptExitException;
-import com.google.devtools.common.options.Converters.DurationConverter;
-import com.google.devtools.common.options.Option;
-import com.google.devtools.common.options.OptionDocumentationCategory;
-import com.google.devtools.common.options.OptionEffectTag;
-import com.google.devtools.common.options.OptionsBase;
-import java.time.Duration;
-
-/** Stores network status for Bazel-adjacent services, usually remote build and BES. */
-public class ConnectivityModule extends BlazeModule implements ConnectivityStatusProvider {
-
-  /** Options that define the behavior of the Connectivity Modules. */
-  public static class ConnectivityOptions extends OptionsBase {
-    @Option(
-        name = "connectivity_check_frequency",
-        defaultValue = "5s",
-        documentationCategory = OptionDocumentationCategory.REMOTE,
-        effectTags = {OptionEffectTag.BAZEL_INTERNAL_CONFIGURATION},
-        converter = DurationConverter.class,
-        help =
-            "How often to perform a connectivity and reachability check for remote services "
-                + "(eg. 5s). 0 disables the check and assumes connectivity.")
-    public Duration cacheLifetime;
-  }
-
-  /**
-   * Attempts to retrieve and return the specified service's status from the cache, calculating it
-   * if it's not present in the cache.
-   *
-   * @param service the name of the service we want to determine connectivity status for
-   * @param cache a cache that stores the current connectivity status for each service
-   * @return the connectivity status for the specified service
-   */
-  protected ConnectivityStatus determineConnectivity(String service, Cache<String, Status> cache) {
-    return new ConnectivityStatus(Status.OK, /* serviceInfo= */ "");
-  }
-
-  private Duration cacheLifetime;
-  private Cache<String, Status> cache;
-
-  @Override
-  public Iterable<Class<? extends OptionsBase>> getCommandOptions(Command command) {
-    return ImmutableList.of(ConnectivityOptions.class);
-  }
-
-  @Override
-  public void beforeCommand(CommandEnvironment env) throws AbruptExitException {
-    ConnectivityOptions options = env.getOptions().getOptions(ConnectivityOptions.class);
-    Duration newCacheLifetime = options.cacheLifetime;
-    // Initialize the cache if we haven't yet, or if the options have changed.
-    // TODO(steinman): Make this a LoadingCache where load() calls determineConnectivity().
-    if (cache == null || !newCacheLifetime.equals(cacheLifetime)) {
-      cache = CacheBuilder.newBuilder().expireAfterWrite(newCacheLifetime).build();
-      cacheLifetime = newCacheLifetime;
-    }
-  }
-
-  @Override
-  public ConnectivityStatus getStatus(String service) {
-    if (cacheLifetime.isZero()) {
-      return new ConnectivityStatus(Status.OK, /* serviceInfo= */ "");
-    }
-    return determineConnectivity(service, cache);
-  }
-}
diff --git a/src/main/java/com/google/devtools/build/lib/network/NoOpConnectivityModule.java b/src/main/java/com/google/devtools/build/lib/network/NoOpConnectivityModule.java
new file mode 100644
index 0000000..75c28bb
--- /dev/null
+++ b/src/main/java/com/google/devtools/build/lib/network/NoOpConnectivityModule.java
@@ -0,0 +1,29 @@
+// Copyright 2019 The Bazel Authors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//    http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package com.google.devtools.build.lib.network;
+
+import com.google.devtools.build.lib.network.ConnectivityStatus.Status;
+import com.google.devtools.build.lib.runtime.BlazeModule;
+
+/**
+ * No-op implementation of {@link ConnectivityStatusProvider}, which always returns an OK status.
+ */
+public class NoOpConnectivityModule extends BlazeModule implements ConnectivityStatusProvider {
+
+  @Override
+  public ConnectivityStatus getStatus(String service) {
+    return new ConnectivityStatus(Status.OK, /* serviceInfo= */ "");
+  }
+}
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/BUILD b/src/test/java/com/google/devtools/build/lib/buildtool/BUILD
index 5d38918..b008e6e 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/BUILD
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/BUILD
@@ -33,7 +33,7 @@
         "//src/main/java/com/google/devtools/build/lib/collect/nestedset",
         "//src/main/java/com/google/devtools/build/lib/exec/local:options",
         "//src/main/java/com/google/devtools/build/lib/includescanning",
-        "//src/main/java/com/google/devtools/build/lib/network:connectivity",
+        "//src/main/java/com/google/devtools/build/lib/network:noop_connectivity",
         "//src/main/java/com/google/devtools/build/lib/sandbox",
         "//src/main/java/com/google/devtools/build/lib/shell",
         "//src/main/java/com/google/devtools/build/lib/standalone",
diff --git a/src/test/java/com/google/devtools/build/lib/buildtool/util/BlazeRuntimeWrapper.java b/src/test/java/com/google/devtools/build/lib/buildtool/util/BlazeRuntimeWrapper.java
index 5a02509..4ea6a29 100644
--- a/src/test/java/com/google/devtools/build/lib/buildtool/util/BlazeRuntimeWrapper.java
+++ b/src/test/java/com/google/devtools/build/lib/buildtool/util/BlazeRuntimeWrapper.java
@@ -33,7 +33,6 @@
 import com.google.devtools.build.lib.exec.BinTools;
 import com.google.devtools.build.lib.exec.ExecutionOptions;
 import com.google.devtools.build.lib.exec.local.LocalExecutionOptions;
-import com.google.devtools.build.lib.network.ConnectivityModule;
 import com.google.devtools.build.lib.packages.StarlarkSemanticsOptions;
 import com.google.devtools.build.lib.pkgcache.LoadingOptions;
 import com.google.devtools.build.lib.pkgcache.PackageCacheOptions;
@@ -148,7 +147,6 @@
                 PackageCacheOptions.class,
                 StarlarkSemanticsOptions.class,
                 BlazeCommandEventHandler.Options.class,
-                ConnectivityModule.ConnectivityOptions.class,
                 SandboxOptions.class));
 
     for (BlazeModule module : runtime.getBlazeModules()) {