private Map<Integer, Enum<?>> crateEnumMap(Class<?> type) {
		Map<Integer, Enum<?>> enumMap = new HashMap<Integer, Enum<?>>();
		try {
			Method valueMethod = type.getMethod("values");
			Object[] values = (Object[]) valueMethod.invoke(null);
			for (Object value : values) {
				Enum<?> e = (Enum<?>) value;
				enumMap.put(e.ordinal(), e);
			}
		} catch (Exception ex) {
			throw new XsonDeserializerException("init enum values error, "
					+ type.getName());
		}
		return enumMap;
	}