Repository navigation
kubemq-java v3.0.0
Added
- Typed exception hierarchy rooted at
KubeMQExceptionwithErrorCode,ErrorCategory, andErrorClassifier GrpcErrorMapperfor automatic gRPC status code to SDK exception mappingRetryPolicyframework with configurable backoff strategiesConnectionStateMachinewithDISCONNECTED → CONNECTING → CONNECTED → RECONNECTINGlifecycleReconnectionManagerwith exponential backoff andMessageBufferfor offline bufferingCredentialProviderinterface withStaticTokenProviderandCredentialManager- mTLS support via
tlsCaCertFilebuilder option - OpenTelemetry trace instrumentation with W3C trace context propagation
Subscriptionhandle returned from all subscribe methods for lifecycle management- Batch
sendQueuesMessages(List)API for queue message batching - Async API (
*Asyncmethods returningCompletableFuture) on all client classes - JMH benchmark infrastructure
KubeMQVersionclass for runtime SDK version access- Server compatibility check on connection with version range validation
- Comprehensive Javadoc on all public API classes and methods
- CI pipeline (GitHub Actions) with Java 11/17/21 matrix
Changed (BREAKING)
- All
subscribe*methods now returnSubscriptionhandle (wasvoid) validate()methods throwValidationExceptioninstead ofIllegalArgumentException- Logging migrated from
@Slf4jtoKubeMQLoggerabstraction commons-lang3andgrpc-altsdependencies removed;logbackmoved to test scope
Fixed
- Race condition in
EventStreamHelperduring concurrent stream operations - Resource leaks in client
close()with in-flight request draining
Install:
```xml
io.kubemq.sdk
kubemq-sdk-Java
3.0.0
```