Skip to content

Changes

Summary

  1. Issue #87: Shutdown AdaptableBus Executor when closing MessagingProvider to prevent blocked threads after closing the client (details)
  2. Issue #87: Remove @since annotation (details)
  3. Adjust to JDK 11 concurrency implementation; make thread leackage test effective; fix it. (details)
  4. Add @since 1.3.0. (details)
  5. Issue #87: Minor review findings fixed (details)
Commit 99311fc12e78051cc03be30abd167a5c2c03706e by David Schwilk
Issue #87: Shutdown AdaptableBus Executor when closing MessagingProvider to prevent blocked threads after closing the client

Signed-off-by: David Schwilk <david.schwilk@bosch.io>
The file was modified java/src/main/java/org/eclipse/ditto/client/internal/bus/DefaultAdaptableBus.java (diff)
The file was modified java/src/main/java/org/eclipse/ditto/client/messaging/internal/WebSocketMessagingProvider.java (diff)
The file was modified java/src/main/java/org/eclipse/ditto/client/internal/bus/AdaptableBus.java (diff)
Commit 2233df7aadfc68bfedc7f0ea8e2acf225c80e6fc by David Schwilk
Issue #87: Remove @since annotation

Signed-off-by: David Schwilk <david.schwilk@bosch.io>
The file was modified java/src/main/java/org/eclipse/ditto/client/internal/bus/AdaptableBus.java (diff)
Commit 4fd6fe37d6cd778ce2a66c8a39a4296033bccc43 by Yufei Cai
Adjust to JDK 11 concurrency implementation; make thread leackage test effective; fix it.

1. Executors do not allocate threads before tasks are submitted. This
   made the thread leak test ineffective as no thread was allocated
   to begin with.

2. Runnables obtained from Executor.shutdownNow() cannot be run
   without another executor because they override Runnable.run()
   to NOT run when the parent executor was shut down.
   Refactor initialization to not rely on executing executor
   tasks in the calling thread.

3. Added an asynchronous client creation interface
   DisconnectedDittoClient to ensure that resources are released
   if client creation failed.

Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
The file was modified java/src/test/java/org/eclipse/ditto/client/internal/ClientShutdownTest.java (diff)
The file was modified java/src/main/java/org/eclipse/ditto/client/DittoClients.java (diff)
The file was modified java/src/main/java/org/eclipse/ditto/client/messaging/MessagingProvider.java (diff)
The file was modified java/src/main/java/org/eclipse/ditto/client/internal/DefaultDittoClient.java (diff)
The file was modified java/src/test/java/org/eclipse/ditto/client/DittoClientUsageExamples.java (diff)
The file was modified java/src/test/java/org/eclipse/ditto/client/messaging/internal/WebSocketMessagingProviderTest.java (diff)
The file was modified java/src/main/java/org/eclipse/ditto/client/internal/bus/DefaultAdaptableBus.java (diff)
The file was addedjava/src/main/java/org/eclipse/ditto/client/DisconnectedDittoClient.java
The file was modified java/src/main/java/org/eclipse/ditto/client/messaging/internal/WebSocketMessagingProvider.java (diff)
The file was modified java/src/test/java/org/eclipse/ditto/client/messaging/internal/MockMessagingProvider.java (diff)
The file was modified java/src/main/java/org/eclipse/ditto/client/messaging/internal/Retry.java (diff)
The file was modified java/src/test/java/org/eclipse/ditto/client/messaging/internal/RetryTest.java (diff)
Commit 80081a30558127c896b357e0a11dbe074fb1437a by Yufei Cai
Add @since 1.3.0.

Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
The file was modified java/src/main/java/org/eclipse/ditto/client/DisconnectedDittoClient.java (diff)
Commit e2ece43be4b6f6c7da615077acaec058aef7d865 by David Schwilk
Issue #87: Minor review findings fixed

Signed-off-by: David Schwilk <david.schwilk@bosch.io>
The file was modified java/src/main/java/org/eclipse/ditto/client/DittoClients.java (diff)
The file was modified java/src/main/java/org/eclipse/ditto/client/messaging/MessagingProvider.java (diff)