public class RemoteStorageHelperUtility to create a remote storage configuration for testing. Storage options can be obtained via
the #getOptions() ()} method. Returned options have custom StorageOptions#getRetrySettings(): RetrySettings#getMaxAttempts() is 10, RetrySettings#getMaxRetryDelay() is 30000, RetrySettings#getTotalTimeout() is
120000 and RetrySettings#getInitialRetryDelay() is 250. HttpTransportOptions#getConnectTimeout() and HttpTransportOptions#getReadTimeout() are
both set to 60000.
Methods
cleanBuckets(Storage storage, long olderThan, long timeoutMs)
public static void cleanBuckets(Storage storage, long olderThan, long timeoutMs)| Name | Description |
| storage | Storage |
| olderThan | long |
| timeoutMs | long |
create()
public static RemoteStorageHelper create()Creates a RemoteStorageHelper object using default project id and authentication
credentials.
| Type | Description |
| RemoteStorageHelper |
| Type | Description |
| RemoteStorageHelper.StorageHelperException |
create(String projectId, InputStream keyStream)
public static RemoteStorageHelper create(String projectId, InputStream keyStream)Creates a RemoteStorageHelper object for the given project id and JSON key input
stream.
| Name | Description |
| projectId | Stringid of the project to be used for running the tests |
| keyStream | InputStreaminput stream for a JSON key |
| Type | Description |
| RemoteStorageHelper | A |
| Type | Description |
| RemoteStorageHelper.StorageHelperException | if |
forceDelete(Storage storage, String bucket)
public static void forceDelete(Storage storage, String bucket)Deletes a bucket, even if non-empty. This method blocks until the deletion completes or fails.
| Name | Description |
| storage | Storagethe storage service to be used to issue requests |
| bucket | Stringthe bucket to be deleted |
forceDelete(Storage storage, String bucket, long timeout, TimeUnit unit)
public static Boolean forceDelete(Storage storage, String bucket, long timeout, TimeUnit unit)Deletes a bucket, even if non-empty. Objects in the bucket are listed and deleted until bucket
deletion succeeds or timeout expires. To allow for the timeout, this method uses a
separate thread to send the delete requests. Use #forceDelete(Storage storage, String
bucket) if spawning an additional thread is undesirable, such as in the App Engine production
runtime.
| Name | Description |
| storage | Storagethe storage service to be used to issue requests |
| bucket | Stringthe bucket to be deleted |
| timeout | longthe maximum time to wait |
| unit | TimeUnitthe time unit of the timeout argument |
| Type | Description |
| Boolean | true if deletion succeeded, false if timeout expired |
| Type | Description |
| InterruptedException | if the thread deleting the bucket is interrupted while waiting |
| ExecutionException | if the thread deleting the bucket is interrupted while waiting |
forceDelete(Storage storage, String bucket, long timeout, TimeUnit unit, String userProject)
public static Boolean forceDelete(Storage storage, String bucket, long timeout, TimeUnit unit, String userProject)Deletes a bucket, even if non-empty. Objects in the bucket are listed and deleted until bucket
deletion succeeds or timeout expires. To allow for the timeout, this method uses a
separate thread to send the delete requests. Use #forceDelete(Storage storage, String
bucket) if spawning an additional thread is undesirable, such as in the App Engine production
runtime.
| Name | Description |
| storage | Storagethe storage service to be used to issue requests |
| bucket | Stringthe bucket to be deleted |
| timeout | longthe maximum time to wait |
| unit | TimeUnitthe time unit of the timeout argument |
| userProject | Stringthe project to bill for requester-pays buckets (or "") |
| Type | Description |
| Boolean | true if deletion succeeded, false if timeout expired |
| Type | Description |
| InterruptedException | if the thread deleting the bucket is interrupted while waiting |
| ExecutionException | if the thread deleting the bucket is interrupted while waiting |
generateBucketName()
public static String generateBucketName()Returns a bucket name generated using a random UUID.
| Type | Description |
| String |
getOptions()
public StorageOptions getOptions()Returns a StorageOptions object to be used for testing.
| Type | Description |
| StorageOptions |