File tree Expand file tree Collapse file tree 2 files changed +19
-7
lines changed
src/main/scala/dev/mongocamp/driver/mongodb/json Expand file tree Collapse file tree 2 files changed +19
-7
lines changed Original file line number Diff line number Diff line change 1
1
{
2
2
"name" : " mongodb-driver" ,
3
3
"organization" : " dev.mongocamp" ,
4
- "version" : " 3.0.5.snapshot " ,
4
+ "version" : " 3.0.5" ,
5
5
"author" : " info@mongocamp.dev" ,
6
6
"license" : " Apache-2.0" ,
7
7
"type" : " module" ,
Original file line number Diff line number Diff line change @@ -62,8 +62,12 @@ trait CirceSchema extends CirceProductSchema {
62
62
}
63
63
64
64
implicit val DateFormat : Encoder [Date ] with io.circe.Decoder [Date ] = new io.circe.Encoder [Date ] with io.circe.Decoder [Date ] {
65
- override def apply (a : Date ): Json = {
66
- Encoder .encodeString.apply(a.toInstant.toString)
65
+ override def apply (d : Date ): Json = {
66
+ Option (d)
67
+ .map(
68
+ date => Encoder .encodeString.apply(date.toInstant.toString)
69
+ )
70
+ .getOrElse(Json .Null )
67
71
}
68
72
69
73
override def apply (c : HCursor ): Result [Date ] = {
@@ -76,8 +80,12 @@ trait CirceSchema extends CirceProductSchema {
76
80
}
77
81
78
82
implicit val DateTimeFormat : Encoder [DateTime ] with io.circe.Decoder [DateTime ] = new io.circe.Encoder [DateTime ] with io.circe.Decoder [DateTime ] {
79
- override def apply (a : DateTime ): Json = {
80
- Encoder .encodeString.apply(a.toInstant.toString)
83
+ override def apply (d : DateTime ): Json = {
84
+ Option (d)
85
+ .map(
86
+ date => Encoder .encodeString.apply(date.toInstant.toString)
87
+ )
88
+ .getOrElse(Json .Null )
81
89
}
82
90
83
91
override def apply (c : HCursor ): Result [DateTime ] = {
@@ -90,8 +98,12 @@ trait CirceSchema extends CirceProductSchema {
90
98
}
91
99
92
100
implicit val ObjectIdFormat : Encoder [ObjectId ] with io.circe.Decoder [ObjectId ] = new io.circe.Encoder [ObjectId ] with io.circe.Decoder [ObjectId ] {
93
- override def apply (a : ObjectId ): Json = {
94
- Encoder .encodeString.apply(a.toHexString)
101
+ override def apply (o : ObjectId ): Json = {
102
+ Option (o)
103
+ .map(
104
+ o => Encoder .encodeString.apply(o.toHexString)
105
+ )
106
+ .getOrElse(Json .Null )
95
107
}
96
108
97
109
override def apply (c : HCursor ): Result [ObjectId ] = {
You can’t perform that action at this time.
0 commit comments