Class

com.github.dwhjames.awswrap.dynamodb

ConcurrentBatchWriter

Related Doc: package dynamodb

Permalink

class ConcurrentBatchWriter extends AnyRef

A multi-threaded, self-throttling, batch writer to a given DynamoDB table

This class provides a blocking interface to write items in batch to one DynamoDB table. The credentials that are provided must permit the "BatchWriteItem" operation to the named table.

Source
ConcurrentBatchWriter.scala
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ConcurrentBatchWriter
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ConcurrentBatchWriter(tableName: String, credentials: AWSCredentials, writeConcurrency: Int)

    Permalink

    Create a new concurrent batch writer

    Create a new concurrent batch writer

    tableName

    The name of the DynamoDB table to write to

    credentials

    Static credentials to the DynamoDB table

    writeConcurrency

    The number of concurrent writers

  2. new ConcurrentBatchWriter(tableName: String, credentialsProvider: AWSCredentialsProvider, writeConcurrency: Int)

    Permalink

    Create a new concurrent batch writer

    Create a new concurrent batch writer

    tableName

    The name of the DynamoDB table to write to

    credentialsProvider

    A provider for credentials to the DynamoDB table

    writeConcurrency

    The number of concurrent writers

Type Members

  1. class WriteGroup[Metadata] extends AnyRef

    Permalink

    A class for managing the synchronization of a group of writes.

    A class for managing the synchronization of a group of writes.

    This class facilitates the grouping of write requests.

    Metadata

    the type of the metadata tag

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. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def createWriteGroup[Metadata](metadata: Metadata, errorQueue: Queue[FailedBatch[Metadata]]): WriteGroup[Metadata]

    Permalink

    Create a WriteGroup object to be used for a group of write requests that have a metadata tag in common.

    Create a WriteGroup object to be used for a group of write requests that have a metadata tag in common.

    This creates a view on to the concurrent batch writer, so that a collection of writes can be grouped together. The writes that are queued are tagged with the given metadata, so that errors can be reported informatively, and when used in tandem with [WriteGroup.awaitCompletionOfAllWrites], one can wait until all writes in a group have completed.

    Metadata

    the type of the metadata tag

    metadata

    the metadata to tag this group with

    errorQueue

    the error queue to report errors on

    returns

    a new write group

  7. val credentialsProvider: AWSCredentialsProvider

    Permalink

    A provider for credentials to the DynamoDB table

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

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

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

    Permalink
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  17. def shutdownAndAwaitTermination(): Unit

    Permalink

    Perform an orderly shut down of the underlying thread pool and connection pool.

    Perform an orderly shut down of the underlying thread pool and connection pool.

    This initiates an orderly shut down on thread and connection resources. The write queue is closed, and write batches that were previously submitted are given 60 seconds to be run and complete. After this time, all running writes are cancelled, and are given 60 seconds to terminate. The underlying DynamoDB client and its connection pool is also shutdown.

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

    Permalink
    Definition Classes
    AnyRef
  19. val tableName: String

    Permalink

    The name of the DynamoDB table to write to

  20. def toString(): String

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. val writeConcurrency: Int

    Permalink

    The number of concurrent writers

Inherited from AnyRef

Inherited from Any

Ungrouped