package models.targets import com.fasterxml.jackson.annotation.JsonIgnoreProperties import models.AppDB import org.squeryl.KeyedEntity import org.squeryl.PrimitiveTypeMode._ /** * Created by Egor Makhov on 08/08/2017. */ object Mail { def applyWithoutOwner(mail: String): Mail = { Mail(mail) } def unapplyWithoutOwner(mail: Mail): Option[String] = { Option(mail.address) } def deleteById(mail: String, owner: String): Int = { AppDB.mailTable.deleteWhere(m => (m.address === mail) and (m.owner === owner)) } } @JsonIgnoreProperties(Array("owner")) case class Mail( address: String, owner: String = "") extends KeyedEntity[(String, String)] { override def id: (String, String) = (address, owner) def insert: Mail = AppDB.mailTable.insert(this) }