diff options
author | adamw <adam@warski.org> | 2017-10-18 16:25:07 +0200 |
---|---|---|
committer | adamw <adam@warski.org> | 2017-10-18 16:25:07 +0200 |
commit | a3abbd502783df6df4de98c5dbf0c8eff81cb511 (patch) | |
tree | 5457480605483e197ffc658a3f1dcb589a910e99 /json/circe/src/main | |
parent | 21c4700bbe8cf37d7b9feacc5afdf64357604d8f (diff) | |
download | sttp-a3abbd502783df6df4de98c5dbf0c8eff81cb511.tar.gz sttp-a3abbd502783df6df4de98c5dbf0c8eff81cb511.tar.bz2 sttp-a3abbd502783df6df4de98c5dbf0c8eff81cb511.zip |
json4s support
Diffstat (limited to 'json/circe/src/main')
-rw-r--r-- | json/circe/src/main/scala/com/softwaremill/sttp/circe/package.scala | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/json/circe/src/main/scala/com/softwaremill/sttp/circe/package.scala b/json/circe/src/main/scala/com/softwaremill/sttp/circe/package.scala new file mode 100644 index 0000000..ddc9583 --- /dev/null +++ b/json/circe/src/main/scala/com/softwaremill/sttp/circe/package.scala @@ -0,0 +1,15 @@ +package com.softwaremill.sttp + +import io.circe.parser._ +import io.circe.{Decoder, Encoder} + +package object circe { + + implicit def circeBodySerializer[B]( + implicit encoder: Encoder[B]): BodySerializer[B] = + b => StringBody(encoder(b).noSpaces, Utf8, Some(ApplicationJsonContentType)) + + def asJson[B: Decoder]: ResponseAs[Either[io.circe.Error, B], Nothing] = + asString(Utf8).map(decode[B]) + +} |