return null;
}
Marshaller<Object> marshaller = null;
if (o.isObject() != null) {
final EJObject jsObject = o.isObject();
final EJValue ejEncType = jsObject.get(SerializationParts.ENCODED_TYPE);
String encodedType = null;
if (!ejEncType.isNull() && ejEncType.isString() != null) {
encodedType = ejEncType.isString().stringValue();
}
if (encodedType == null) {
if (targetType == null) {
return MapMarshaller.INSTANCE.demarshall(o, ctx);
}
else {
marshaller = ctx.getMarshallerInstance(targetType.getName());
if (marshaller != null) {
return marshaller.demarshall(o, ctx);
}
}
}
if (jsObject.containsKey(SerializationParts.NUMERIC_VALUE)) {
return NumbersUtils.getNumber(encodedType, jsObject.get(SerializationParts.NUMERIC_VALUE));
}
marshaller = ctx.getMarshallerInstance(encodedType);
if (marshaller == null) {