All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.qmetric.penfold.domain.model.Status.scala Maven / Gradle / Ivy

package com.qmetric.penfold.domain.model

sealed trait Status {
  val name: String
}

object Status {
  case object Waiting extends Status {
    val name = "waiting"
  }

  case object Ready extends Status {
    val name = "ready"
  }

  case object Started extends Status {
    val name = "started"
  }

  case object Closed extends Status {
    val name = "closed"
  }

  case object Cancelled extends Status {
    val name = "cancelled"
  }

  case object Archived extends Status {
    val name = "archived"
  }

  def from(str: String): Option[Status] = {
    str.toLowerCase match {
      case Waiting.name => Some(Waiting)
      case Ready.name => Some(Ready)
      case Started.name => Some(Started)
      case Closed.name => Some(Closed)
      case Cancelled.name => Some(Cancelled)
      case _ => None
    }
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy