@@ -43,13 +43,12 @@ public DeltaSharesApiImpl(
43
43
@ Override
44
44
public Response getShare (String share ) {
45
45
return wrapExceptions (
46
- () ->
47
- optionalToNotFound (shareService .getShare (share ),
48
- foundShare ->
49
- shareToForbidden (foundShare , s -> {
50
- var resultShare = new Share ().name (s .name ()).id (s .id ());
51
- return Response .ok (resultShare ).build ();
52
- })),
46
+ () -> optionalToNotFound (
47
+ shareService .getShare (share ),
48
+ foundShare -> shareToForbidden (foundShare , s -> {
49
+ var resultShare = new Share ().name (s .name ()).id (s .id ());
50
+ return Response .ok (resultShare ).build ();
51
+ })),
53
52
exceptionToResponse );
54
53
}
55
54
@@ -74,58 +73,67 @@ public Response getTableMetadata(
74
73
String startingTimestampStr ,
75
74
String deltaSharingCapabilities ) {
76
75
return wrapExceptions (
77
- () ->
78
- optionalToNotFound (shareService .getShare (share ), foundShare -> shareToForbidden (foundShare , s -> {
79
- var startingTimestamp = parseTimestamp (startingTimestampStr );
80
- return optionalToNotFound (
81
- deltaSharesService .getTableMetadata (share , schema , table , startingTimestamp ),
82
- m -> optionalToNotFound (
83
- deltaSharesService .getTableVersion (share , schema , table , startingTimestamp ),
84
- v -> Response .ok (
85
- tableResponseSerializer .serialize (
86
- DeltaMappers .toTableResponseMetadata (m )),
87
- ndjsonMediaType )
88
- .status (Response .Status .OK .getStatusCode ())
89
- .header (DELTA_TABLE_VERSION_HEADER , String .valueOf (v ))
90
- .header (
91
- DELTA_SHARE_CAPABILITIES_HEADER ,
92
- getResponseFormatHeader (
93
- DeltaMappers .toHeaderCapabilitiesMap (deltaSharingCapabilities )))
94
- .build ()));
95
- })),
76
+ () -> optionalToNotFound (
77
+ shareService .getShare (share ),
78
+ foundShare -> shareToForbidden (foundShare , s -> {
79
+ var startingTimestamp = parseTimestamp (startingTimestampStr );
80
+ return optionalToNotFound (
81
+ deltaSharesService .getTableMetadata (
82
+ share , schema , table , startingTimestamp , getRequestPrincipal ()),
83
+ m -> optionalToNotFound (
84
+ deltaSharesService .getTableVersion (
85
+ share , schema , table , startingTimestamp , getRequestPrincipal ()),
86
+ v -> Response .ok (
87
+ tableResponseSerializer .serialize (
88
+ DeltaMappers .toTableResponseMetadata (m )),
89
+ ndjsonMediaType )
90
+ .status (Response .Status .OK .getStatusCode ())
91
+ .header (DELTA_TABLE_VERSION_HEADER , String .valueOf (v ))
92
+ .header (
93
+ DELTA_SHARE_CAPABILITIES_HEADER ,
94
+ getResponseFormatHeader (
95
+ DeltaMappers .toHeaderCapabilitiesMap (deltaSharingCapabilities )))
96
+ .build ()));
97
+ })),
96
98
exceptionToResponse );
97
99
}
98
100
99
101
@ Override
100
102
public Response getTableVersion (
101
103
String share , String schema , String table , String startingTimestampStr ) {
102
-
103
104
return wrapExceptions (
104
- () ->
105
- optionalToNotFound (shareService .getShare (share ), foundShare -> shareToForbidden (foundShare , s -> {
105
+ () -> {
106
106
var startingTimestamp = parseTimestamp (startingTimestampStr );
107
107
return optionalToNotFound (
108
- deltaSharesService .getTableVersion (share , schema , table , startingTimestamp ),
108
+ deltaSharesService .getTableVersion (
109
+ share , schema , table , startingTimestamp , getRequestPrincipal ()),
109
110
t -> Response .ok ().header (DELTA_TABLE_VERSION_HEADER , t ).build ());
110
- })) ,
111
+ },
111
112
exceptionToResponse );
112
113
}
113
114
114
115
@ Override
115
116
public Response listALLTables (String share , Integer maxResults , String pageToken ) {
116
117
return wrapExceptions (
117
- () ->
118
- optionalToNotFound (shareService .getShare (share ), foundShare -> shareToForbidden (foundShare , s ->
119
- optionalToNotFound (
120
- deltaSharesService .listTablesOfShare (
121
- share , parseToken (pageToken ), Optional .ofNullable (maxResults )),
122
- c -> Response .ok (c .getToken ()
123
- .map (t -> new ListTablesResponse ()
124
- .items (mapList (c .getContent (), DeltaMappers ::table2api ))
125
- .nextPageToken (tokenEncoder .encodePageToken (t )))
126
- .orElse (new ListTablesResponse ()
127
- .items (mapList (c .getContent (), DeltaMappers ::table2api ))))
128
- .build ()))),
118
+ () -> optionalToNotFound (
119
+ shareService .getShare (share ),
120
+ foundShare -> shareToForbidden (
121
+ foundShare ,
122
+ s -> optionalToNotFound (
123
+ deltaSharesService .listTablesOfShare (
124
+ share ,
125
+ parseToken (pageToken ),
126
+ Optional .ofNullable (maxResults ),
127
+ getRequestPrincipal ()),
128
+ c -> Response .ok (c .getToken ()
129
+ .map (
130
+ t -> new ListTablesResponse ()
131
+ .items (mapList (c .getContent (), DeltaMappers ::table2api ))
132
+ .nextPageToken (tokenEncoder .encodePageToken (t )))
133
+ .orElse (
134
+ new ListTablesResponse ()
135
+ .items (mapList (c .getContent (), DeltaMappers ::table2api ))))
136
+ .build ()))),
129
137
exceptionToResponse );
130
138
}
131
139
@@ -134,7 +142,11 @@ public Response listSchemas(String share, Integer maxResults, String pageToken)
134
142
return wrapExceptions (
135
143
() -> optionalToNotFound (
136
144
deltaSharesService
137
- .listSchemas (share , parseToken (pageToken ), Optional .ofNullable (maxResults ))
145
+ .listSchemas (
146
+ share ,
147
+ parseToken (pageToken ),
148
+ Optional .ofNullable (maxResults ),
149
+ getRequestPrincipal ())
138
150
.map (ct -> ct .getToken ()
139
151
.map (t -> new ListSchemasResponse ()
140
152
.nextPageToken (tokenEncoder .encodePageToken (t ))
@@ -149,8 +161,8 @@ public Response listSchemas(String share, Integer maxResults, String pageToken)
149
161
public Response listShares (Integer maxResults , String pageToken ) {
150
162
return wrapExceptions (
151
163
() -> {
152
- var c =
153
- deltaSharesService . listShares ( parseToken (pageToken ), Optional .ofNullable (maxResults ));
164
+ var c = deltaSharesService . listShares (
165
+ parseToken (pageToken ), Optional .ofNullable (maxResults ), getRequestPrincipal ( ));
154
166
var response =
155
167
new ListShareResponse ().items (mapList (c .getContent (), DeltaMappers ::share2api ));
156
168
return Response .ok (c .getToken ()
@@ -166,7 +178,11 @@ public Response listTables(String share, String schema, Integer maxResults, Stri
166
178
return wrapExceptions (
167
179
() -> optionalToNotFound (
168
180
deltaSharesService .listTables (
169
- share , schema , parseToken (pageToken ), Optional .ofNullable (maxResults )),
181
+ share ,
182
+ schema ,
183
+ parseToken (pageToken ),
184
+ Optional .ofNullable (maxResults ),
185
+ getRequestPrincipal ()),
170
186
c -> Response .ok (c .getToken ()
171
187
.map (t -> new ListTablesResponse ()
172
188
.items (mapList (c .getContent (), DeltaMappers ::table2api ))
@@ -195,7 +211,11 @@ public Response queryTable(
195
211
return wrapExceptions (
196
212
() -> {
197
213
var readResult = deltaSharesService .queryTable (
198
- share , schema , table , DeltaMappers .api2ReadTableRequest (queryRequest ));
214
+ share ,
215
+ schema ,
216
+ table ,
217
+ DeltaMappers .api2ReadTableRequest (queryRequest ),
218
+ getRequestPrincipal ());
199
219
var serializedReadResult =
200
220
tableQueryResponseSerializer .serialize (DeltaMappers .readTableResult2api (readResult ));
201
221
return Response .ok (serializedReadResult , ndjsonMediaType )
0 commit comments