Package

io.atlassian.event.stream

dynamo

Permalink

package dynamo

Visibility
  1. Public
  2. All

Type Members

  1. class DynamoEventStorage[F[_], KK, S, E] extends EventStorage[F, KK, S, E]

    Permalink

    Implementation of EventStorage using DynamoDB via the aws-scala library.

    Implementation of EventStorage using DynamoDB via the aws-scala library. To use it:

    1. Provide a table definition. Specifically, this requires an event stream key NamedColumn, a Column definition for the events, and a NamedColumn for the sequence type. This in turn will require Decoders/Encoders to be defined for the key, sequence and event columns. 2. Provide an interpreter for DynamoDBActions to Task. DynamoDBActions are created inside and need to be run. 3. Provide a transform from Task to your desired container type. Task is actually a good option since it needs a Monad and Catchable, so the transform can just be a NaturalTransformation.refl[Task].
    F

    Container around operations on an underlying data store e.g. Task.

  2. case class DynamoSingleSnapshotStorage[F[_], KK, S, VV](tableDefinition: TableDefinition[WrappedKey[KK], Snapshot[S, VV], KK, String], snapshotStore: SnapshotStorage[F, KK, S, VV]) extends Product with Serializable

    Permalink
  3. case class WrappedKey[KK](key: KK, dummy: String) extends Product with Serializable

    Permalink

Value Members

  1. object DynamoSingleSnapshotStorage extends Serializable

    Permalink
  2. object WrappedKey extends Serializable

    Permalink

Ungrouped