Skip to content

Commit a356b48

Browse files
committed
spec: use dedicated response for DML operations
1 parent a710d7a commit a356b48

39 files changed

Lines changed: 1572 additions & 80 deletions

File tree

java/lance-namespace-adapter/src/main/java/com/lancedb/lance/namespace/adapter/ClientToServerResponse.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
*/
1414
package com.lancedb.lance.namespace.adapter;
1515

16+
import com.lancedb.lance.namespace.server.springboot.model.CreateNamespaceResponse;
17+
import com.lancedb.lance.namespace.server.springboot.model.DropNamespaceResponse;
1618
import com.lancedb.lance.namespace.server.springboot.model.GetNamespaceResponse;
1719
import com.lancedb.lance.namespace.server.springboot.model.GetTableResponse;
1820
import com.lancedb.lance.namespace.server.springboot.model.ListNamespacesResponse;
@@ -38,6 +40,24 @@ public static ListNamespacesResponse listNamespaces(
3840
return converted;
3941
}
4042

43+
public static CreateNamespaceResponse createNamespace(
44+
com.lancedb.lance.namespace.client.apache.model.CreateNamespaceResponse response) {
45+
CreateNamespaceResponse converted = new CreateNamespaceResponse();
46+
converted.setParent(response.getParent());
47+
converted.setProperties(response.getProperties());
48+
converted.setName(response.getName());
49+
return converted;
50+
}
51+
52+
public static DropNamespaceResponse dropNamespace(
53+
com.lancedb.lance.namespace.client.apache.model.DropNamespaceResponse response) {
54+
DropNamespaceResponse converted = new DropNamespaceResponse();
55+
converted.setParent(response.getParent());
56+
converted.setProperties(response.getProperties());
57+
converted.setName(response.getName());
58+
return converted;
59+
}
60+
4161
public static NamespaceExistsResponse namespaceExists(
4262
com.lancedb.lance.namespace.client.apache.model.NamespaceExistsResponse response) {
4363
NamespaceExistsResponse converted = new NamespaceExistsResponse();

java/lance-namespace-adapter/src/main/java/com/lancedb/lance/namespace/adapter/NamespaceController.java

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
import com.lancedb.lance.namespace.client.LanceNamespace;
1717
import com.lancedb.lance.namespace.server.springboot.api.NamespaceApi;
1818
import com.lancedb.lance.namespace.server.springboot.model.CreateNamespaceRequest;
19+
import com.lancedb.lance.namespace.server.springboot.model.CreateNamespaceResponse;
1920
import com.lancedb.lance.namespace.server.springboot.model.DropNamespaceRequest;
21+
import com.lancedb.lance.namespace.server.springboot.model.DropNamespaceResponse;
2022
import com.lancedb.lance.namespace.server.springboot.model.GetNamespaceRequest;
2123
import com.lancedb.lance.namespace.server.springboot.model.GetNamespaceResponse;
2224
import com.lancedb.lance.namespace.server.springboot.model.ListNamespacesRequest;
@@ -37,18 +39,20 @@ public NamespaceController(LanceNamespace delegate) {
3739
}
3840

3941
@Override
40-
public ResponseEntity<GetNamespaceResponse> createNamespace(
42+
public ResponseEntity<CreateNamespaceResponse> createNamespace(
4143
CreateNamespaceRequest createNamespaceRequest) {
4244
return ResponseEntity.ok(
43-
ClientToServerResponse.getNamespace(
45+
ClientToServerResponse.createNamespace(
4446
delegate.createNamespace(
4547
ServerToClientRequest.createNamespace(createNamespaceRequest))));
4648
}
4749

4850
@Override
49-
public ResponseEntity<Object> dropNamespace(DropNamespaceRequest dropNamespaceRequest) {
50-
delegate.dropNamespace(ServerToClientRequest.dropNamespace(dropNamespaceRequest));
51-
return ResponseEntity.ok().build();
51+
public ResponseEntity<DropNamespaceResponse> dropNamespace(
52+
DropNamespaceRequest dropNamespaceRequest) {
53+
return ResponseEntity.ok(
54+
ClientToServerResponse.dropNamespace(
55+
delegate.dropNamespace(ServerToClientRequest.dropNamespace(dropNamespaceRequest))));
5256
}
5357

5458
@Override

java/lance-namespace-apache-client/.openapi-generator/FILES

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
README.md
33
api/openapi.yaml
44
docs/CreateNamespaceRequest.md
5+
docs/CreateNamespaceResponse.md
56
docs/DropNamespaceRequest.md
7+
docs/DropNamespaceResponse.md
68
docs/ErrorResponse.md
79
docs/GetNamespaceRequest.md
810
docs/GetNamespaceResponse.md
@@ -37,7 +39,9 @@ src/main/java/com/lancedb/lance/namespace/client/apache/auth/Authentication.java
3739
src/main/java/com/lancedb/lance/namespace/client/apache/auth/HttpBasicAuth.java
3840
src/main/java/com/lancedb/lance/namespace/client/apache/auth/HttpBearerAuth.java
3941
src/main/java/com/lancedb/lance/namespace/client/apache/model/CreateNamespaceRequest.java
42+
src/main/java/com/lancedb/lance/namespace/client/apache/model/CreateNamespaceResponse.java
4043
src/main/java/com/lancedb/lance/namespace/client/apache/model/DropNamespaceRequest.java
44+
src/main/java/com/lancedb/lance/namespace/client/apache/model/DropNamespaceResponse.java
4145
src/main/java/com/lancedb/lance/namespace/client/apache/model/ErrorResponse.java
4246
src/main/java/com/lancedb/lance/namespace/client/apache/model/GetNamespaceRequest.java
4347
src/main/java/com/lancedb/lance/namespace/client/apache/model/GetNamespaceResponse.java

java/lance-namespace-apache-client/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ public class NamespaceApiExample {
9191
NamespaceApi apiInstance = new NamespaceApi(defaultClient);
9292
CreateNamespaceRequest createNamespaceRequest = new CreateNamespaceRequest(); // CreateNamespaceRequest |
9393
try {
94-
GetNamespaceResponse result = apiInstance.createNamespace(createNamespaceRequest);
94+
CreateNamespaceResponse result = apiInstance.createNamespace(createNamespaceRequest);
9595
System.out.println(result);
9696
} catch (ApiException e) {
9797
System.err.println("Exception when calling NamespaceApi#createNamespace");
@@ -124,7 +124,9 @@ Class | Method | HTTP request | Description
124124
## Documentation for Models
125125

126126
- [CreateNamespaceRequest](docs/CreateNamespaceRequest.md)
127+
- [CreateNamespaceResponse](docs/CreateNamespaceResponse.md)
127128
- [DropNamespaceRequest](docs/DropNamespaceRequest.md)
129+
- [DropNamespaceResponse](docs/DropNamespaceResponse.md)
128130
- [ErrorResponse](docs/ErrorResponse.md)
129131
- [GetNamespaceRequest](docs/GetNamespaceRequest.md)
130132
- [GetNamespaceResponse](docs/GetNamespaceResponse.md)

java/lance-namespace-apache-client/api/openapi.yaml

Lines changed: 44 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ paths:
5252
required: true
5353
responses:
5454
"200":
55-
$ref: '#/components/responses/GetNamespaceResponse'
55+
$ref: '#/components/responses/CreateNamespaceResponse'
5656
"400":
5757
$ref: '#/components/responses/BadRequestErrorResponse'
5858
"401":
@@ -333,6 +333,12 @@ components:
333333
$ref: '#/components/schemas/GetNamespaceResponse'
334334
description: "Returns a namespace, as well as any properties stored on the namespace\
335335
\ if namespace properties are supported by the server."
336+
CreateNamespaceResponse:
337+
content:
338+
application/json:
339+
schema:
340+
$ref: '#/components/schemas/CreateNamespaceResponse'
341+
description: Result of creating a namespace
336342
DropNamespaceResponse:
337343
content:
338344
application/json:
@@ -531,6 +537,26 @@ components:
531537
required:
532538
- mode
533539
- name
540+
CreateNamespaceResponse:
541+
example:
542+
parent:
543+
- parent
544+
- parent
545+
name: name
546+
properties:
547+
key: properties
548+
properties:
549+
name:
550+
type: string
551+
parent:
552+
items:
553+
type: string
554+
type: array
555+
properties:
556+
additionalProperties:
557+
type: string
558+
required:
559+
- name
534560
ListNamespacesRequest:
535561
example:
536562
parent:
@@ -640,7 +666,23 @@ components:
640666
required:
641667
- name
642668
DropNamespaceResponse:
643-
type: object
669+
example:
670+
parent:
671+
- parent
672+
- parent
673+
name: name
674+
properties:
675+
key: properties
676+
properties:
677+
name:
678+
type: string
679+
parent:
680+
items:
681+
type: string
682+
type: array
683+
properties:
684+
additionalProperties:
685+
type: string
644686
NamespaceExistsRequest:
645687
example:
646688
parent:
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
2+
3+
# CreateNamespaceResponse
4+
5+
6+
## Properties
7+
8+
| Name | Type | Description | Notes |
9+
|------------ | ------------- | ------------- | -------------|
10+
|**name** | **String** | | |
11+
|**parent** | **List&lt;String&gt;** | | [optional] |
12+
|**properties** | **Map&lt;String, String&gt;** | | [optional] |
13+
14+
15+
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
2+
3+
# DropNamespaceResponse
4+
5+
6+
## Properties
7+
8+
| Name | Type | Description | Notes |
9+
|------------ | ------------- | ------------- | -------------|
10+
|**name** | **String** | | [optional] |
11+
|**parent** | **List&lt;String&gt;** | | [optional] |
12+
|**properties** | **Map&lt;String, String&gt;** | | [optional] |
13+
14+
15+

java/lance-namespace-apache-client/docs/NamespaceApi.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ All URIs are relative to *http://localhost:2333*
1414

1515
## createNamespace
1616

17-
> GetNamespaceResponse createNamespace(createNamespaceRequest)
17+
> CreateNamespaceResponse createNamespace(createNamespaceRequest)
1818
1919
Create a new namespace
2020

@@ -38,7 +38,7 @@ public class Example {
3838
NamespaceApi apiInstance = new NamespaceApi(defaultClient);
3939
CreateNamespaceRequest createNamespaceRequest = new CreateNamespaceRequest(); // CreateNamespaceRequest |
4040
try {
41-
GetNamespaceResponse result = apiInstance.createNamespace(createNamespaceRequest);
41+
CreateNamespaceResponse result = apiInstance.createNamespace(createNamespaceRequest);
4242
System.out.println(result);
4343
} catch (ApiException e) {
4444
System.err.println("Exception when calling NamespaceApi#createNamespace");
@@ -60,7 +60,7 @@ public class Example {
6060

6161
### Return type
6262

63-
[**GetNamespaceResponse**](GetNamespaceResponse.md)
63+
[**CreateNamespaceResponse**](CreateNamespaceResponse.md)
6464

6565
### Authorization
6666

@@ -75,7 +75,7 @@ No authorization required
7575
### HTTP response details
7676
| Status code | Description | Response headers |
7777
|-------------|-------------|------------------|
78-
| **200** | Returns a namespace, as well as any properties stored on the namespace if namespace properties are supported by the server. | - |
78+
| **200** | Result of creating a namespace | - |
7979
| **400** | Indicates a bad request error. It could be caused by an unexpected request body format or other forms of request validation failure, such as invalid json. Usually serves application/json content, although in some cases simple text/plain content might be returned by the server&#39;s middleware. | - |
8080
| **401** | Unauthorized. The request lacks valid authentication credentials for the operation. | - |
8181
| **403** | Forbidden. Authenticated user does not have the necessary permissions. | - |
@@ -87,7 +87,7 @@ No authorization required
8787

8888
## dropNamespace
8989

90-
> Object dropNamespace(dropNamespaceRequest)
90+
> DropNamespaceResponse dropNamespace(dropNamespaceRequest)
9191
9292
Drop a namespace
9393

@@ -111,7 +111,7 @@ public class Example {
111111
NamespaceApi apiInstance = new NamespaceApi(defaultClient);
112112
DropNamespaceRequest dropNamespaceRequest = new DropNamespaceRequest(); // DropNamespaceRequest |
113113
try {
114-
Object result = apiInstance.dropNamespace(dropNamespaceRequest);
114+
DropNamespaceResponse result = apiInstance.dropNamespace(dropNamespaceRequest);
115115
System.out.println(result);
116116
} catch (ApiException e) {
117117
System.err.println("Exception when calling NamespaceApi#dropNamespace");
@@ -133,7 +133,7 @@ public class Example {
133133

134134
### Return type
135135

136-
**Object**
136+
[**DropNamespaceResponse**](DropNamespaceResponse.md)
137137

138138
### Authorization
139139

java/lance-namespace-apache-client/src/main/java/com/lancedb/lance/namespace/client/apache/api/NamespaceApi.java

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@
1919
import com.lancedb.lance.namespace.client.apache.Configuration;
2020
import com.lancedb.lance.namespace.client.apache.Pair;
2121
import com.lancedb.lance.namespace.client.apache.model.CreateNamespaceRequest;
22+
import com.lancedb.lance.namespace.client.apache.model.CreateNamespaceResponse;
2223
import com.lancedb.lance.namespace.client.apache.model.DropNamespaceRequest;
24+
import com.lancedb.lance.namespace.client.apache.model.DropNamespaceResponse;
2325
import com.lancedb.lance.namespace.client.apache.model.GetNamespaceRequest;
2426
import com.lancedb.lance.namespace.client.apache.model.GetNamespaceResponse;
2527
import com.lancedb.lance.namespace.client.apache.model.ListNamespacesRequest;
@@ -58,10 +60,10 @@ public NamespaceApi(ApiClient apiClient) {
5860
* with this name is created.
5961
*
6062
* @param createNamespaceRequest (required)
61-
* @return GetNamespaceResponse
63+
* @return CreateNamespaceResponse
6264
* @throws ApiException if fails to make API call
6365
*/
64-
public GetNamespaceResponse createNamespace(CreateNamespaceRequest createNamespaceRequest)
66+
public CreateNamespaceResponse createNamespace(CreateNamespaceRequest createNamespaceRequest)
6567
throws ApiException {
6668
return this.createNamespace(createNamespaceRequest, Collections.emptyMap());
6769
}
@@ -76,10 +78,10 @@ public GetNamespaceResponse createNamespace(CreateNamespaceRequest createNamespa
7678
*
7779
* @param createNamespaceRequest (required)
7880
* @param additionalHeaders additionalHeaders for this call
79-
* @return GetNamespaceResponse
81+
* @return CreateNamespaceResponse
8082
* @throws ApiException if fails to make API call
8183
*/
82-
public GetNamespaceResponse createNamespace(
84+
public CreateNamespaceResponse createNamespace(
8385
CreateNamespaceRequest createNamespaceRequest, Map<String, String> additionalHeaders)
8486
throws ApiException {
8587
Object localVarPostBody = createNamespaceRequest;
@@ -112,8 +114,8 @@ public GetNamespaceResponse createNamespace(
112114

113115
String[] localVarAuthNames = new String[] {};
114116

115-
TypeReference<GetNamespaceResponse> localVarReturnType =
116-
new TypeReference<GetNamespaceResponse>() {};
117+
TypeReference<CreateNamespaceResponse> localVarReturnType =
118+
new TypeReference<CreateNamespaceResponse>() {};
117119
return apiClient.invokeAPI(
118120
localVarPath,
119121
"POST",
@@ -134,10 +136,11 @@ public GetNamespaceResponse createNamespace(
134136
* Drop a namespace Drop a namespace. The namespace must be empty.
135137
*
136138
* @param dropNamespaceRequest (required)
137-
* @return Object
139+
* @return DropNamespaceResponse
138140
* @throws ApiException if fails to make API call
139141
*/
140-
public Object dropNamespace(DropNamespaceRequest dropNamespaceRequest) throws ApiException {
142+
public DropNamespaceResponse dropNamespace(DropNamespaceRequest dropNamespaceRequest)
143+
throws ApiException {
141144
return this.dropNamespace(dropNamespaceRequest, Collections.emptyMap());
142145
}
143146

@@ -146,10 +149,10 @@ public Object dropNamespace(DropNamespaceRequest dropNamespaceRequest) throws Ap
146149
*
147150
* @param dropNamespaceRequest (required)
148151
* @param additionalHeaders additionalHeaders for this call
149-
* @return Object
152+
* @return DropNamespaceResponse
150153
* @throws ApiException if fails to make API call
151154
*/
152-
public Object dropNamespace(
155+
public DropNamespaceResponse dropNamespace(
153156
DropNamespaceRequest dropNamespaceRequest, Map<String, String> additionalHeaders)
154157
throws ApiException {
155158
Object localVarPostBody = dropNamespaceRequest;
@@ -181,7 +184,8 @@ public Object dropNamespace(
181184

182185
String[] localVarAuthNames = new String[] {};
183186

184-
TypeReference<Object> localVarReturnType = new TypeReference<Object>() {};
187+
TypeReference<DropNamespaceResponse> localVarReturnType =
188+
new TypeReference<DropNamespaceResponse>() {};
185189
return apiClient.invokeAPI(
186190
localVarPath,
187191
"POST",

0 commit comments

Comments
 (0)