app/services/EmergencyUserDBservice.scala (17 lines of code) (raw):

package services import org.scanamo.{Scanamo, Table} import software.amazon.awssdk.services.dynamodb.DynamoDbClient import org.scanamo._ import org.scanamo.syntax._ import org.scanamo.generic.auto._ import scala.concurrent.ExecutionContext import scala.util.Either case class EmergencyUser(userId: String, passwordHash: String) /** * Service to manage persistence of emergency user records. */ class EmergencyUserDBService( client: DynamoDbClient, tableName: String )(implicit executionContext: ExecutionContext) { private val table = Table[EmergencyUser](tableName) private def run[T] = Scanamo(client).exec[T] _ def getUser(userId: String): Option[Either[DynamoReadError, EmergencyUser]] = run(table.get("userId" === userId)) }