diff --git a/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/BUILD b/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/BUILD index b332534be2..b0369afc6a 100644 --- a/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/BUILD +++ b/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/BUILD @@ -25,6 +25,7 @@ java_library( srcs = glob(["*.java"]), deps = [ "//src/devtools/mobileharness/fe/v6/service/proto/host:host_resources_java_proto", + "//src/java/com/google/devtools/mobileharness/fe/v6/service/util", "//src/java/com/google/devtools/mobileharness/shared/util/auto:auto_value", "@maven//:com_google_guava_guava", "@maven//:javax_inject_jsr330_api", diff --git a/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/HostAuxiliaryInfoProvider.java b/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/HostAuxiliaryInfoProvider.java index b84a2ed799..5f8b65992a 100644 --- a/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/HostAuxiliaryInfoProvider.java +++ b/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/HostAuxiliaryInfoProvider.java @@ -18,6 +18,7 @@ import com.google.common.util.concurrent.ListenableFuture; import com.google.devtools.mobileharness.fe.v6.service.proto.host.DiagnosticLink; +import com.google.devtools.mobileharness.fe.v6.service.util.UniverseScope; import java.util.List; import java.util.Optional; @@ -25,12 +26,70 @@ public interface HostAuxiliaryInfoProvider { /** Fetches release information and host attributes from internal services. */ - ListenableFuture> getHostReleaseInfo(String hostName); + ListenableFuture> getHostReleaseInfo( + String hostName, UniverseScope universe); + + /** + * @deprecated Use {@link #getHostReleaseInfo(String, UniverseScope)} instead. TODO: Remove after + * all callers are migrated to UniverseScope. + */ + @Deprecated + default ListenableFuture> getHostReleaseInfo( + String hostName, String universe) { + return getHostReleaseInfo(hostName, UniverseScope.fromString(universe)); + } + + /** + * @deprecated Use {@link #getHostReleaseInfo(String, UniverseScope)} instead. TODO: Remove after + * all callers are migrated to UniverseScope. + */ + @Deprecated + default ListenableFuture> getHostReleaseInfo(String hostName) { + return getHostReleaseInfo(hostName, new UniverseScope.SelfUniverse()); + } /** Fetches the legacy pass-through flags for the lab server. */ - ListenableFuture> getPassThroughFlags(String hostName); + ListenableFuture> getPassThroughFlags(String hostName, UniverseScope universe); + + /** + * @deprecated Use {@link #getPassThroughFlags(String, UniverseScope)} instead. TODO: Remove after + * all callers are migrated to UniverseScope. + */ + @Deprecated + default ListenableFuture> getPassThroughFlags(String hostName, String universe) { + return getPassThroughFlags(hostName, UniverseScope.fromString(universe)); + } + + /** + * @deprecated Use {@link #getPassThroughFlags(String, UniverseScope)} instead. TODO: Remove after + * all callers are migrated to UniverseScope. + */ + @Deprecated + default ListenableFuture> getPassThroughFlags(String hostName) { + return getPassThroughFlags(hostName, new UniverseScope.SelfUniverse()); + } /** Fetches the diagnostic links for the host. */ ListenableFuture> getDiagnosticLinks( - String hostName, Optional labType); + String hostName, Optional labType, UniverseScope universe); + + /** + * @deprecated Use {@link #getDiagnosticLinks(String, Optional, UniverseScope)} instead. TODO: + * Remove after all callers are migrated to UniverseScope. + */ + @Deprecated + default ListenableFuture> getDiagnosticLinks( + String hostName, Optional labType, String universe) { + return getDiagnosticLinks(hostName, labType, UniverseScope.fromString(universe)); + } + + /** + * @deprecated Use {@link #getDiagnosticLinks(String, Optional, UniverseScope)} instead. TODO: + * Remove after all callers are migrated to UniverseScope. + */ + @Deprecated + default ListenableFuture> getDiagnosticLinks( + String hostName, Optional labType) { + return getDiagnosticLinks(hostName, labType, new UniverseScope.SelfUniverse()); + } } diff --git a/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/OssHostAuxiliaryInfoProviderImpl.java b/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/OssHostAuxiliaryInfoProviderImpl.java index 11ff548f69..2577ac83e9 100644 --- a/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/OssHostAuxiliaryInfoProviderImpl.java +++ b/src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider/OssHostAuxiliaryInfoProviderImpl.java @@ -21,6 +21,7 @@ import com.google.common.collect.ImmutableList; import com.google.common.util.concurrent.ListenableFuture; import com.google.devtools.mobileharness.fe.v6.service.proto.host.DiagnosticLink; +import com.google.devtools.mobileharness.fe.v6.service.util.UniverseScope; import java.util.List; import java.util.Optional; import javax.inject.Inject; @@ -32,18 +33,20 @@ public class OssHostAuxiliaryInfoProviderImpl implements HostAuxiliaryInfoProvid OssHostAuxiliaryInfoProviderImpl() {} @Override - public ListenableFuture> getHostReleaseInfo(String hostName) { + public ListenableFuture> getHostReleaseInfo( + String hostName, UniverseScope universe) { return immediateFuture(Optional.empty()); } @Override - public ListenableFuture> getPassThroughFlags(String hostName) { + public ListenableFuture> getPassThroughFlags( + String hostName, UniverseScope universe) { return immediateFuture(Optional.empty()); } @Override public ListenableFuture> getDiagnosticLinks( - String hostName, Optional labType) { + String hostName, Optional labType, UniverseScope universe) { return immediateFuture(ImmutableList.of()); } } diff --git a/src/javatests/com/google/devtools/mobileharness/fe/v6/service/host/provider/BUILD b/src/javatests/com/google/devtools/mobileharness/fe/v6/service/host/provider/BUILD index ed50f614e4..3bd360637e 100644 --- a/src/javatests/com/google/devtools/mobileharness/fe/v6/service/host/provider/BUILD +++ b/src/javatests/com/google/devtools/mobileharness/fe/v6/service/host/provider/BUILD @@ -26,6 +26,7 @@ java_library( srcs = glob(["*.java"]), deps = [ "//src/java/com/google/devtools/mobileharness/fe/v6/service/host/provider", + "//src/java/com/google/devtools/mobileharness/fe/v6/service/util", "//src/javatests/com/google/devtools/mobileharness/builddefs:truth", "@maven//:junit_junit", ], diff --git a/src/javatests/com/google/devtools/mobileharness/fe/v6/service/host/provider/OssHostAuxiliaryInfoProviderImplTest.java b/src/javatests/com/google/devtools/mobileharness/fe/v6/service/host/provider/OssHostAuxiliaryInfoProviderImplTest.java index c0b380ce59..7ddc4b4aba 100644 --- a/src/javatests/com/google/devtools/mobileharness/fe/v6/service/host/provider/OssHostAuxiliaryInfoProviderImplTest.java +++ b/src/javatests/com/google/devtools/mobileharness/fe/v6/service/host/provider/OssHostAuxiliaryInfoProviderImplTest.java @@ -18,6 +18,7 @@ import static com.google.common.truth.Truth.assertThat; +import com.google.devtools.mobileharness.fe.v6.service.util.UniverseScope; import java.util.Optional; import org.junit.Before; import org.junit.Test; @@ -36,17 +37,28 @@ public void setUp() { @Test public void getHostReleaseInfo_returnsEmpty() throws Exception { - assertThat(ossHostAuxiliaryInfoProviderImpl.getHostReleaseInfo("host").get()).isEmpty(); + assertThat( + ossHostAuxiliaryInfoProviderImpl + .getHostReleaseInfo("host", new UniverseScope.SelfUniverse()) + .get()) + .isEmpty(); } @Test public void getPassThroughFlags_returnsEmpty() throws Exception { - assertThat(ossHostAuxiliaryInfoProviderImpl.getPassThroughFlags("host").get()).isEmpty(); + assertThat( + ossHostAuxiliaryInfoProviderImpl + .getPassThroughFlags("host", new UniverseScope.SelfUniverse()) + .get()) + .isEmpty(); } @Test public void getDiagnosticLinks_returnsEmpty() throws Exception { - assertThat(ossHostAuxiliaryInfoProviderImpl.getDiagnosticLinks("host", Optional.empty()).get()) + assertThat( + ossHostAuxiliaryInfoProviderImpl + .getDiagnosticLinks("host", Optional.empty(), new UniverseScope.SelfUniverse()) + .get()) .isEmpty(); } }