package com.weEat.migrations import com.weEat.models.Collectable import org.mongodb.scala.MongoDatabase import scala.io.Source import scala.reflect.ClassTag import play.api.libs.json.{Reads,Json} case class RestoreFromFile[T]( f: Source, col: Collectable[T] )(implicit tag: ClassTag[T], reads: Reads[Seq[T]] ) extends Migration { def execute(db: MongoDatabase) = db.getCollection[T](col.collectionName) .insertMany(Json.parse(f.mkString).as[Seq[T]]) .toFuture() }