in hessian-lite/src/main/java/com/alibaba/com/caucho/hessian/io/ContextSerializerFactory.java [84:176]
static {
_staticSerializerMap = new HashMap();
_staticDeserializerMap = new HashMap();
_staticClassNameMap = new HashMap();
FieldDeserializer2Factory fieldFactory = FieldDeserializer2Factory.create();
addBasic(void.class, "void", BasicSerializer.NULL);
addBasic(Boolean.class, "boolean", BasicSerializer.BOOLEAN);
addBasic(Byte.class, "byte", BasicSerializer.BYTE);
addBasic(Short.class, "short", BasicSerializer.SHORT);
addBasic(Integer.class, "int", BasicSerializer.INTEGER);
addBasic(Long.class, "long", BasicSerializer.LONG);
addBasic(Float.class, "float", BasicSerializer.FLOAT);
addBasic(Double.class, "double", BasicSerializer.DOUBLE);
addBasic(Character.class, "char", BasicSerializer.CHARACTER_OBJECT);
addBasic(String.class, "string", BasicSerializer.STRING);
addBasic(Object.class, "object", BasicSerializer.OBJECT);
addBasic(java.util.Date.class, "date", BasicSerializer.DATE);
addBasic(boolean.class, "boolean", BasicSerializer.BOOLEAN);
addBasic(byte.class, "byte", BasicSerializer.BYTE);
addBasic(short.class, "short", BasicSerializer.SHORT);
addBasic(int.class, "int", BasicSerializer.INTEGER);
addBasic(long.class, "long", BasicSerializer.LONG);
addBasic(float.class, "float", BasicSerializer.FLOAT);
addBasic(double.class, "double", BasicSerializer.DOUBLE);
addBasic(char.class, "char", BasicSerializer.CHARACTER);
addBasic(boolean[].class, "[boolean", BasicSerializer.BOOLEAN_ARRAY);
addBasic(byte[].class, "[byte", BasicSerializer.BYTE_ARRAY);
_staticSerializerMap.put(byte[].class.getName(), ByteArraySerializer.SER);
addBasic(short[].class, "[short", BasicSerializer.SHORT_ARRAY);
addBasic(int[].class, "[int", BasicSerializer.INTEGER_ARRAY);
addBasic(long[].class, "[long", BasicSerializer.LONG_ARRAY);
addBasic(float[].class, "[float", BasicSerializer.FLOAT_ARRAY);
addBasic(double[].class, "[double", BasicSerializer.DOUBLE_ARRAY);
addBasic(char[].class, "[char", BasicSerializer.CHARACTER_ARRAY);
addBasic(String[].class, "[string", BasicSerializer.STRING_ARRAY);
addBasic(Object[].class, "[object", BasicSerializer.OBJECT_ARRAY);
Deserializer objectDeserializer = new JavaDeserializer(Object.class, fieldFactory);
_staticDeserializerMap.put("object", objectDeserializer);
_staticClassNameMap.put("object", objectDeserializer);
_staticSerializerMap.put(Class.class.getName(), new ClassSerializer());
_staticDeserializerMap.put(Number.class.getName(), new BasicDeserializer(BasicSerializer.NUMBER));
/*
for (Class cl : new Class[] { BigDecimal.class, File.class, ObjectName.class }) {
_staticSerializerMap.put(cl, StringValueSerializer.SER);
_staticDeserializerMap.put(cl, new StringValueDeserializer(cl));
}
_staticSerializerMap.put(ObjectName.class, StringValueSerializer.SER);
try {
_staticDeserializerMap.put(ObjectName.class,
new StringValueDeserializer(ObjectName.class));
} catch (Throwable e) {
}
*/
_staticSerializerMap.put(InetAddress.class.getName(),
InetAddressSerializer.create());
_staticSerializerMap.put(java.sql.Date.class.getName(),
new SqlDateSerializer());
_staticSerializerMap.put(java.sql.Time.class.getName(),
new SqlDateSerializer());
_staticSerializerMap.put(java.sql.Timestamp.class.getName(),
new SqlDateSerializer());
_staticDeserializerMap.put(java.sql.Date.class.getName(),
new SqlDateDeserializer(java.sql.Date.class));
_staticDeserializerMap.put(java.sql.Time.class.getName(),
new SqlDateDeserializer(java.sql.Time.class));
_staticDeserializerMap.put(java.sql.Timestamp.class.getName(),
new SqlDateDeserializer(java.sql.Timestamp.class));
// hessian/3bb5
_staticDeserializerMap.put(StackTraceElement.class.getName(),
new StackTraceElementDeserializer(fieldFactory));
ClassLoader systemClassLoader = null;
try {
systemClassLoader = ClassLoader.getSystemClassLoader();
} catch (Exception e) {
}
_systemClassLoader = systemClassLoader;
}