3dbrows commented on PR #13633: URL: https://github.com/apache/arrow/pull/13633#issuecomment-1187685147
Thanks @wjones127 . For safety's sake then, perhaps we want to introduce a new subclass of `S3RetryStrategy`, let's say `class AwsStockRetryStrategy : public S3RetryStrategy`, which has a constructor that takes an enum value e.g. `AwsStockRetryStategyEnum.Adaptive` or`AwsStockRetryStategyEnum.Standard`. Internally in this proposed `AwsStockRetryStrategy` class, we have a private member `std::shared_ptr<RetryStrategy>` (from AWS) and in the constructor we `new` up a subclass of that (`AdaptiveRetryStrategy`, `StandardRetryStrategy`) according to the passed-in enum value. Methods in this class simply call through to the private member instance's equivalents. I'll put together something on this... once the UK heat breaks, as I'm currently melting at my desk. 😅 Current unknowns: * Finer points of surfacing the hypothetical `AwsStockRetryStrategy` in Python code * How best to test Thanks for looking at this. -- 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. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
