cziegeler commented on a change in pull request #25:
URL:
https://github.com/apache/sling-org-apache-sling-feature/pull/25#discussion_r646383549
##########
File path:
src/main/java/org/apache/sling/feature/io/artifacts/spi/ArtifactProvider.java
##########
@@ -43,8 +44,20 @@
/**
* Shutdown the provider.
+ * @deprecated Use {@link #close()} instead.
*/
- void shutdown();
+ @Deprecated
+ default void shutdown() {
+
Review comment:
But shouldn't such a retry logic be part of shutdown? It seems to be a
high burden to clients to figure out whether the IOException is transient or
persistent.
Right now, both provider and manager have a shutdown method not throwing a
checked exception. It is expected that the implementation does whatever is
required to shutdown. With introducing close() to both, the provider and the
manager, you create this new situation where the provider now can throw on
close - which then needs to be handled by the manager.
Therefore my expectation is that shutdown never throws (a checked
exception), we can implement Closeable as a convenience but close() will never
throw an IOException.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]