Represents a secondary index on a DynamoDB table.
Represents a DynamoDB table that operations can be performed against
Represents a DynamoDB table that operations can be performed against
>>> case class Transport(mode: String, line: String) >>> val client = LocalDynamoDB.client() >>> import com.amazonaws.services.dynamodbv2.model.ScalarAttributeType._ >>> LocalDynamoDB.withRandomTable(client)('mode -> S, 'line -> S) { t => ... import org.scanamo.syntax._ ... import org.scanamo.auto._ ... val transport = Table[Transport](t) ... val operations = for { ... _ <- transport.putAll(Set( ... Transport("Underground", "Circle"), ... Transport("Underground", "Metropolitan"), ... Transport("Underground", "Central"))) ... results <- transport.query('mode -> "Underground" and ('line beginsWith "C")) ... } yield results.toList ... Scanamo.exec(client)(operations) ... } List(Right(Transport(Underground,Central)), Right(Transport(Underground,Circle)))
Provides a simplified interface for reading and writing case classes to DynamoDB
Provides a simplified interface for reading and writing case classes to DynamoDB
To avoid blocking, use org.scanamo.ScanamoAsync
Provides the same interface as org.scanamo.Scanamo, except that it requires an implicit concurrent.ExecutionContext and returns a concurrent.Future
Provides the same interface as org.scanamo.Scanamo, except that it requires an implicit concurrent.ExecutionContext and returns a concurrent.Future
Note that that com.amazonaws.services.dynamodbv2.AmazonDynamoDBAsyncClient just uses an java.util.concurrent.ExecutorService to make calls asynchronously