reactivemongo.play.json.compat.bson2json

Implicit conversions for handler types from reactivemongo.api.bson to play.api.libs.json .

import reactivemongo.play.json.compat.bson2json._

def bar[T](br: reactivemongo.api.bson.BSONReader[T]) = {
 val r: play.api.libs.json.Reads[T] = br
 r
}

'''Note:''' Importing both json2bson & bson2json can lead to diverging implicits in Scala 2.11 (see HandlerConverterSpec211).

Implicits

Inherited implicits

final implicit def fromDocumentHandlerConv[T](h: BSONDocumentHandler[T])(implicit from: FromValue, to: ToValue): OFormat[T]

Implicit conversion from new BSONDocumentHandler to Play JSON.

Implicit conversion from new BSONDocumentHandler to Play JSON.

import reactivemongo.play.json.compat.
 bson2json.fromDocumentHandlerConv

def bar[T](bh: reactivemongo.api.bson.BSONDocumentHandler[T]) = {
 val h: play.api.libs.json.OFormat[T] = bh
 h
}
Inherited from:
Bson2JsonConverters (hidden)
final implicit def fromDocumentWriter[T](implicit w: BSONDocumentWriter[T], conv: FromValue): OWrites[T]

Resolves a OWrites provided a BSON document writer is found.

Resolves a OWrites provided a BSON document writer is found.

import play.api.libs.json.OWrites
import reactivemongo.play.json.compat.bson2json

def bar[T: reactivemongo.api.bson.BSONDocumentWriter]: OWrites[T] =
 bson2json.fromDocumentWriter[T]
Inherited from:
LowPriority1Bson2JsonConverters (hidden)
final implicit def fromDocumentWriterConv[T](w: BSONDocumentWriter[T])(implicit conv: FromValue): OWrites[T]
import reactivemongo.play.json.compat.bson2json.fromDocumentWriterConv

def bar[T](lw: reactivemongo.api.bson.BSONDocumentWriter[T]) = {
 val w: play.api.libs.json.OWrites[T] = lw
 w
}
Inherited from:
LowPriority1Bson2JsonConverters (hidden)
final implicit def fromHandler[T](h: BSONHandler[T])(implicit from: FromValue, to: ToValue): Format[T]
Inherited from:
Bson2JsonConverters (hidden)
final implicit def fromReader[T](implicit r: BSONReader[T], conv: ToValue): Reads[T]

Provided there is a BSON reader, a JSON one is resolved.

Provided there is a BSON reader, a JSON one is resolved.

import play.api.libs.json.Reads
import reactivemongo.api.bson.BSONReader
import reactivemongo.play.json.compat.bson2json.fromReader

def foo[T: BSONReader]: Reads[T] = implicitly[Reads[T]]
Inherited from:
LowPriority2Bson2JsonConverters (hidden)
final implicit def fromReaderConv[T](r: BSONReader[T])(implicit conv: ToValue): Reads[T]
Inherited from:
LowPriority2Bson2JsonConverters (hidden)
final implicit def fromWriter[T](implicit w: BSONWriter[T], conv: FromValue): Writes[T]

Provided there is a BSON writer, resolves a JSON one.

Provided there is a BSON writer, resolves a JSON one.

import play.api.libs.json.Writes
import reactivemongo.api.bson.BSONWriter
import reactivemongo.play.json.compat.bson2json.fromWriter

def foo[T: BSONWriter] = implicitly[Writes[T]] // resolve fromWriter
Inherited from:
LowPriority2Bson2JsonConverters (hidden)
final implicit def fromWriterConv[T](w: BSONWriter[T])(implicit conv: FromValue): Writes[T]
Inherited from:
LowPriority2Bson2JsonConverters (hidden)