Skip to content

Commit

Permalink
Preparing for 2.11.0 (#457)
Browse files Browse the repository at this point in the history
preparing for release 2.11.0
  • Loading branch information
scottf authored Apr 30, 2021
1 parent 60625c3 commit 92771e6
Show file tree
Hide file tree
Showing 4 changed files with 64 additions and 1 deletion.
22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,28 @@

# Change Log

## Version 2.11.0

#### Issue Bug Fixes
- [FIXED] Issue #340 No connection possible when using multiple servers PR #455 (@scottf)

#### Pull Requests
- [FIXED] PR #451 Header status improvements (@scottf)
- [ENHANCEMENT] PR #452 handle no ack publishing (@scottf)
- [ENHANCEMENT] PR #456 switched to jnats-server-runner library (@scottf)
- [ENHANCEMENT] PR #446 improve cleanup of async responses (@scottf)

#### Issues General Closed
- [NON ISSUE] Issue #298 NatsConnection does not report SSL error (@scottf)
- [WILL NOT IMPLEMENT] Issue #272 Add ability to publish byte arrays with specified offset and length (@scottf)
- [DOCUMENTED] Issue #316 Failure creating a subscription on a (fairly) new connection (@scottf)
- [NON ISSUE] Issue #344 Performance issue when publishing to certain topics (@scottf)
- [WILL NOT IMPLEMENT] Issue #373 Why not netty for networking? (@sasbury)
- [PRE-RELEASE FEATURE REMOVED] Issue #388 In the jetstream subscriber examples... (@scottf)
- [DOCUMENTED] Issue #402 Unable to connect to NATS server via Android Studio
- [DOCUMENTED] Issue #445 NatsConnection.request(Message) does not use Message.replyTo (@scottf)
- [DOCUMENTED] Issue #423 createContext() not documented (@scottf)

## Version 2.10.0

1. JetStream (message and management) support added.
Expand Down
19 changes: 18 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,12 @@ All of these methods, as well as the incoming message code use byte arrays for m
send JSON, Strings, YAML, Protocol Buffers, or any other format through NATS to applications written in a wide range of
languages.

#### ReplyTo When Making A Request

The Message object allows you to set a replyTo, but in requests,
the replyTo is reserved for internal use as the address for the
server to respond to the client with the consumer's reply.
### Listening for Incoming Messages
The Java NATS library provides two mechanisms to listen for messages, three if you include the request/reply discussed above.
Expand Down Expand Up @@ -317,6 +323,12 @@ See `NatsJsPubWithOptionsUseCases.java` in the JetStream examples for a detailed
See the `NatsJsPubAsync.java` in the JetStream examples for a detailed and runnable example.
#### ReplyTo When Publishing
The Message object allows you to set a replyTo, but in publish requests,
the replyTo is reserved for internal use as the address for the
server to respond to the client with the PublishAck.
### Subscribing
There are two methods of subscribing, **Push** and **Pull** with each variety having its own set of options and abilities.
Expand Down Expand Up @@ -497,7 +509,12 @@ NATS supports TLS 1.2. The server can be configured to verify client certificate
Connection nc = Nats.connect(options);
```

If you want to try out these techniques, take a look at the [examples.md](src/examples/java/io/nats/examples/examples.md) for instructions.
If you want to try out these techniques, take a look at the [README.md](src/examples/java/io/nats/examples/README.md) for instructions.

Also, here are some places in the code that may help
https://github.com/nats-io/nats.java/blob/main/src/main/java/io/nats/client/support/SSLUtils.java
https://github.com/nats-io/nats.java/blob/main/src/test/java/io/nats/client/TestSSLUtils.java


### Clusters & Reconnecting

Expand Down
8 changes: 8 additions & 0 deletions src/main/java/io/nats/client/Connection.java
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,10 @@ enum Status {
* Send a request. The returned future will be completed when the
* response comes back.
*
* <p>The Message object allows you to set a replyTo, but in requests,
* the replyTo is reserved for internal use as the address for the
* server to respond to the client with the consumer's reply.</p>
*
* @param message the message
* @return a Future for the response, which may be cancelled on error or timed out
*/
Expand All @@ -207,6 +211,10 @@ enum Status {
* to calling get on the future returned from {@link #request(String, byte[]) request()} with
* the timeout and handling the ExecutionException and TimeoutException.
*
* <p>The Message object allows you to set a replyTo, but in requests,
* the replyTo is reserved for internal use as the address for the
* server to respond to the client with the consumer's reply.</p>
*
* @param message the message
* @param timeout the time to wait for a response
* @return the reply message or null if the timeout is reached
Expand Down
16 changes: 16 additions & 0 deletions src/main/java/io/nats/client/JetStream.java
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,10 @@ public interface JetStream {
*
* where the sender creates a byte array immediately before calling publish.
*
* <p>The Message object allows you to set a replyTo, but in publish requests,
* the replyTo is reserved for internal use as the address for the
* server to respond to the client with the PublishAck.</p>
*
* See {@link #publish(String, byte[]) publish()} for more details on
* publish during reconnect.
*
Expand All @@ -113,6 +117,10 @@ public interface JetStream {
*
* where the sender creates a byte array immediately before calling publish.
*
* <p>The Message object allows you to set a replyTo, but in publish requests,
* the replyTo is reserved for internal use as the address for the
* server to respond to the client with the PublishAck.</p>
*
* See {@link #publish(String, byte[]) publish()} for more details on
* publish during reconnect.
*
Expand Down Expand Up @@ -202,6 +210,10 @@ public interface JetStream {
* an IOException covers various communication issues with the NATS server such as timeout or interruption
* - or - a JetStreamApiException the request had an error related to the data
*
* <p>The Message object allows you to set a replyTo, but in publish requests,
* the replyTo is reserved for internal use as the address for the
* server to respond to the client with the PublishAck.</p>
*
* @param message the message to send
* @return The future
*/
Expand All @@ -227,6 +239,10 @@ public interface JetStream {
* an IOException covers various communication issues with the NATS server such as timeout or interruption
* - or - a JetStreamApiException the request had an error related to the data
*
* <p>The Message object allows you to set a replyTo, but in publish requests,
* the replyTo is reserved for internal use as the address for the
* server to respond to the client with the PublishAck.</p>
*
* @param message the message to publish
* @param options publisher options
* @return The future
Expand Down

0 comments on commit 92771e6

Please sign in to comment.