Copy objects from one container to another container or between different folders within the same container.
Copy objects from one container to another container or between different folders within the same container. This assumes that the credentials provided have access to both containers.
String - The container to copy the object from.
String - The object prefix to copy from.
String - The container to copy the object to.
String - The object prefix to copy to.
Option[Boolean] - Whether the copy is a file or folder? Defaults to false i.e copy one file.
Delete an object from the cloud store
Delete an object from the cloud store
String - The container/bucket of the object.
String - The object key to delete.
Option[Boolean] - Whether the object is a directory and need to be deleted recursively? Optional and defaults to false.
Delete objects from the cloud store
Delete objects from the cloud store
String - The container/bucket of the objects
List[(String, Boolean)] - The objects to delete. The tuple contains the object key to be deleted and whether the object is a folder so that recursive delete is triggered.
Download file/folder from cloud storage
Download file/folder from cloud storage
String - The container/bucket of the file
String - The key/path of the file to download from
String - The local destination path to download to
Option[Boolean] - Whether the file is a directory and need to be downloaded recursively? Optional and defaults to false.
Remote extract a archived file on cloud storage to a given folder within the same container.
Remote extract a archived file on cloud storage to a given folder within the same container.
String - The container/bucket of the archive file.
String - The blob object archive file
String - The destination folder on the bucket/container to extract to.
Get the blob object details
Get the blob object details
String - The container/bucket of the file
String - The key/path of the blob object
Option[Boolean] - Get payload as well while fetching details. Defaults to false.
Blob - The blob object.
Get the blob object data.
Get the blob object data.
String - The container/bucket of the file
String - The key/path of the blob object
Array[String] - object data
Get HDFS compatible file paths to be used in tech stack like Spark.
Get HDFS compatible file paths to be used in tech stack like Spark. For ex: for S3 the file path is prefixed with s3n://<bucket>/<key> and for Azure blob storage it would be wasbs://<container-name>@<storage-account-name>.blob.core.windows.net/<key>/
String - The container/bucket of the objects
List[Blob] - The Blob objects in the given container
List[String] - HDFS compatible file paths.
Get pre-signed URL to access an object in the cloud store.
Get pre-signed URL to access an object in the cloud store.
String - The container/bucket of the file
String - The key/path of the file to pre-sign
Option[Int] - The ttl/expiry for the pre-signed URL. Defaults to "max.signedurl.ttl" defined in global configuration*
String - The permission of pre-signed url the values are w (write), r (read). Defaults to "read".
String - The pre-signed url
Get pre-signed URL to access an object in the cloud store.
Get pre-signed URL to access an object in the cloud store.
String - The container/bucket of the file
String - The key/path of the file to pre-sign
Option[Int] - The ttl/expiry for the pre-signed URL. Defaults to "max.signedurl.ttl" defined in global configuration*
String - The permission of pre-signed url the values are w (write), r (read). Defaults to "read".
String - The object type of the content.
String - The pre-signed url
Get the URI of the given prefix
Get the URI of the given prefix
String - URI of the given prefix
List object keys from cloud storage for a given prefix.
List object keys from cloud storage for a given prefix. Similar to listObjects()
String - The container/bucket
String - The object prefix to list objects. The prefix can be folder or pattern.
List[Blob] - The blob objects for the given prefix.
List objects from cloud storage for a given prefix.
List objects from cloud storage for a given prefix.
String - The container/bucket
String - The object prefix to list objects. The prefix can be folder or pattern.
Option[Boolean] - Does the listing of objects include payload as well? Defaults to false
List[Blob] - The blob objects for the given prefix.
Put a blob in the cloud with the given content data.
Put a blob in the cloud with the given content data. The difference between this and upload() method is that this method takes in byte array and sets is payload for the object.
String - The container/bucket to upload the file to.
String - The byte array of an object.
String - The destination key/path to upload the file to. If the path exists it will be overwritten.
Option[Boolean] - Whether the file should have public read access? Optional and defaults to false.
Option[Boolean] - Whether the file is a directory and need to upload folder recursively? Optional and defaults to false.
Option[Int] - The ttl/expiry for the file. Optional and default is never expires
Option[Int] - Number of times the upload will be retried before failing. Defaults to "max.retries" defined in global configuration
String - The url of the file/folder uploaded
Similar to searchObjects().
Similar to searchObjects(). The only difference is that this method only returns the object keys instead of full blob objects.
String - The container/bucket.
String - The prefix to search on.
Option[String] - The date to search from. Optional
Option[String] - The date to search to. Optional
Option[Int] - The delta to search from given a from date or to date. Optional. If delta is provided and both fromDate and toDate are empty, the toDate will be defaulted to current date
String - The date pattern of from and to date. Defaulst to "yyyy-MM-dd"
List[String] - The object keys
Search for objects for a given prefix and return only keys.
Search for objects for a given prefix and return only keys. Specifically used for telemetry files as the files are prefixed by sync date.
By design the payload is not included in the search. If payload is required use getObject() method after the search is complete.
// TODO: Provide examples of all combinations of fromDate, toDate and delta
String - The container/bucket.
String - The prefix to search on.
Option[String] - The date to search from. Optional
Option[String] - The date to search to. Optional
Option[Int] - The delta to search from given a from date or to date. Optional. If delta is provided and both fromDate and toDate are empty, the toDate will be defaulted to current date
String - The date pattern of from and to date. Defaulst to "yyyy-MM-dd"
List[Blob] - The object keys
Upload a file/folder to cloud
Upload a file/folder to cloud
String - The container/bucket to upload the file to.
String - The file path.
String - The destination key/path to upload the file to. If the path exists it will be overwritten.
Option[Boolean] - Whether the file is a directory and need to upload folder recursively?
Option[Int] - Number of times the upload will be retried before failing. Defaults to global configuration "max.retries"
Option[Int] - The ttl/expiry for the file. Optional and default is never expires
String - The url of the file/folder uploaded