|
1 | 1 | # Change Log |
2 | 2 |
|
| 3 | +## [1.6.0](https://github.com/ably/ably-java/tree/v1.6.0) |
| 4 | + |
| 5 | +[Full Changelog](https://github.com/ably/ably-java/compare/v1.5.0...v1.6.0) |
| 6 | + |
| 7 | +### What's Changed |
| 8 | + |
| 9 | +* Message Updates and Deletes updated, Appends API added in [#1182](https://github.com/ably/ably-java/pull/1182) |
| 10 | +* Mutable Message API over Realtime added in [#1183](https://github.com/ably/ably-java/pull/1183) |
| 11 | +* Updated publish API to include message serials in the response in [#1184](https://github.com/ably/ably-java/pull/1184) |
| 12 | + |
| 13 | +### Breaking changes |
| 14 | + |
| 15 | +This release includes several breaking changes to experimental Mutable Message features: |
| 16 | + |
| 17 | +#### REST API Changes |
| 18 | + |
| 19 | +* `updateMessage()` and `deleteMessage()` now return `UpdateDeleteResult` instead of `void`, containing the updated message version serial |
| 20 | +* `updateMessageAsync()` and `deleteMessageAsync()` callback parameter changed from `CompletionListener` to `Callback<UpdateDeleteResult>` |
| 21 | +* Added `appendMessage()` and `appendMessageAsync()` methods returning `UpdateDeleteResult` |
| 22 | + |
| 23 | +#### Realtime API Changes |
| 24 | + |
| 25 | +* `updateMessage()`, `deleteMessage()`, and `appendMessage()` are now asynchronous methods (void return) instead of synchronous (returning `UpdateDeleteResult`) |
| 26 | +* All message mutation methods now accept an optional `Callback<UpdateDeleteResult>` parameter for async result handling |
| 27 | +* Removed `*Async` suffix from method names - all Realtime methods are now async by default and throw `AblyException` |
| 28 | +* `updateMessage()`, `deleteMessage()`, and `appendMessage()` now use WebSocket transport to send data rather than REST requests |
| 29 | + |
| 30 | +#### Migration Guide |
| 31 | + |
| 32 | +**REST API:** |
| 33 | +```java |
| 34 | +// Before (v1.5.0) |
| 35 | +channel.updateMessageAsync(message, new Callback<UpdateDeleteResult>() { |
| 36 | + public void onSuccess() { ... } |
| 37 | +}}); |
| 38 | + |
| 39 | +// After (v1.6.0) |
| 40 | +channel.updateMessageAsync(message, new Callback<UpdateDeleteResult>() { |
| 41 | + public void onSuccess(UpdateDeleteResult result) { ... } |
| 42 | +}); |
| 43 | +``` |
| 44 | + |
| 45 | +**Realtime API:** |
| 46 | +```java |
| 47 | +// Before (v1.5.0) |
| 48 | +channel.updateMessageAsync(message, new Callback<UpdateDeleteResult>() { |
| 49 | + public void onSuccess() { ... } |
| 50 | +}}); |
| 51 | + |
| 52 | +// After (v1.6.0) |
| 53 | +channel.updateMessage(message, new Callback<UpdateDeleteResult>() { |
| 54 | + public void onSuccess(UpdateDeleteResult result) { ... } |
| 55 | +}); |
| 56 | +``` |
| 57 | + |
3 | 58 | ## [1.5.0](https://github.com/ably/ably-java/tree/v1.5.0) |
4 | 59 |
|
5 | 60 | [Full Changelog](https://github.com/ably/ably-java/compare/v1.4.2...v1.5.0) |
|
0 commit comments