From 85cf695c1f68ed86fd31b4d89d094c69c27311c3 Mon Sep 17 00:00:00 2001 From: Hector Castejon Diaz Date: Thu, 19 Mar 2026 09:01:43 +0000 Subject: [PATCH] Add cloud field to HostMetadata Port of Go SDK #1512. Adds a `cloud` field (String, `@JsonProperty("cloud")`) to the HostMetadata class, with getter and updated constructor. Includes deserialization and constructor tests. Co-authored-by: Isaac --- .../sdk/core/oauth/HostMetadata.java | 14 +++++ .../sdk/core/oauth/HostMetadataTest.java | 62 +++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 databricks-sdk-java/src/test/java/com/databricks/sdk/core/oauth/HostMetadataTest.java diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/core/oauth/HostMetadata.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/core/oauth/HostMetadata.java index d45844262..3962f75d9 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/core/oauth/HostMetadata.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/core/oauth/HostMetadata.java @@ -20,6 +20,9 @@ public class HostMetadata { @JsonProperty("workspace_id") private String workspaceId; + @JsonProperty("cloud") + private String cloud; + public HostMetadata() {} public HostMetadata(String oidcEndpoint, String accountId, String workspaceId) { @@ -28,6 +31,13 @@ public HostMetadata(String oidcEndpoint, String accountId, String workspaceId) { this.workspaceId = workspaceId; } + public HostMetadata(String oidcEndpoint, String accountId, String workspaceId, String cloud) { + this.oidcEndpoint = oidcEndpoint; + this.accountId = accountId; + this.workspaceId = workspaceId; + this.cloud = cloud; + } + public String getOidcEndpoint() { return oidcEndpoint; } @@ -39,4 +49,8 @@ public String getAccountId() { public String getWorkspaceId() { return workspaceId; } + + public String getCloud() { + return cloud; + } } diff --git a/databricks-sdk-java/src/test/java/com/databricks/sdk/core/oauth/HostMetadataTest.java b/databricks-sdk-java/src/test/java/com/databricks/sdk/core/oauth/HostMetadataTest.java new file mode 100644 index 000000000..c7c2007c5 --- /dev/null +++ b/databricks-sdk-java/src/test/java/com/databricks/sdk/core/oauth/HostMetadataTest.java @@ -0,0 +1,62 @@ +package com.databricks.sdk.core.oauth; + +import static org.junit.jupiter.api.Assertions.*; + +import com.fasterxml.jackson.databind.ObjectMapper; +import org.junit.jupiter.api.Test; + +class HostMetadataTest { + + private final ObjectMapper mapper = new ObjectMapper(); + + @Test + void testDeserializeWithCloud() throws Exception { + String json = + "{\"oidc_endpoint\":\"https://example.com/oidc\"," + + "\"account_id\":\"acc-123\"," + + "\"workspace_id\":\"ws-456\"," + + "\"cloud\":\"aws\"}"; + + HostMetadata meta = mapper.readValue(json, HostMetadata.class); + + assertEquals("https://example.com/oidc", meta.getOidcEndpoint()); + assertEquals("acc-123", meta.getAccountId()); + assertEquals("ws-456", meta.getWorkspaceId()); + assertEquals("aws", meta.getCloud()); + } + + @Test + void testDeserializeWithoutCloud() throws Exception { + String json = + "{\"oidc_endpoint\":\"https://example.com/oidc\"," + + "\"account_id\":\"acc-123\"," + + "\"workspace_id\":\"ws-456\"}"; + + HostMetadata meta = mapper.readValue(json, HostMetadata.class); + + assertEquals("https://example.com/oidc", meta.getOidcEndpoint()); + assertEquals("acc-123", meta.getAccountId()); + assertEquals("ws-456", meta.getWorkspaceId()); + assertNull(meta.getCloud()); + } + + @Test + void testConstructorWithCloud() { + HostMetadata meta = new HostMetadata("https://example.com/oidc", "acc-123", "ws-456", "gcp"); + + assertEquals("https://example.com/oidc", meta.getOidcEndpoint()); + assertEquals("acc-123", meta.getAccountId()); + assertEquals("ws-456", meta.getWorkspaceId()); + assertEquals("gcp", meta.getCloud()); + } + + @Test + void testConstructorWithoutCloud() { + HostMetadata meta = new HostMetadata("https://example.com/oidc", "acc-123", "ws-456"); + + assertEquals("https://example.com/oidc", meta.getOidcEndpoint()); + assertEquals("acc-123", meta.getAccountId()); + assertEquals("ws-456", meta.getWorkspaceId()); + assertNull(meta.getCloud()); + } +}