Skip to content

Commit

Permalink
Make createTable use multiple param lists
Browse files Browse the repository at this point in the history
This is more consistent with the main methods
  • Loading branch information
Philip Wills committed Mar 20, 2016
1 parent 88c5409 commit a122bb1
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 8 deletions.
6 changes: 3 additions & 3 deletions src/main/scala/com/gu/scanamo/Scanamo.scala
Expand Up @@ -12,7 +12,7 @@ import com.gu.scanamo.DynamoResultStream.{QueryResultStream, ScanResultStream}
* {{{
* >>> import com.amazonaws.services.dynamodbv2.model.ScalarAttributeType._
* >>> val client = LocalDynamoDB.client()
* >>> val createTableResult = LocalDynamoDB.createTable(client, "farmers", 'name -> S)
* >>> val createTableResult = LocalDynamoDB.createTable(client)("farmers")('name -> S)
* }}}
*/
object Scanamo {
Expand Down Expand Up @@ -73,7 +73,7 @@ object Scanamo {
* {{{
* >>> val client = LocalDynamoDB.client()
* >>> import com.amazonaws.services.dynamodbv2.model.ScalarAttributeType._
* >>> val createTableResult = LocalDynamoDB.createTable(client, "bears", 'name -> S)
* >>> val createTableResult = LocalDynamoDB.createTable(client)("bears")('name -> S)
*
* >>> case class Bear(name: String, favouriteFood: String)
*
Expand All @@ -82,7 +82,7 @@ object Scanamo {
* >>> Scanamo.scan[Bear](client)("bears").toList
* List(Valid(Bear(Pooh,honey)), Valid(Bear(Yogi,picnic baskets)))
*
* >>> val lemmingTableResult = LocalDynamoDB.createTable(client, "lemmings", 'name -> S)
* >>> val lemmingTableResult = LocalDynamoDB.createTable(client)("lemmings")('name -> S)
* >>> case class Lemming(name: String, stuff: String)
* >>> val lemmingResults = for { _ <- 0 until 100 } yield Scanamo.put(client)("lemmings")(Lemming(util.Random.nextString(500), util.Random.nextString(5000)))
* >>> Scanamo.scan[Lemming](client)("lemmings").toList.size
Expand Down
6 changes: 1 addition & 5 deletions src/test/scala/com/gu/scanamo/LocalDynamoDB.scala
Expand Up @@ -11,11 +11,7 @@ object LocalDynamoDB {
c.setEndpoint("http://localhost:8000")
c
}
def createTable(
client: AmazonDynamoDB,
tableName: String,
attributeDefinitions: (Symbol, ScalarAttributeType)*
) = {
def createTable(client: AmazonDynamoDB)(tableName: String)(attributeDefinitions: (Symbol, ScalarAttributeType)*) = {
val hashKeyWithType :: rangeKeyWithType = attributeDefinitions.toList
val keySchemas = hashKeyWithType._1 -> KeyType.HASH :: rangeKeyWithType.map(_._1 -> KeyType.RANGE)
client.createTable(
Expand Down

0 comments on commit a122bb1

Please sign in to comment.