Skip to content

Commit

Permalink
Fix UnsupportedOperationException when modifying headers (#93)
Browse files Browse the repository at this point in the history
* copy passed headers into an ArrayList before setting them to avoid UnsupportedOperationException's
  • Loading branch information
djeux authored Oct 9, 2024
1 parent d10991b commit 538d223
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 1 deletion.
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.31.1] - 2024-10-09

### Fixed
- Override the lombok generated `TkmsMessage#setHeaders` to copy the passed headers into a mutable `ArrayList` in order to avoid `UnsupportedOperationException`

## [0.31.0] - 2024-10-07

### Changed
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1 +1 @@
version=0.31.0
version=0.31.1
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import java.nio.charset.StandardCharsets;
import java.time.Instant;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.UUID;
Expand Down Expand Up @@ -107,6 +108,17 @@ public TkmsMessage addPriorityHeader(long priority) {
);
}

/**
* Copy the passed headers into a ModifiableList to avoid UnsupportedOperationException when `addHeader` is called.
* @param headers headers to copy
* @return TkmsMessage
*/
public TkmsMessage setHeaders(List<Header> headers) {
this.headers = new ArrayList<>(headers);

return this;
}

public TkmsMessage addHeader(Header header) {
if (headers == null) {
headers = new ArrayList<>();
Expand Down

0 comments on commit 538d223

Please sign in to comment.