Skip to content

Commit c691cbb

Browse files
chore: refactor retrier creation from HttpStorageOptions to StorageOptions (#3350)
Co-authored-by: BenWhitehead <[email protected]>
1 parent e94c4e6 commit c691cbb

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

google-cloud-storage/src/main/java/com/google/cloud/storage/HttpStorageOptions.java

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@
3232
import com.google.cloud.http.HttpTransportOptions;
3333
import com.google.cloud.spi.ServiceRpcFactory;
3434
import com.google.cloud.storage.BlobWriteSessionConfig.WriterFactory;
35-
import com.google.cloud.storage.Retrying.DefaultRetrier;
3635
import com.google.cloud.storage.Retrying.HttpRetrier;
3736
import com.google.cloud.storage.Retrying.RetryingDependencies;
3837
import com.google.cloud.storage.Storage.BlobWriteOption;
@@ -409,13 +408,7 @@ public Storage create(StorageOptions options) {
409408
WriterFactory factory = blobWriteSessionConfig.createFactory(clock);
410409
StorageImpl storage =
411410
new StorageImpl(
412-
httpStorageOptions,
413-
factory,
414-
new HttpRetrier(
415-
new DefaultRetrier(
416-
OtelStorageDecorator.retryContextDecorator(otel),
417-
RetryingDependencies.simple(
418-
options.getClock(), options.getRetrySettings()))));
411+
httpStorageOptions, factory, new HttpRetrier(options.createRetrier()));
419412
return OtelStorageDecorator.decorate(storage, otel, Transport.HTTP);
420413
} catch (IOException e) {
421414
throw new IllegalStateException(

google-cloud-storage/src/main/java/com/google/cloud/storage/StorageOptions.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@
2626
import com.google.cloud.storage.HttpStorageOptions.HttpStorageDefaults;
2727
import com.google.cloud.storage.HttpStorageOptions.HttpStorageFactory;
2828
import com.google.cloud.storage.HttpStorageOptions.HttpStorageRpcFactory;
29+
import com.google.cloud.storage.Retrying.DefaultRetrier;
30+
import com.google.cloud.storage.Retrying.Retrier;
31+
import com.google.cloud.storage.Retrying.RetryingDependencies;
2932
import com.google.cloud.storage.Storage.BlobWriteOption;
3033
import com.google.cloud.storage.TransportCompatibility.Transport;
3134
import com.google.cloud.storage.spi.StorageRpcFactory;
@@ -68,6 +71,12 @@ public abstract class StorageOptions extends ServiceOptions<Storage, StorageOpti
6871
VERSION = tmp;
6972
}
7073

74+
Retrier createRetrier() {
75+
return new DefaultRetrier(
76+
OtelStorageDecorator.retryContextDecorator(getOpenTelemetry()),
77+
RetryingDependencies.simple(getClock(), getRetrySettings()));
78+
}
79+
7180
/**
7281
* @deprecated Use {@link HttpStorageFactory}
7382
*/

0 commit comments

Comments
 (0)