in api/src/main/scala/com/gu/adapters/store/Store.scala [135:149]
def update(table: String, id: String, status: Status, isActive: Boolean = false): Either[Error, Avatar] = {
val now = DateTime.now(DateTimeZone.UTC)
val spec = new UpdateItemSpec()
.withPrimaryKey("AvatarId", id)
.withAttributeUpdate(
new AttributeUpdate("Status").put(status.asString),
new AttributeUpdate("IsActive").put(isActive),
new AttributeUpdate("LastModified").put(ISODateFormatter.print(now))
)
.withReturnValues(ReturnValue.ALL_NEW)
for {
item <- handleIoErrors(db.getTable(table).updateItem(spec)).map(_.getItem)
avatar <- asAvatar(item)
} yield avatar
}