![JAR search and dependency download from the Maven repository](/logo.png)
com.itv.scalapact.shared.json.ContractDeserializer.scala Maven / Gradle / Ivy
package com.itv.scalapact.shared.json
import com.itv.scalapact.shared.{JvmPact, Pact}
trait ContractDeserializer[P] {
def read(jsonString: String): Either[String, P]
}
object ContractDeserializer {
def apply[P](implicit ev: ContractDeserializer[P]): ContractDeserializer[P] = ev
implicit def pactDeserializer(implicit reader: IPactReader): ContractDeserializer[Pact] = (jsonString: String) =>
reader.jsonStringToScalaPact(jsonString)
implicit def jvmPactDeserializer(implicit reader: IPactReader): ContractDeserializer[JvmPact] =
(jsonString: String) => reader.jsonStringToJvmPact(jsonString)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy