DynamoDbTable

org.encalmo.aws.DynamoDbTable
trait DynamoDbTable[PartitionKeyType](partitionKeyName: String)(using keyToAttributeValue: Conversion[PartitionKeyType, AttributeValue])

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Abstract methods

inline def baseTableName: String

Concrete methods

inline def executeOnlyOnce(using error: ErrorContext)(key: PartitionKeyType, flag: String, action: AwsClient ?=> Either[error.Error, Unit])(using AwsClient, DynamoDbEnvironment): Either[error.Error, Unit]
inline def getItem(partitionKey: PartitionKeyType)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Option[DynamoDbItem]
inline def getItem(partitionKey: PartitionKeyType, inline projection: Seq[String])(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Option[DynamoDbItem]
inline def getItemAsClass[T <: Product](partitionKey: PartitionKeyType)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext, mirror: ProductOf[T]): Option[T]
inline def getItemAsClassOrError[T <: Product](partitionKey: PartitionKeyType)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext, mirror: ProductOf[T]): Either[error.Error, T]
inline def getItemOrError(partitionKey: PartitionKeyType)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Either[error.Error, DynamoDbItem]
inline def getItemOrError(partitionKey: PartitionKeyType, inline projection: Seq[String])(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Either[error.Error, DynamoDbItem]
inline def getItemProperties[Types <: Tuple](partitionKey: PartitionKeyType, inline properties: String*)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Option[Types]
inline def getItemPropertiesAsClass[T <: Product](partitionKey: PartitionKeyType, inline properties: String*)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext, mirror: ProductOf[T]): Option[T]
inline def getItemPropertiesAsClassOrError[T <: Product](partitionKey: PartitionKeyType, inline properties: String*)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext, mirror: ProductOf[T]): Either[error.Error, T]
inline def getItemPropertiesOrError[Types <: Tuple](partitionKey: PartitionKeyType, inline properties: String*)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Either[error.Error, Types]
inline def getItemProperty[T : ReadWriter](partitionKey: PartitionKeyType, inline property: String)(using evidence$1: ReadWriter[T], awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Option[T]
inline def getItemPropertyAsClass[T <: Product](partitionKey: PartitionKeyType, inline property: String)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext, mirror: ProductOf[T]): Option[T]
inline def getItemPropertyAsClassOrError[T <: Product](partitionKey: PartitionKeyType, inline property: String)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext, mirror: ProductOf[T]): Either[error.Error, T]
inline def getItemPropertyAsListOfClass[T <: Product](partitionKey: PartitionKeyType, inline property: String)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext, mirror: ProductOf[T]): Option[Seq[T]]
inline def getItemPropertyOrError[T : ReadWriter](partitionKey: PartitionKeyType, inline property: String)(using evidence$1: ReadWriter[T], awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Either[error.Error, T]
inline def getNestedItem(partitionKey: PartitionKeyType, inline property: String)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Option[DynamoDbItem]
inline def getNestedItemByPath(partitionKey: PartitionKeyType, inline propertyPath: Seq[String])(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Option[DynamoDbItem]
inline def partitionKeyOf(partitionKey: PartitionKeyType): (String, AttributeValue)
inline def removeItem(partitionKey: PartitionKeyType)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Either[error.Error, Unit]
inline def removeItemProperty(partitionKey: PartitionKeyType, inline property: String)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Either[error.Error, Unit]
inline def setItem[T <: Product](item: T, removeUndefinedProperties: Boolean)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext, mirror: ProductOf[T]): Either[error.Error, Unit]
inline def setItemProperties(partitionKey: PartitionKeyType, propertyUpdates: (String, AttributeValueUpdate)*)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Either[error.Error, Unit]
inline def setItemProperty(partitionKey: PartitionKeyType, inline property: String, value: AttributeValue)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Either[error.Error, Unit]
inline def setItemPropertyIfSome[T](partitionKey: PartitionKeyType, inline property: String, valueOpt: Option[T])(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext, convert: Conversion[T, AttributeValue]): Either[error.Error, Unit]
inline def setNestedItem(partitionKey: PartitionKeyType, inline property: String, value: DynamoDbItem)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext): Either[error.Error, Unit]
inline def setNestedItemProperty[T](partitionKey: PartitionKeyType, inline propertyPath: Seq[String], value: T)(using awsClient: AwsClient, env: DynamoDbEnvironment, error: ErrorContext, convert: Conversion[T, AttributeValue]): Either[error.Error, Unit]
final inline def tableName(using env: DynamoDbEnvironment, error: ErrorContext): String