Object

akka.stream.alpakka.s3.scaladsl

S3

Related Doc: package scaladsl

Permalink

object S3

Factory of S3 operations.

Source
S3.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. S3
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. val MinChunkSize: Int

    Permalink
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def checkIfBucketExists(bucketName: String)(implicit mat: Materializer, attributes: Attributes = Attributes()): Future[BucketAccess]

    Permalink

    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

  7. def checkIfBucketExistsSource(bucketName: String): Source[BucketAccess, NotUsed]

    Permalink

    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

  8. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def deleteBucket(bucketName: String)(implicit mat: Materializer, attributes: Attributes = Attributes()): Future[Done]

    Permalink

    Delete bucket with a given name

    Delete bucket with a given name

    bucketName

    bucket name

    returns

    Future of type Done as API doesn't return any additional information

    See also

    https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketDELETE.html

  10. def deleteBucketSource(bucketName: String): Source[Done, NotUsed]

    Permalink

    Delete bucket with a given name

    Delete bucket with a given name

    bucketName

    bucket name

    returns

    Source of type Done as API doesn't return any additional information

    See also

    https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketDELETE.html

  11. def deleteObject(bucket: String, key: String, versionId: Option[String] = None): Source[Done, NotUsed]

    Permalink

    Deletes a S3 Object

    Deletes a S3 Object

    bucket

    the s3 bucket name

    key

    the s3 object key

    versionId

    optional version id of the object

    returns

    A Source that will emit akka.Done when operation is completed

  12. def deleteObjectsByPrefix(bucket: String, prefix: Option[String]): Source[Done, NotUsed]

    Permalink

    Deletes a S3 Objects which contain given prefix

    Deletes a S3 Objects which contain given prefix

    bucket

    the s3 bucket name

    prefix

    optional s3 objects prefix

    returns

    A Source that will emit akka.Done when operation is completed

  13. 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]

    Permalink

    Downloads a S3 Object

    Downloads a S3 Object

    bucket

    the s3 bucket name

    key

    the s3 object key

    range

    [optional] the ByteRange you want to download

    sse

    [optional] the server side encryption used on upload

    returns

    The source will emit an empty Option if an object can not be found. Otherwise Option will contain a tuple of object's data and metadata.

  14. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  16. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  17. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  18. def getObjectMetadata(bucket: String, key: String, versionId: Option[String] = None, sse: Option[ServerSideEncryption] = None): Source[Option[ObjectMetadata], NotUsed]

    Permalink

    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

  19. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  20. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  21. def listBucket(bucket: String, prefix: Option[String]): Source[ListBucketResultContents, NotUsed]

    Permalink

    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

    Source of ListBucketResultContents

    See also

    https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGET.html (version 1 API)

    https://docs.aws.amazon.com/AmazonS3/latest/API/v2-RESTBucketGET.html (version 1 API)

  22. def makeBucket(bucketName: String)(implicit mat: Materializer, attr: Attributes = Attributes()): Future[Done]

    Permalink

    Create new bucket with a given name

    Create new bucket with a given name

    bucketName

    bucket name

    returns

    Future with type Done as API doesn't return any additional information

    See also

    https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUT.html

  23. def makeBucketSource(bucketName: String): Source[Done, NotUsed]

    Permalink

    Create new bucket with a given name

    Create new bucket with a given name

    bucketName

    bucket name

    returns

    Source of type Done as API doesn't return any additional information

    See also

    https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUT.html

  24. 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]]

    Permalink

    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.

  25. 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]]

    Permalink

    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

  26. def multipartUploadWithHeaders(bucket: String, key: String, contentType: ContentType = ..., chunkSize: Int = MinChunkSize, chunkingParallelism: Int = 4, s3Headers: S3Headers = S3Headers()): Sink[ByteString, Future[MultipartUploadResult]]

    Permalink

    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

  27. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  28. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  29. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  30. def putObject(bucket: String, key: String, data: Source[ByteString, _], contentLength: Long, contentType: ContentType = ..., s3Headers: S3Headers): Source[ObjectMetadata, NotUsed]

    Permalink

    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

  31. def request(bucket: String, key: String, method: HttpMethod = HttpMethods.GET, versionId: Option[String] = None, s3Headers: S3Headers = S3Headers()): Source[HttpResponse, NotUsed]

    Permalink

    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

  32. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  33. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  34. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  35. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  36. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped