io.atlassian.aws

dynamodb

package dynamodb

Linear Supertypes
QueryTypes, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. dynamodb
  2. QueryTypes
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. sealed trait Column[A] extends AnyRef

  2. trait ColumnComposites extends AnyRef

  3. sealed trait Comparison extends AnyRef

    Definition Classes
    QueryTypes
  4. case class Decoder[A] extends Product with Serializable

    Represents a function that tries to convert an AttributeValue into a Scala value (typically that represents a field in an object).

  5. type DynamoDBAction[A] = Kleisli[Attempt, AmazonDynamoDBClient, A]

  6. type DynamoMap = Map[String, AttributeValue]

  7. case class Encoder[A](run: (A) ⇒ Option[AttributeValue]) extends Product with Serializable

  8. type Field[A] = (String, Value)

  9. type KeyValue = Map[String, Value]

  10. final class NamedColumn[A] extends Column[A]

    A specific field/column in a table.

    A specific field/column in a table. Has a name and an Encoder/Decoder to prepare the encoded representation to the Dynamo driver, and to return the de-serialized value back from the database, respectively.

  11. case class NonEmptyBytes extends Product with Serializable

  12. case class Page[KR, V](result: List[V], next: Option[KR]) extends Product with Serializable

    Definition Classes
    QueryTypes
  13. trait Queries extends AnyRef

    Queries is defined in terms of Hash and Range types.

    Queries is defined in terms of Hash and Range types.

    The Hash type identifies records and the Range allows us to do ordering.

  14. trait QueryTypes extends AnyRef

  15. sealed trait ScanDirection extends AnyRef

    Definition Classes
    QueryTypes
  16. trait Table extends Queries

    A key-value table.

    A key-value table.

    Implementations have concrete key and value types, as well as queryable hash and range types.

    Table returns DBActions that are pure values (DBOps that line inside Free) and can be chained together with map/flatMap (ie. there is a monad for DBAction.

    You can get an interpreter for DBActions (to any arbitrary C[_]) by supplying a DBOp ~> C natural transformation.

  17. case class TableDefinition[K, V, H, R] extends Product with Serializable

  18. type Unmarshaller[A] = Kleisli[Attempt, DynamoMap, A]

  19. type Value = Option[AttributeValue]

Value Members

  1. object Column extends ColumnComposites

  2. object Comparison

    Definition Classes
    QueryTypes
  3. object Decoder extends Serializable

    Contains the implicit decoders for different types.

    Contains the implicit decoders for different types. Custom decoders are derived from this base set.

  4. object DynamoDB

    Contains functions that perform operations on a DynamoDB table.

    Contains functions that perform operations on a DynamoDB table. Functions return a DynamoDBAction that can be run by providing an instance of an AmazonDynamoDBClient (see AmazonClient for convenient constructor functions).

    This class is generally not intended to be used directly, but used through the Table algebra with column definitions.

    Tables are represented as key-value mappings, so you need classes to represent the key and the value. In addition, you need to create instances of: * TODO describe new Column based definition * Table - specify the key, value, hash key and range key types, and a TableDefinition (which includes a name, the key types, and a couple of other DynamoDB parameters). * Columns - Columns map your Scala types into columns in DynamoDB i.e. start with a Column with a name for each column in DynamoDB, and then create composite columns using Column.composeX to be able to map your high-level Scala classes. * Encoders/Decoders - Under the covers, we use Encoders/Decoders to convert 'primitive' or low-level Scala types into suitable values for DynamoDB (ints, strings, dates). In most cases you don't need to be concerned with Encoders/Decoders (they will be picked up automatically in your Column definition). However, you you can extend the standard set if you need to.

  5. object DynamoDBAction extends Functions[AmazonDynamoDBClient] with Serializable

  6. object Encoder extends Serializable

  7. object NonEmptyBytes extends Serializable

  8. object ScanDirection

    Definition Classes
    QueryTypes
  9. object TableDefinition extends Serializable

  10. object Write

Inherited from QueryTypes

Inherited from AnyRef

Inherited from Any

Ungrouped