aboutsummaryrefslogtreecommitdiff
path: root/json/json4s/src/main/scala/com/softwaremill/sttp/json4s/package.scala
blob: f19f776302c376db0b2226cd6fb372aeeb35ded2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
package com.softwaremill.sttp

import org.json4s._
import org.json4s.native.Serialization.{read, write}

package object json4s {
  implicit def json4sBodySerializer[B <: AnyRef](implicit formats: Formats = DefaultFormats): BodySerializer[B] =
    b => StringBody(write(b), Utf8, Some(ApplicationJsonContentType))

  def asJson[B: Manifest](implicit formats: Formats = DefaultFormats): ResponseAs[B, Nothing] =
    asString(Utf8).map(s => read[B](s))
}