diff --git a/pom.xml b/pom.xml
index d0fdb87..4b84c4d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -54,19 +54,19 @@
compile
- org.codehaus.jackson
- jackson-core-asl
- 1.9.9
+ org.slf4j
+ slf4j-api
+ 1.6.4
- org.codehaus.jackson
- jackson-mapper-asl
- 1.9.9
+ com.fasterxml.jackson.core
+ jackson-core
+ 2.1.0
- org.slf4j
- slf4j-api
- 1.6.4
+ com.fasterxml.jackson.core
+ jackson-databind
+ 2.1.0
diff --git a/src/main/java/com/corundumstudio/socketio/parser/JacksonJsonSupport.java b/src/main/java/com/corundumstudio/socketio/parser/JacksonJsonSupport.java
index 1142817..6276f63 100644
--- a/src/main/java/com/corundumstudio/socketio/parser/JacksonJsonSupport.java
+++ b/src/main/java/com/corundumstudio/socketio/parser/JacksonJsonSupport.java
@@ -27,20 +27,19 @@ import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
-import org.codehaus.jackson.JsonNode;
-import org.codehaus.jackson.JsonParseException;
-import org.codehaus.jackson.JsonParser;
-import org.codehaus.jackson.JsonProcessingException;
-import org.codehaus.jackson.Version;
-import org.codehaus.jackson.map.DeserializationContext;
-import org.codehaus.jackson.map.JsonMappingException;
-import org.codehaus.jackson.map.ObjectMapper;
-import org.codehaus.jackson.map.annotate.JsonSerialize;
-import org.codehaus.jackson.map.deser.std.StdDeserializer;
-import org.codehaus.jackson.map.module.SimpleModule;
-import org.codehaus.jackson.node.ObjectNode;
-
import com.corundumstudio.socketio.Configuration;
+import com.fasterxml.jackson.annotation.JsonInclude.Include;
+import com.fasterxml.jackson.core.JsonParseException;
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.core.Version;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.JsonMappingException;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
+import com.fasterxml.jackson.databind.module.SimpleModule;
+import com.fasterxml.jackson.databind.node.ObjectNode;
public class JacksonJsonSupport implements JsonSupport {
@@ -81,7 +80,7 @@ public class JacksonJsonSupport implements JsonSupport {
// skip it
}
}
- Object val = mapper.readValue(root, clazz);
+ Object val = mapper.treeToValue(root, clazz);
return val;
}
@@ -113,22 +112,22 @@ public class JacksonJsonSupport implements JsonSupport {
// TODO refactor it!
if (arg.isNumber()) {
if (clazz.equals(Long.class)) {
- val = arg.asLong();
+ val = arg.longValue();
}
if (clazz.equals(BigDecimal.class)) {
- val = arg.getBigIntegerValue();
+ val = arg.bigIntegerValue();
}
if (clazz.equals(Double.class)) {
- val = arg.asDouble();
+ val = arg.doubleValue();
}
if (clazz.equals(Integer.class)) {
- val = arg.asInt();
+ val = arg.intValue();
}
if (clazz.equals(Float.class)) {
- val = (float)arg.getDoubleValue();
+ val = (float)arg.doubleValue();
}
}
- val = mapper.readValue(arg, clazz);
+ val = mapper.treeToValue(arg, clazz);
args.add(val);
}
return result;
@@ -155,15 +154,15 @@ public class JacksonJsonSupport implements JsonSupport {
Event event = new Event(eventName, eventArgs);
JsonNode args = root.get("args");
if (args != null) {
- Iterator iterator = args.getElements();
+ Iterator iterator = args.elements();
if (iterator.hasNext()) {
JsonNode node = iterator.next();
Class> eventClass = eventMapping.get(eventName);
- Object arg = mapper.readValue(node, eventClass);
+ Object arg = mapper.treeToValue(node, eventClass);
eventArgs.add(arg);
while (iterator.hasNext()) {
node = iterator.next();
- arg = mapper.readValue(node, Object.class);
+ arg = mapper.treeToValue(node, Object.class);
eventArgs.add(arg);
}
}
@@ -183,13 +182,13 @@ public class JacksonJsonSupport implements JsonSupport {
public JacksonJsonSupport(Configuration configuration) {
this.configuration = configuration;
- SimpleModule module = new SimpleModule("EventDeserializerModule", new Version(1, 0, 0, null));
+ SimpleModule module = new SimpleModule("EventDeserializerModule", new Version(1, 0, 0, null, null, null));
module.addDeserializer(Event.class, eventDeserializer);
module.addDeserializer(JsonObject.class, jsonObjectDeserializer);
module.addDeserializer(AckArgs.class, ackArgsDeserializer);
objectMapper.registerModule(module);
- objectMapper.setSerializationInclusion(JsonSerialize.Inclusion.NON_NULL);
+ objectMapper.setSerializationInclusion(Include.NON_NULL);
// TODO If jsonObjectDeserializer will be not enough
// TypeResolverBuilder> typer = new DefaultTypeResolverBuilder(DefaultTyping.NON_FINAL);
diff --git a/src/test/java/com/corundumstudio/socketio/parser/DecoderAckPacketTest.java b/src/test/java/com/corundumstudio/socketio/parser/DecoderAckPacketTest.java
index 69f2aba..608c683 100644
--- a/src/test/java/com/corundumstudio/socketio/parser/DecoderAckPacketTest.java
+++ b/src/test/java/com/corundumstudio/socketio/parser/DecoderAckPacketTest.java
@@ -21,7 +21,7 @@ import java.util.UUID;
import mockit.Expectations;
-import org.codehaus.jackson.JsonParseException;
+import com.fasterxml.jackson.core.JsonParseException;
import org.junit.Assert;
import org.junit.Test;