1
1
package restx .jackson ;
2
2
3
- import com .fasterxml .jackson .core .JsonGenerator ;
4
3
import com .fasterxml .jackson .core .JsonParser ;
5
4
import com .fasterxml .jackson .core .JsonProcessingException ;
6
5
import com .fasterxml .jackson .databind .DeserializationContext ;
7
6
import com .fasterxml .jackson .databind .JsonDeserializer ;
8
- import com .fasterxml .jackson .databind .JsonSerializer ;
9
7
import com .fasterxml .jackson .databind .SerializerProvider ;
10
8
import com .fasterxml .jackson .databind .module .SimpleModule ;
11
9
import de .undercouch .bson4jackson .BsonGenerator ;
12
- import org . joda . time . DateMidnight ;
10
+ import de . undercouch . bson4jackson . serializers . BsonSerializer ;
13
11
import org .joda .time .DateTime ;
14
12
import org .joda .time .DateTimeZone ;
15
13
@@ -25,31 +23,25 @@ public class BsonJodaTimeModule extends SimpleModule {
25
23
public BsonJodaTimeModule () {
26
24
super ("BsonJodaTimeModule" );
27
25
28
- addSerializer (org .joda .time .DateMidnight .class , new JsonSerializer < DateMidnight >() {
26
+ addSerializer (org .joda .time .DateMidnight .class , new BsonSerializer < org . joda . time . DateMidnight >() {
29
27
@ Override
30
- public void serialize (org .joda .time .DateMidnight date , JsonGenerator gen , SerializerProvider provider )
28
+ public void serialize (org .joda .time .DateMidnight date , BsonGenerator bsonGenerator , SerializerProvider serializerProvider )
31
29
throws IOException {
32
30
if (date == null ) {
33
- provider .defaultSerializeNull (gen );
34
- } else if (gen instanceof BsonGenerator ) {
35
- BsonGenerator bgen = (BsonGenerator )gen ;
36
- bgen .writeDateTime (date .toDate ());
31
+ serializerProvider .defaultSerializeNull (bsonGenerator );
37
32
} else {
38
- gen . writeNumber (date .getMillis ());
33
+ bsonGenerator . writeDateTime (date .toDate ());
39
34
}
40
35
}
41
36
});
42
- addSerializer (DateTime .class , new JsonSerializer <DateTime >() {
37
+ addSerializer (DateTime .class , new BsonSerializer <DateTime >() {
43
38
@ Override
44
- public void serialize (DateTime date , JsonGenerator gen , SerializerProvider provider )
39
+ public void serialize (DateTime date , BsonGenerator bsonGenerator , SerializerProvider serializerProvider )
45
40
throws IOException {
46
41
if (date == null ) {
47
- provider .defaultSerializeNull (gen );
48
- } else if (gen instanceof BsonGenerator ) {
49
- BsonGenerator bgen = (BsonGenerator )gen ;
50
- bgen .writeDateTime (date .toDate ());
42
+ serializerProvider .defaultSerializeNull (bsonGenerator );
51
43
} else {
52
- gen . writeNumber (date .getMillis ());
44
+ bsonGenerator . writeDateTime (date .toDate ());
53
45
}
54
46
}
55
47
});
0 commit comments