Skip to content

Commit

Permalink
Revert "aligned over bson4jackson 2.8.0 which should fix weird date d…
Browse files Browse the repository at this point in the history
…eserialization errors"

This reverts commit b1c4dd5.
  • Loading branch information
fcamblor committed Feb 25, 2018
1 parent 2469d34 commit b3282a3
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 32 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Expand Up @@ -84,7 +84,7 @@

<!-- Mongo modules -->
<mongo-java-driver.version>3.4.0</mongo-java-driver.version>
<bson4jackson.version>2.8.0</bson4jackson.version>
<bson4jackson.version>2.7.0</bson4jackson.version>
<jongo.version>1.3.0</jongo.version>
<de.flapdoodle.embed.version>1.42</de.flapdoodle.embed.version>

Expand Down
17 changes: 5 additions & 12 deletions restx-jongo-java8/src/main/java/restx/jongo/BsonJSR310Module.java
@@ -1,14 +1,13 @@
package restx.jongo;

import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.databind.JsonDeserializer;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.module.SimpleModule;
import de.undercouch.bson4jackson.BsonGenerator;
import de.undercouch.bson4jackson.serializers.BsonSerializer;

import java.io.IOException;
import java.time.Instant;
Expand All @@ -18,20 +17,14 @@ public class BsonJSR310Module extends SimpleModule {
public BsonJSR310Module() {
super("BsonJSR310Module");

addSerializer(Instant.class, new JsonSerializer<Instant>() {
addSerializer(Instant.class, new BsonSerializer<Instant>() {
@Override
public void serialize(Instant date, JsonGenerator gen, SerializerProvider provider)
public void serialize(Instant date, BsonGenerator bsonGenerator, SerializerProvider serializerProvider)
throws IOException {
if (date == null) {
provider.defaultSerializeNull(gen);
serializerProvider.defaultSerializeNull(bsonGenerator);
} else {
long epochMillis = date.toEpochMilli();
if (gen instanceof BsonGenerator) {
BsonGenerator bgen = (BsonGenerator)gen;
bgen.writeDateTime(new Date(epochMillis));
} else {
gen.writeNumber(epochMillis);
}
bsonGenerator.writeDateTime(new Date(date.toEpochMilli()));
}
}
});
Expand Down
2 changes: 1 addition & 1 deletion restx-jongo/module.ivy
Expand Up @@ -22,7 +22,7 @@
<dependency org="com.fasterxml.jackson.core" name="jackson-annotations" rev="2.8.10" conf="default" />
<dependency org="com.fasterxml.jackson.core" name="jackson-databind" rev="2.8.10" conf="default" />
<dependency org="com.fasterxml.jackson.datatype" name="jackson-datatype-joda" rev="2.8.10" conf="default" />
<dependency org="de.undercouch" name="bson4jackson" rev="2.8.0" conf="default" />
<dependency org="de.undercouch" name="bson4jackson" rev="2.7.0" conf="default" />
<dependency org="org.mongodb" name="mongo-java-driver" rev="3.4.0" conf="default" />
<dependency org="org.jongo" name="jongo" rev="1.3.0" conf="default" />
<dependency org="org.slf4j" name="slf4j-api" rev="1.7.5" conf="default" />
Expand Down
26 changes: 9 additions & 17 deletions restx-jongo/src/main/java/restx/jackson/BsonJodaTimeModule.java
@@ -1,15 +1,13 @@
package restx.jackson;

import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.databind.JsonDeserializer;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.module.SimpleModule;
import de.undercouch.bson4jackson.BsonGenerator;
import org.joda.time.DateMidnight;
import de.undercouch.bson4jackson.serializers.BsonSerializer;
import org.joda.time.DateTime;
import org.joda.time.DateTimeZone;

Expand All @@ -25,31 +23,25 @@ public class BsonJodaTimeModule extends SimpleModule {
public BsonJodaTimeModule() {
super("BsonJodaTimeModule");

addSerializer(org.joda.time.DateMidnight.class, new JsonSerializer<DateMidnight>() {
addSerializer(org.joda.time.DateMidnight.class, new BsonSerializer<org.joda.time.DateMidnight>() {
@Override
public void serialize(org.joda.time.DateMidnight date, JsonGenerator gen, SerializerProvider provider)
public void serialize(org.joda.time.DateMidnight date, BsonGenerator bsonGenerator, SerializerProvider serializerProvider)
throws IOException {
if (date == null) {
provider.defaultSerializeNull(gen);
} else if (gen instanceof BsonGenerator) {
BsonGenerator bgen = (BsonGenerator)gen;
bgen.writeDateTime(date.toDate());
serializerProvider.defaultSerializeNull(bsonGenerator);
} else {
gen.writeNumber(date.getMillis());
bsonGenerator.writeDateTime(date.toDate());
}
}
});
addSerializer(DateTime.class, new JsonSerializer<DateTime>() {
addSerializer(DateTime.class, new BsonSerializer<DateTime>() {
@Override
public void serialize(DateTime date, JsonGenerator gen, SerializerProvider provider)
public void serialize(DateTime date, BsonGenerator bsonGenerator, SerializerProvider serializerProvider)
throws IOException {
if (date == null) {
provider.defaultSerializeNull(gen);
} else if (gen instanceof BsonGenerator) {
BsonGenerator bgen = (BsonGenerator)gen;
bgen.writeDateTime(date.toDate());
serializerProvider.defaultSerializeNull(bsonGenerator);
} else {
gen.writeNumber(date.getMillis());
bsonGenerator.writeDateTime(date.toDate());
}
}
});
Expand Down
2 changes: 1 addition & 1 deletion restx.build.properties.json
Expand Up @@ -28,7 +28,7 @@
"javax.inject.version": "1",

"mongo-java-driver.version": "3.4.0",
"bson4jackson.version": "2.8.0",
"bson4jackson.version": "2.7.0",
"jongo.version": "1.3.0",

"servlet-api.version": "2.5",
Expand Down

0 comments on commit b3282a3

Please sign in to comment.