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 clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. 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

  8. 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.

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

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  13. 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

  14. def hashCode(): Int

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

    Permalink
    Definition Classes
    Any
  16. 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)

  17. 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[Source[MultipartUploadResult, NotUsed]]

    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 source containing the results of the copy operation.

  18. 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, Source[MultipartUploadResult, NotUsed]]

    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 akka.stream.scaladsl.Source of MultipartUploadResult

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

    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 akka.stream.scaladsl.Source of MultipartUploadResult

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

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

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

    Permalink
    Definition Classes
    AnyRef
  23. 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

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

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

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

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

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped