Releases: msemys/esjc
Releases · msemys/esjc
v1.6.0
- [#10] fixed: unable to unsubscribe catchup-subscription after client reconnect
- fixed incorrect batch-size range check [1, 4096) -> [1, 4096]
- [#7]
EventStore
class converted to an interface - added
EventStore.appendToStream
overloaded method for single event - added
Transaction.write
overloaded method for single event - added stream events iteration support.
EventStore.iterateXXXX
methods allows to iterate over events in a stream from the specified starting point to the end of stream by transparently reading batches of events. - removed
EventStore.isRunning()
method from public api - refactored builders:
EventStoreBuilder.tcpXXXX()
methods replaced withEventStoreBuilder.tcpSettings(tcp -> tcp)
EventStoreBuilder.clusterNodeXXXX()
methods replaced withEventStoreBuilder.clusterNodeUsingGossipSeeds(cluster -> cluster)
andEventStoreBuilder.clusterNodeUsingDns(cluster -> cluster)
EventStoreBuilder.xxxxEnabled()
andEventStoreBuilder.xxxxDisabled()
methods replaced withEventStoreBuilder.xxxx(boolean)
EventStoreBuilder.clientReconnectionDelay()
method renamed toEventStoreBuilder.reconnectionDelay()
EventStoreBuilder.maxClientReconnections()
method renamed toEventStoreBuilder.maxReconnections()
- removed
XXXXBuilder.unlimitedXXXX()
methods - useXXXXBuilder.maxXXXX(-1)
- renamed fields:
TcpSettings.tcpNoDelay
toTcpSettings.noDelay
ClusterNodeSettings.clusterDns
toClusterNodeSettings.dns
Settings.persistentSubscriptionAutoAckEnabled
toSettings.persistentSubscriptionAutoAck
- renamed classes:
StaticNodeSettings
toSingleNodeSettings
StaticEndpointDiscoverer
toSingleEndpointDiscoverer
ClusterDnsEndpointDiscoverer
toClusterEndpointDiscoverer
- improved documentation:
- added default values to builders methods documentation
- added allowed range for batch-size to builders methods documentation
- improved preconditions error messages
- bumped netty version to 4.0.42.Final
- bumped gson version to 2.8.0
v1.5.0
- fixed a race condition when subscribing to a persistent subscription
- PersistentSubscriptionSettings public fields are made immutable (final keyword was missing)
- removed throws Exception from
Subscription.close()
andTransaction.close()
methods signature CatchUpSubscription.close()
andPersistentSubscription.close()
methods throws more specific TimeoutException (was Exception)- renamed method
EventStoreBuilder.useSslConnectionWithAnyCertificate()
toEventStoreBuilder.useSslConnection()
- added
ExpectedVersion.streamExists()
which will only allow appending to a stream if it already exists (supported since EventStore v3.7.0) - added builders for StreamAcl and SystemSettings models
- added
StreamMetadata.toBuilder()
method that creates a new stream metadata builder with populated values - added
StreamMetadata.findCustomProperty(String)
method that returns optional property - added
StreamMetadata.Builder.acl(StreamAcl)
method that allows to set stream acl model - added ability to set string/number/boolean array type custom-property for stream metadata (e.g.:
StreamMetadata.newBuilder().customProperty("intArray", 1, 2, 3)
) - slightly improved performance by replacing
Arrays.asList()
with only one argument toCollections.singletonList()
- bumped netty version to 4.0.40.Final
- bumped gson version to 2.7
v1.4.0
- fixed missing CommitTransactionOperation result
- fixed isJsonData flag of EventData when data/metadata is null
- fixed default values in persistent subscription settings (readBatchSize=20, maxRetryCount=10, liveBufferSize=500, historyBufferSize=500)
- fixed JSON parsing error handling in getStreamMetadata()
- fixed truncateBefore precondition check (should not be negative) in StreamMetadata builder
- fixed metadata precondition check (allows to set null) in setStreamMetadata()
- added ability to set number/boolean type custom property for stream metadata
- added ability to subscribe to persistent subscription asynchronously
- added catchup subscription settings
- added linkTo method in EventData builder, that allows you to create linked event (e.g.: EventData.newBuilder().linkTo(3, "foo").build())
- exposed client settings
- populates channel errors to client listeners
- improved api documentation with client exceptions when operation completes exceptionally
- bumped netty version to 4.0.36.Final
- bumped slf4j api version to 1.7.21