Skip to content

Commit 50a5e0e

Browse files
committed
Impl: REST call to retrieve the workspace resources
1 parent b67f452 commit 50a5e0e

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

src/main/kotlin/com/coder/gateway/sdk/CoderRestClientService.kt

+10
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import com.coder.gateway.sdk.v2.CoderV2RestFacade
77
import com.coder.gateway.sdk.v2.models.BuildInfo
88
import com.coder.gateway.sdk.v2.models.User
99
import com.coder.gateway.sdk.v2.models.Workspace
10+
import com.coder.gateway.sdk.v2.models.WorkspaceResource
1011
import com.google.gson.Gson
1112
import com.google.gson.GsonBuilder
1213
import com.intellij.openapi.components.Service
@@ -93,4 +94,13 @@ class CoderRestClientService {
9394
}
9495
return buildInfoResponse.body()!!
9596
}
97+
98+
fun workspaceResources(workspace: Workspace): List<WorkspaceResource> {
99+
val workspaceResourcesResponse = retroRestClient.workspaceResourceByBuild(workspace.latestBuild.id).execute()
100+
if (!workspaceResourcesResponse.isSuccessful) {
101+
throw IllegalStateException("Could not retrieve resources for ${workspace.name} workspace :${workspaceResourcesResponse.code()}, reason: ${workspaceResourcesResponse.message()}")
102+
}
103+
104+
return workspaceResourcesResponse.body()!!
105+
}
96106
}

src/main/kotlin/com/coder/gateway/sdk/v2/CoderV2RestFacade.kt

+6
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,11 @@ package com.coder.gateway.sdk.v2
33
import com.coder.gateway.sdk.v2.models.BuildInfo
44
import com.coder.gateway.sdk.v2.models.User
55
import com.coder.gateway.sdk.v2.models.Workspace
6+
import com.coder.gateway.sdk.v2.models.WorkspaceResource
67
import retrofit2.Call
78
import retrofit2.http.GET
9+
import retrofit2.http.Path
10+
import java.util.UUID
811

912
interface CoderV2RestFacade {
1013

@@ -22,4 +25,7 @@ interface CoderV2RestFacade {
2225

2326
@GET("api/v2/buildinfo")
2427
fun buildInfo(): Call<BuildInfo>
28+
29+
@GET("api/v2/workspacebuilds/{buildID}/resources")
30+
fun workspaceResourceByBuild(@Path("buildID") build: UUID): Call<List<WorkspaceResource>>
2531
}

0 commit comments

Comments
 (0)