object S3
- Alphabetic
- By Inheritance
- S3
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val MinChunkSize: Int
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
checkIfBucketExists(bucketName: String)(implicit mat: Materializer, attributes: Attributes = Attributes()): Future[BucketAccess]
Checks whether the bucket exits and user has rights to perform ListBucket operation
Checks whether the bucket exits and user has rights to perform ListBucket operation
- bucketName
bucket name
- returns
Future of type BucketAccess
- See also
https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketHEAD.html
-
def
checkIfBucketExistsSource(bucketName: String): Source[BucketAccess, NotUsed]
Checks whether the bucket exits and user has rights to perform ListBucket operation
Checks whether the bucket exits and user has rights to perform ListBucket operation
- bucketName
bucket name
- returns
Source of type BucketAccess
- See also
https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketHEAD.html
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
deleteBucket(bucketName: String)(implicit mat: Materializer, attributes: Attributes = Attributes()): Future[Done]
Delete bucket with a given name
-
def
deleteBucketSource(bucketName: String): Source[Done, NotUsed]
Delete bucket with a given name
-
def
deleteObject(bucket: String, key: String, versionId: Option[String] = None): Source[Done, NotUsed]
Deletes a S3 Object
-
def
deleteObjectsByPrefix(bucket: String, prefix: Option[String]): Source[Done, NotUsed]
Deletes a S3 Objects which contain given prefix
-
def
download(bucket: String, key: String, range: Option[ByteRange] = None, versionId: Option[String] = None, sse: Option[ServerSideEncryption] = None): Source[Option[(Source[ByteString, NotUsed], ObjectMetadata)], NotUsed]
Downloads a S3 Object
Downloads a S3 Object
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
getObjectMetadata(bucket: String, key: String, versionId: Option[String] = None, sse: Option[ServerSideEncryption] = None): Source[Option[ObjectMetadata], NotUsed]
Gets the metadata for a S3 Object
Gets the metadata for a S3 Object
- bucket
the s3 bucket name
- key
the s3 object key
- versionId
optional version id of the object
- sse
the server side encryption to use
- returns
A Source containing an scala.Option that will be scala.None in case the object does not exist
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
listBucket(bucket: String, prefix: Option[String]): Source[ListBucketResultContents, NotUsed]
Will return a source of object metadata for a given bucket with optional prefix using version 2 of the List Bucket API.
Will return a source of object metadata for a given bucket with optional prefix using version 2 of the List Bucket API. This will automatically page through all keys with the given parameters.
The
alpakka.s3.list-bucket-api-version
can be set to 1 to use the older API version 1- bucket
Which bucket that you list object metadata for
- prefix
Prefix of the keys you want to list under passed bucket
- returns
- See also
https://docs.aws.amazon.com/AmazonS3/latest/API/v2-RESTBucketGET.html (version 1 API)
https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGET.html (version 1 API)
-
def
makeBucket(bucketName: String)(implicit mat: Materializer, attr: Attributes = Attributes()): Future[Done]
Create new bucket with a given name
-
def
makeBucketSource(bucketName: String): Source[Done, NotUsed]
Create new bucket with a given name
-
def
multipartCopy(sourceBucket: String, sourceKey: String, targetBucket: String, targetKey: String, sourceVersionId: Option[String] = None, contentType: ContentType = ..., s3Headers: S3Headers = S3Headers(), chunkSize: Int = MinChunkSize, chunkingParallelism: Int = 4): RunnableGraph[Future[MultipartUploadResult]]
Copy an S3 object from source bucket to target bucket using multi part copy upload.
Copy an S3 object from source bucket to target bucket using multi part copy upload.
- sourceBucket
source s3 bucket name
- sourceKey
source s3 key
- targetBucket
target s3 bucket name
- targetKey
target s3 key
- sourceVersionId
optional version id of source object, if the versioning is enabled in source bucket
- contentType
an optional ContentType
- s3Headers
any headers you want to add
- chunkSize
the size of the requests sent to S3, minimum MinChunkSize
- chunkingParallelism
the number of parallel requests used for the upload, defaults to 4
- returns
a runnable graph which upon materialization will return a Future containing the results of the copy operation.
-
def
multipartUpload(bucket: String, key: String, contentType: ContentType = ..., metaHeaders: MetaHeaders = MetaHeaders(Map()), cannedAcl: CannedAcl = CannedAcl.Private, chunkSize: Int = MinChunkSize, chunkingParallelism: Int = 4, sse: Option[ServerSideEncryption] = None): Sink[ByteString, Future[MultipartUploadResult]]
Uploads a S3 Object by making multiple requests
Uploads a S3 Object by making multiple requests
- bucket
the s3 bucket name
- key
the s3 object key
- contentType
an optional ContentType
- metaHeaders
any meta-headers you want to add
- cannedAcl
a CannedAcl, defaults to CannedAcl.Private
- chunkSize
the size of the requests sent to S3, minimum MinChunkSize
- chunkingParallelism
the number of parallel requests used for the upload, defaults to 4
- returns
a Sink that accepts ByteString's and materializes to a Future of MultipartUploadResult
-
def
multipartUploadWithHeaders(bucket: String, key: String, contentType: ContentType = ..., chunkSize: Int = MinChunkSize, chunkingParallelism: Int = 4, s3Headers: S3Headers = S3Headers()): Sink[ByteString, Future[MultipartUploadResult]]
Uploads a S3 Object by making multiple requests
Uploads a S3 Object by making multiple requests
- bucket
the s3 bucket name
- key
the s3 object key
- contentType
an optional ContentType
- chunkSize
the size of the requests sent to S3, minimum MinChunkSize
- chunkingParallelism
the number of parallel requests used for the upload, defaults to 4
- s3Headers
any headers you want to add
- returns
a Sink that accepts ByteString's and materializes to a Future of MultipartUploadResult
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
putObject(bucket: String, key: String, data: Source[ByteString, _], contentLength: Long, contentType: ContentType = ..., s3Headers: S3Headers): Source[ObjectMetadata, NotUsed]
Uploads a S3 Object, use this for small files and multipartUpload for bigger ones
Uploads a S3 Object, use this for small files and multipartUpload for bigger ones
- bucket
the s3 bucket name
- key
the s3 object key
- data
a Stream of ByteString
- contentLength
the number of bytes that will be uploaded (required!)
- contentType
an optional ContentType
- s3Headers
any headers you want to add
- returns
a Source containing the ObjectMetadata of the uploaded S3 Object
-
def
request(bucket: String, key: String, method: HttpMethod = HttpMethods.GET, versionId: Option[String] = None, s3Headers: S3Headers = S3Headers()): Source[HttpResponse, NotUsed]
Use this for a low level access to S3.
Use this for a low level access to S3.
- bucket
the s3 bucket name
- key
the s3 object key
- method
the HttpMethod to use when making the request
- versionId
optional version id of the object
- s3Headers
any headers you want to add
- returns
a raw HTTP response from S3
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )