Skip to content

Commit 138e75b

Browse files
feat(api): update via SDK Studio (#41)
1 parent 42451b3 commit 138e75b

File tree

10 files changed

+2018
-2
lines changed

10 files changed

+2018
-2
lines changed

.stats.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
configured_endpoints: 13
1+
configured_endpoints: 14

openlayer-java-core/src/main/kotlin/com/openlayer/api/models/CommitCreateParams.kt

+673
Large diffs are not rendered by default.

openlayer-java-core/src/main/kotlin/com/openlayer/api/models/CommitCreateResponse.kt

+951
Large diffs are not rendered by default.
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,23 @@
11
// File generated from our OpenAPI spec by Stainless.
22

3+
@file:Suppress("OVERLOADS_INTERFACE") // See https://youtrack.jetbrains.com/issue/KT-36102
4+
35
package com.openlayer.api.services.async
46

7+
import com.openlayer.api.core.RequestOptions
8+
import com.openlayer.api.models.CommitCreateParams
9+
import com.openlayer.api.models.CommitCreateResponse
510
import com.openlayer.api.services.async.commits.TestResultServiceAsync
11+
import java.util.concurrent.CompletableFuture
612

713
interface CommitServiceAsync {
814

915
fun testResults(): TestResultServiceAsync
16+
17+
/** Create a new commit (project version) in a project. */
18+
@JvmOverloads
19+
fun create(
20+
params: CommitCreateParams,
21+
requestOptions: RequestOptions = RequestOptions.none()
22+
): CompletableFuture<CommitCreateResponse>
1023
}

openlayer-java-core/src/main/kotlin/com/openlayer/api/services/async/CommitServiceAsyncImpl.kt

+44
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,61 @@
33
package com.openlayer.api.services.async
44

55
import com.openlayer.api.core.ClientOptions
6+
import com.openlayer.api.core.RequestOptions
7+
import com.openlayer.api.core.handlers.errorHandler
8+
import com.openlayer.api.core.handlers.jsonHandler
9+
import com.openlayer.api.core.handlers.withErrorHandler
10+
import com.openlayer.api.core.http.HttpMethod
11+
import com.openlayer.api.core.http.HttpRequest
12+
import com.openlayer.api.core.http.HttpResponse.Handler
13+
import com.openlayer.api.core.json
14+
import com.openlayer.api.errors.OpenlayerError
15+
import com.openlayer.api.models.CommitCreateParams
16+
import com.openlayer.api.models.CommitCreateResponse
617
import com.openlayer.api.services.async.commits.TestResultServiceAsync
718
import com.openlayer.api.services.async.commits.TestResultServiceAsyncImpl
19+
import java.util.concurrent.CompletableFuture
820

921
class CommitServiceAsyncImpl
1022
constructor(
1123
private val clientOptions: ClientOptions,
1224
) : CommitServiceAsync {
1325

26+
private val errorHandler: Handler<OpenlayerError> = errorHandler(clientOptions.jsonMapper)
27+
1428
private val testResults: TestResultServiceAsync by lazy {
1529
TestResultServiceAsyncImpl(clientOptions)
1630
}
1731

1832
override fun testResults(): TestResultServiceAsync = testResults
33+
34+
private val createHandler: Handler<CommitCreateResponse> =
35+
jsonHandler<CommitCreateResponse>(clientOptions.jsonMapper).withErrorHandler(errorHandler)
36+
37+
/** Create a new commit (project version) in a project. */
38+
override fun create(
39+
params: CommitCreateParams,
40+
requestOptions: RequestOptions
41+
): CompletableFuture<CommitCreateResponse> {
42+
val request =
43+
HttpRequest.builder()
44+
.method(HttpMethod.POST)
45+
.addPathSegments("projects", params.getPathParam(0), "versions")
46+
.putAllQueryParams(clientOptions.queryParams)
47+
.putAllQueryParams(params.getQueryParams())
48+
.putAllHeaders(clientOptions.headers)
49+
.putAllHeaders(params.getHeaders())
50+
.body(json(clientOptions.jsonMapper, params.getBody()))
51+
.build()
52+
return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response
53+
->
54+
response
55+
.use { createHandler.handle(it) }
56+
.apply {
57+
if (requestOptions.responseValidation ?: clientOptions.responseValidation) {
58+
validate()
59+
}
60+
}
61+
}
62+
}
1963
}
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,22 @@
11
// File generated from our OpenAPI spec by Stainless.
22

3+
@file:Suppress("OVERLOADS_INTERFACE") // See https://youtrack.jetbrains.com/issue/KT-36102
4+
35
package com.openlayer.api.services.blocking
46

7+
import com.openlayer.api.core.RequestOptions
8+
import com.openlayer.api.models.CommitCreateParams
9+
import com.openlayer.api.models.CommitCreateResponse
510
import com.openlayer.api.services.blocking.commits.TestResultService
611

712
interface CommitService {
813

914
fun testResults(): TestResultService
15+
16+
/** Create a new commit (project version) in a project. */
17+
@JvmOverloads
18+
fun create(
19+
params: CommitCreateParams,
20+
requestOptions: RequestOptions = RequestOptions.none()
21+
): CommitCreateResponse
1022
}

openlayer-java-core/src/main/kotlin/com/openlayer/api/services/blocking/CommitServiceImpl.kt

+42
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,17 @@
33
package com.openlayer.api.services.blocking
44

55
import com.openlayer.api.core.ClientOptions
6+
import com.openlayer.api.core.RequestOptions
7+
import com.openlayer.api.core.handlers.errorHandler
8+
import com.openlayer.api.core.handlers.jsonHandler
9+
import com.openlayer.api.core.handlers.withErrorHandler
10+
import com.openlayer.api.core.http.HttpMethod
11+
import com.openlayer.api.core.http.HttpRequest
12+
import com.openlayer.api.core.http.HttpResponse.Handler
13+
import com.openlayer.api.core.json
14+
import com.openlayer.api.errors.OpenlayerError
15+
import com.openlayer.api.models.CommitCreateParams
16+
import com.openlayer.api.models.CommitCreateResponse
617
import com.openlayer.api.services.blocking.commits.TestResultService
718
import com.openlayer.api.services.blocking.commits.TestResultServiceImpl
819

@@ -11,7 +22,38 @@ constructor(
1122
private val clientOptions: ClientOptions,
1223
) : CommitService {
1324

25+
private val errorHandler: Handler<OpenlayerError> = errorHandler(clientOptions.jsonMapper)
26+
1427
private val testResults: TestResultService by lazy { TestResultServiceImpl(clientOptions) }
1528

1629
override fun testResults(): TestResultService = testResults
30+
31+
private val createHandler: Handler<CommitCreateResponse> =
32+
jsonHandler<CommitCreateResponse>(clientOptions.jsonMapper).withErrorHandler(errorHandler)
33+
34+
/** Create a new commit (project version) in a project. */
35+
override fun create(
36+
params: CommitCreateParams,
37+
requestOptions: RequestOptions
38+
): CommitCreateResponse {
39+
val request =
40+
HttpRequest.builder()
41+
.method(HttpMethod.POST)
42+
.addPathSegments("projects", params.getPathParam(0), "versions")
43+
.putAllQueryParams(clientOptions.queryParams)
44+
.putAllQueryParams(params.getQueryParams())
45+
.putAllHeaders(clientOptions.headers)
46+
.putAllHeaders(params.getHeaders())
47+
.body(json(clientOptions.jsonMapper, params.getBody()))
48+
.build()
49+
return clientOptions.httpClient.execute(request, requestOptions).let { response ->
50+
response
51+
.use { createHandler.handle(it) }
52+
.apply {
53+
if (requestOptions.responseValidation ?: clientOptions.responseValidation) {
54+
validate()
55+
}
56+
}
57+
}
58+
}
1759
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
// File generated from our OpenAPI spec by Stainless.
2+
3+
package com.openlayer.api.models
4+
5+
import com.openlayer.api.models.*
6+
import java.time.OffsetDateTime
7+
import org.assertj.core.api.Assertions.assertThat
8+
import org.junit.jupiter.api.Test
9+
10+
class CommitCreateParamsTest {
11+
12+
@Test
13+
fun createCommitCreateParams() {
14+
CommitCreateParams.builder()
15+
.projectId("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
16+
.commit(
17+
CommitCreateParams.Commit.builder()
18+
.id("3fa85f64-5717-4562-b3fc-2c963f66afa6")
19+
.authorId("589ece63-49a2-41b4-98e1-10547761d4b0")
20+
.fileSize(123L)
21+
.message("Updated the prompt.")
22+
.mlModelId("3fa85f64-5717-4562-b3fc-2c963f66afa6")
23+
.storageUri("s3://...")
24+
.trainingDatasetId("3fa85f64-5717-4562-b3fc-2c963f66afa6")
25+
.validationDatasetId("3fa85f64-5717-4562-b3fc-2c963f66afa6")
26+
.dateCreated(OffsetDateTime.parse("2024-03-22T11:31:01.185Z"))
27+
.gitCommitRef("main")
28+
.gitCommitSha(123L)
29+
.gitCommitUrl("gitCommitUrl")
30+
.build()
31+
)
32+
.storageUri("s3://...")
33+
.archived(true)
34+
.deploymentStatus("Deployed")
35+
.build()
36+
}
37+
38+
@Test
39+
fun getBody() {
40+
val params =
41+
CommitCreateParams.builder()
42+
.projectId("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
43+
.commit(
44+
CommitCreateParams.Commit.builder()
45+
.id("3fa85f64-5717-4562-b3fc-2c963f66afa6")
46+
.authorId("589ece63-49a2-41b4-98e1-10547761d4b0")
47+
.fileSize(123L)
48+
.message("Updated the prompt.")
49+
.mlModelId("3fa85f64-5717-4562-b3fc-2c963f66afa6")
50+
.storageUri("s3://...")
51+
.trainingDatasetId("3fa85f64-5717-4562-b3fc-2c963f66afa6")
52+
.validationDatasetId("3fa85f64-5717-4562-b3fc-2c963f66afa6")
53+
.dateCreated(OffsetDateTime.parse("2024-03-22T11:31:01.185Z"))
54+
.gitCommitRef("main")
55+
.gitCommitSha(123L)
56+
.gitCommitUrl("gitCommitUrl")
57+
.build()
58+
)
59+
.storageUri("s3://...")
60+
.archived(true)
61+
.deploymentStatus("Deployed")
62+
.build()
63+
val body = params.getBody()
64+
assertThat(body).isNotNull
65+
assertThat(body.commit())
66+
.isEqualTo(
67+
CommitCreateParams.Commit.builder()
68+
.id("3fa85f64-5717-4562-b3fc-2c963f66afa6")
69+
.authorId("589ece63-49a2-41b4-98e1-10547761d4b0")
70+
.fileSize(123L)
71+
.message("Updated the prompt.")
72+
.mlModelId("3fa85f64-5717-4562-b3fc-2c963f66afa6")
73+
.storageUri("s3://...")
74+
.trainingDatasetId("3fa85f64-5717-4562-b3fc-2c963f66afa6")
75+
.validationDatasetId("3fa85f64-5717-4562-b3fc-2c963f66afa6")
76+
.dateCreated(OffsetDateTime.parse("2024-03-22T11:31:01.185Z"))
77+
.gitCommitRef("main")
78+
.gitCommitSha(123L)
79+
.gitCommitUrl("gitCommitUrl")
80+
.build()
81+
)
82+
assertThat(body.storageUri()).isEqualTo("s3://...")
83+
assertThat(body.archived()).isEqualTo(true)
84+
assertThat(body.deploymentStatus()).isEqualTo("Deployed")
85+
}
86+
87+
@Test
88+
fun getBodyWithoutOptionalFields() {
89+
val params =
90+
CommitCreateParams.builder()
91+
.projectId("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
92+
.commit(
93+
CommitCreateParams.Commit.builder()
94+
.id("3fa85f64-5717-4562-b3fc-2c963f66afa6")
95+
.authorId("589ece63-49a2-41b4-98e1-10547761d4b0")
96+
.message("Updated the prompt.")
97+
.storageUri("s3://...")
98+
.build()
99+
)
100+
.storageUri("s3://...")
101+
.build()
102+
val body = params.getBody()
103+
assertThat(body).isNotNull
104+
assertThat(body.commit())
105+
.isEqualTo(
106+
CommitCreateParams.Commit.builder()
107+
.id("3fa85f64-5717-4562-b3fc-2c963f66afa6")
108+
.authorId("589ece63-49a2-41b4-98e1-10547761d4b0")
109+
.message("Updated the prompt.")
110+
.storageUri("s3://...")
111+
.build()
112+
)
113+
assertThat(body.storageUri()).isEqualTo("s3://...")
114+
}
115+
116+
@Test
117+
fun getPathParam() {
118+
val params =
119+
CommitCreateParams.builder()
120+
.projectId("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
121+
.commit(
122+
CommitCreateParams.Commit.builder()
123+
.id("3fa85f64-5717-4562-b3fc-2c963f66afa6")
124+
.authorId("589ece63-49a2-41b4-98e1-10547761d4b0")
125+
.message("Updated the prompt.")
126+
.storageUri("s3://...")
127+
.build()
128+
)
129+
.storageUri("s3://...")
130+
.build()
131+
assertThat(params).isNotNull
132+
// path param "projectId"
133+
assertThat(params.getPathParam(0)).isEqualTo("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
134+
// out-of-bound path param
135+
assertThat(params.getPathParam(1)).isEqualTo("")
136+
}
137+
}

0 commit comments

Comments
 (0)