Skip to content

Commit d478606

Browse files
committed
refactor: change header handling to support immutable maps
1 parent 90294e3 commit d478606

File tree

2 files changed

+18
-19
lines changed

2 files changed

+18
-19
lines changed

src/main/java/dev/openfga/sdk/api/client/OpenFgaClient.java

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -838,12 +838,13 @@ public CompletableFuture<List<ClientBatchCheckClientResponse>> clientBatchCheck(
838838
var options = batchCheckOptions != null
839839
? batchCheckOptions
840840
: new ClientBatchCheckClientOptions().maxParallelRequests(DEFAULT_MAX_METHOD_PARALLEL_REQS);
841-
if (options.getAdditionalHeaders() == null) {
842-
options.additionalHeaders(new HashMap<>());
843-
}
844-
options.getAdditionalHeaders().putIfAbsent(CLIENT_METHOD_HEADER, "ClientBatchCheck");
845-
options.getAdditionalHeaders()
846-
.putIfAbsent(CLIENT_BULK_REQUEST_ID_HEADER, randomUUID().toString());
841+
842+
HashMap<String, String> headers = options.getAdditionalHeaders() != null
843+
? new HashMap<>(options.getAdditionalHeaders())
844+
: new HashMap<>();
845+
headers.putIfAbsent(CLIENT_METHOD_HEADER, "ClientBatchCheck");
846+
headers.putIfAbsent(CLIENT_BULK_REQUEST_ID_HEADER, randomUUID().toString());
847+
options.additionalHeaders(headers);
847848

848849
int maxParallelRequests = options.getMaxParallelRequests() != null
849850
? options.getMaxParallelRequests()
@@ -1130,12 +1131,13 @@ public CompletableFuture<ClientListRelationsResponse> listRelations(
11301131
var options = listRelationsOptions != null
11311132
? listRelationsOptions
11321133
: new ClientListRelationsOptions().maxParallelRequests(DEFAULT_MAX_METHOD_PARALLEL_REQS);
1133-
if (options.getAdditionalHeaders() == null) {
1134-
options.additionalHeaders(new HashMap<>());
1135-
}
1136-
options.getAdditionalHeaders().putIfAbsent(CLIENT_METHOD_HEADER, "ListRelations");
1137-
options.getAdditionalHeaders()
1138-
.putIfAbsent(CLIENT_BULK_REQUEST_ID_HEADER, randomUUID().toString());
1134+
1135+
HashMap<String, String> headers = options.getAdditionalHeaders() != null
1136+
? new HashMap<>(options.getAdditionalHeaders())
1137+
: new HashMap<>();
1138+
headers.put(CLIENT_METHOD_HEADER, "ListRelations");
1139+
headers.put(CLIENT_BULK_REQUEST_ID_HEADER, randomUUID().toString());
1140+
options.additionalHeaders(headers);
11391141

11401142
var batchCheckRequests = request.getRelations().stream()
11411143
.map(relation -> new ClientCheckRequest()

src/test/java/dev/openfga/sdk/api/client/OpenFgaClientHeadersTest.java

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -516,9 +516,8 @@ public void clientBatchCheck_withHeaders() throws Exception {
516516
._object(DEFAULT_OBJECT)
517517
.relation(DEFAULT_RELATION)
518518
.user(DEFAULT_USER);
519-
Map<String, String> headers = new java.util.HashMap<>();
520-
headers.put("test-header", "test-value-per-call");
521-
ClientBatchCheckClientOptions options = new ClientBatchCheckClientOptions().additionalHeaders(headers);
519+
ClientBatchCheckClientOptions options =
520+
new ClientBatchCheckClientOptions().additionalHeaders(Map.of("test-header", "test-value-per-call"));
522521

523522
// When
524523
List<ClientBatchCheckClientResponse> response =
@@ -748,10 +747,8 @@ public void listRelations_withHeaders() throws Exception {
748747
.relations(List.of(DEFAULT_RELATION))
749748
.user(DEFAULT_USER)
750749
._object(DEFAULT_OBJECT);
751-
// Use HashMap instead of Map.of() to create a mutable map
752-
Map<String, String> headers = new java.util.HashMap<>();
753-
headers.put("test-header", "test-value-per-call");
754-
ClientListRelationsOptions options = new ClientListRelationsOptions().additionalHeaders(headers);
750+
ClientListRelationsOptions options =
751+
new ClientListRelationsOptions().additionalHeaders(Map.of("test-header", "test-value-per-call"));
755752

756753
// When
757754
ClientListRelationsResponse response =

0 commit comments

Comments
 (0)