@@ -333,7 +333,7 @@ public List<TableIdentifier> listTables(SessionContext context, Namespace ns) {
333
333
ListTablesResponse response =
334
334
client .get (
335
335
paths .tables (ns ),
336
- queryParams ,
336
+ queryParams ( queryParams ) ,
337
337
ListTablesResponse .class ,
338
338
headers (context ),
339
339
ErrorHandlers .namespaceErrorHandler ());
@@ -350,7 +350,11 @@ public boolean dropTable(SessionContext context, TableIdentifier identifier) {
350
350
351
351
try {
352
352
client .delete (
353
- paths .table (identifier ), null , headers (context ), ErrorHandlers .tableErrorHandler ());
353
+ paths .table (identifier ),
354
+ queryParams (),
355
+ null ,
356
+ headers (context ),
357
+ ErrorHandlers .tableErrorHandler ());
354
358
return true ;
355
359
} catch (NoSuchTableException e ) {
356
360
return false ;
@@ -364,7 +368,7 @@ public boolean purgeTable(SessionContext context, TableIdentifier identifier) {
364
368
try {
365
369
client .delete (
366
370
paths .table (identifier ),
367
- ImmutableMap .of ("purgeRequested" , "true" ),
371
+ queryParams ( ImmutableMap .of ("purgeRequested" , "true" ) ),
368
372
null ,
369
373
headers (context ),
370
374
ErrorHandlers .tableErrorHandler ());
@@ -390,7 +394,7 @@ private LoadTableResponse loadInternal(
390
394
SessionContext context , TableIdentifier identifier , SnapshotMode mode ) {
391
395
return client .get (
392
396
paths .table (identifier ),
393
- mode .params (),
397
+ queryParams ( mode .params () ),
394
398
LoadTableResponse .class ,
395
399
headers (context ),
396
400
ErrorHandlers .tableErrorHandler ());
@@ -450,6 +454,7 @@ public Table loadTable(SessionContext context, TableIdentifier identifier) {
450
454
new RESTTableOperations (
451
455
client ,
452
456
paths .table (finalIdentifier ),
457
+ queryParams (),
453
458
session ::headers ,
454
459
tableFileIO (context , response .config ()),
455
460
tableMetadata );
@@ -478,7 +483,7 @@ private MetricsReporter metricsReporter(
478
483
String metricsEndpoint , Supplier <Map <String , String >> headers ) {
479
484
if (reportingViaRestEnabled ) {
480
485
RESTMetricsReporter restMetricsReporter =
481
- new RESTMetricsReporter (client , metricsEndpoint , headers );
486
+ new RESTMetricsReporter (client , metricsEndpoint , headers , queryParams () );
482
487
return MetricsReporters .combine (reporter , restMetricsReporter );
483
488
} else {
484
489
return this .reporter ;
@@ -510,10 +515,12 @@ public Table registerTable(
510
515
.metadataLocation (metadataFileLocation )
511
516
.build ();
512
517
518
+ Map <String , String > queryParams = queryParams ();
513
519
LoadTableResponse response =
514
520
client .post (
515
521
paths .register (ident .namespace ()),
516
522
request ,
523
+ queryParams ,
517
524
LoadTableResponse .class ,
518
525
headers (context ),
519
526
ErrorHandlers .tableErrorHandler ());
@@ -523,6 +530,7 @@ public Table registerTable(
523
530
new RESTTableOperations (
524
531
client ,
525
532
paths .table (ident ),
533
+ queryParams ,
526
534
session ::headers ,
527
535
tableFileIO (context , response .config ()),
528
536
response .tableMetadata ());
@@ -566,7 +574,7 @@ public List<Namespace> listNamespaces(SessionContext context, Namespace namespac
566
574
ListNamespacesResponse response =
567
575
client .get (
568
576
paths .namespaces (),
569
- queryParams ,
577
+ queryParams ( queryParams ) ,
570
578
ListNamespacesResponse .class ,
571
579
headers (context ),
572
580
ErrorHandlers .namespaceErrorHandler ());
@@ -585,6 +593,7 @@ public Map<String, String> loadNamespaceMetadata(SessionContext context, Namespa
585
593
GetNamespaceResponse response =
586
594
client .get (
587
595
paths .namespace (ns ),
596
+ queryParams (),
588
597
GetNamespaceResponse .class ,
589
598
headers (context ),
590
599
ErrorHandlers .namespaceErrorHandler ());
@@ -597,7 +606,11 @@ public boolean dropNamespace(SessionContext context, Namespace ns) {
597
606
598
607
try {
599
608
client .delete (
600
- paths .namespace (ns ), null , headers (context ), ErrorHandlers .namespaceErrorHandler ());
609
+ paths .namespace (ns ),
610
+ queryParams (),
611
+ null ,
612
+ headers (context ),
613
+ ErrorHandlers .namespaceErrorHandler ());
601
614
return true ;
602
615
} catch (NoSuchNamespaceException e ) {
603
616
return false ;
@@ -616,6 +629,7 @@ public boolean updateNamespaceMetadata(
616
629
client .post (
617
630
paths .namespaceProperties (ns ),
618
631
request ,
632
+ queryParams (),
619
633
UpdateNamespacePropertiesResponse .class ,
620
634
headers (context ),
621
635
ErrorHandlers .namespaceErrorHandler ());
@@ -738,10 +752,12 @@ public Table create() {
738
752
.setProperties (propertiesBuilder .build ())
739
753
.build ();
740
754
755
+ Map <String , String > queryParams = queryParams ();
741
756
LoadTableResponse response =
742
757
client .post (
743
758
paths .tables (ident .namespace ()),
744
759
request ,
760
+ queryParams ,
745
761
LoadTableResponse .class ,
746
762
headers (context ),
747
763
ErrorHandlers .tableErrorHandler ());
@@ -751,6 +767,7 @@ public Table create() {
751
767
new RESTTableOperations (
752
768
client ,
753
769
paths .table (ident ),
770
+ queryParams ,
754
771
session ::headers ,
755
772
tableFileIO (context , response .config ()),
756
773
response .tableMetadata ());
@@ -773,6 +790,7 @@ public Transaction createTransaction() {
773
790
new RESTTableOperations (
774
791
client ,
775
792
paths .table (ident ),
793
+ queryParams (),
776
794
session ::headers ,
777
795
tableFileIO (context , response .config ()),
778
796
RESTTableOperations .UpdateType .CREATE ,
@@ -837,6 +855,7 @@ public Transaction replaceTransaction() {
837
855
new RESTTableOperations (
838
856
client ,
839
857
paths .table (ident ),
858
+ queryParams (),
840
859
session ::headers ,
841
860
tableFileIO (context , response .config ()),
842
861
RESTTableOperations .UpdateType .REPLACE ,
@@ -881,12 +900,24 @@ private LoadTableResponse stageCreate() {
881
900
return client .post (
882
901
paths .tables (ident .namespace ()),
883
902
request ,
903
+ queryParams (),
884
904
LoadTableResponse .class ,
885
905
headers (context ),
886
906
ErrorHandlers .tableErrorHandler ());
887
907
}
888
908
}
889
909
910
+ private Map <String , String > queryParams () {
911
+ return ImmutableMap .of ("delim" , namespaceSeparator );
912
+ }
913
+
914
+ private Map <String , String > queryParams (Map <String , String > params ) {
915
+ return ImmutableMap .<String , String >builder ()
916
+ .putAll (params )
917
+ .put ("delim" , namespaceSeparator )
918
+ .build ();
919
+ }
920
+
890
921
private static List <MetadataUpdate > createChanges (TableMetadata meta ) {
891
922
ImmutableList .Builder <MetadataUpdate > changes = ImmutableList .builder ();
892
923
@@ -1137,7 +1168,7 @@ public List<TableIdentifier> listViews(SessionContext context, Namespace namespa
1137
1168
ListTablesResponse response =
1138
1169
client .get (
1139
1170
paths .views (namespace ),
1140
- queryParams ,
1171
+ queryParams ( queryParams ) ,
1141
1172
ListTablesResponse .class ,
1142
1173
headers (context ),
1143
1174
ErrorHandlers .namespaceErrorHandler ());
@@ -1152,11 +1183,13 @@ public List<TableIdentifier> listViews(SessionContext context, Namespace namespa
1152
1183
public View loadView (SessionContext context , TableIdentifier identifier ) {
1153
1184
checkViewIdentifierIsValid (identifier );
1154
1185
1186
+ Map <String , String > queryParams = queryParams ();
1155
1187
LoadViewResponse response ;
1156
1188
try {
1157
1189
response =
1158
1190
client .get (
1159
1191
paths .view (identifier ),
1192
+ queryParams ,
1160
1193
LoadViewResponse .class ,
1161
1194
headers (context ),
1162
1195
ErrorHandlers .viewErrorHandler ());
@@ -1173,7 +1206,8 @@ public View loadView(SessionContext context, TableIdentifier identifier) {
1173
1206
ViewMetadata metadata = response .metadata ();
1174
1207
1175
1208
RESTViewOperations ops =
1176
- new RESTViewOperations (client , paths .view (identifier ), session ::headers , metadata );
1209
+ new RESTViewOperations (
1210
+ client , paths .view (identifier ), queryParams , session ::headers , metadata );
1177
1211
1178
1212
return new BaseView (ops , ViewUtil .fullViewName (name (), identifier ));
1179
1213
}
@@ -1189,7 +1223,11 @@ public boolean dropView(SessionContext context, TableIdentifier identifier) {
1189
1223
1190
1224
try {
1191
1225
client .delete (
1192
- paths .view (identifier ), null , headers (context ), ErrorHandlers .viewErrorHandler ());
1226
+ paths .view (identifier ),
1227
+ queryParams (),
1228
+ null ,
1229
+ headers (context ),
1230
+ ErrorHandlers .viewErrorHandler ());
1193
1231
return true ;
1194
1232
} catch (NoSuchViewException e ) {
1195
1233
return false ;
@@ -1295,18 +1333,20 @@ public View create() {
1295
1333
.properties (properties )
1296
1334
.build ();
1297
1335
1336
+ Map <String , String > queryParams = queryParams ();
1298
1337
LoadViewResponse response =
1299
1338
client .post (
1300
1339
paths .views (identifier .namespace ()),
1301
1340
request ,
1341
+ queryParams ,
1302
1342
LoadViewResponse .class ,
1303
1343
headers (context ),
1304
1344
ErrorHandlers .viewErrorHandler ());
1305
1345
1306
1346
AuthSession session = tableSession (response .config (), session (context ));
1307
1347
RESTViewOperations ops =
1308
1348
new RESTViewOperations (
1309
- client , paths .view (identifier ), session ::headers , response .metadata ());
1349
+ client , paths .view (identifier ), queryParams , session ::headers , response .metadata ());
1310
1350
1311
1351
return new BaseView (ops , ViewUtil .fullViewName (name (), identifier ));
1312
1352
}
@@ -1332,6 +1372,7 @@ public View replace() {
1332
1372
private LoadViewResponse loadView () {
1333
1373
return client .get (
1334
1374
paths .view (identifier ),
1375
+ queryParams (),
1335
1376
LoadViewResponse .class ,
1336
1377
headers (context ),
1337
1378
ErrorHandlers .viewErrorHandler ());
@@ -1376,7 +1417,8 @@ private View replace(LoadViewResponse response) {
1376
1417
1377
1418
AuthSession session = tableSession (response .config (), session (context ));
1378
1419
RESTViewOperations ops =
1379
- new RESTViewOperations (client , paths .view (identifier ), session ::headers , metadata );
1420
+ new RESTViewOperations (
1421
+ client , paths .view (identifier ), queryParams (), session ::headers , metadata );
1380
1422
1381
1423
ops .commit (metadata , replacement );
1382
1424
0 commit comments