@Override public Serializer<?> getDefaultSerializer(@SuppressWarnings("rawtypes") final Class clazz) { if (EnumMap.class.isAssignableFrom(clazz)) { return new EnumMapSerializer(); } if (SubListSerializers.ArrayListSubListSerializer.canSerialize(clazz) || SubListSerializers.JavaUtilSubListSerializer.canSerialize(clazz)) { return SubListSerializers.createFor(clazz); } return super.getDefaultSerializer(clazz); } };
/** * Obtain a serializer for the given sublist type. If the type is not supported * <code>null</code> is returned. * @param type the class of the sublist. * @return a serializer instance or <code>null</code>. */ @SuppressWarnings("rawtypes") public static Serializer<List<?>> createFor(final Class type) { if (ArrayListSubListSerializer.canSerialize(type)) return new ArrayListSubListSerializer(); if (JavaUtilSubListSerializer.canSerialize(type)) return new JavaUtilSubListSerializer(); return null; }
/** * Obtain a serializer for the given sublist type. If the type is not supported * <code>null</code> is returned. * @param type the class of the sublist. * @return a serializer instance or <code>null</code>. */ @SuppressWarnings("rawtypes") public static Serializer<List<?>> createFor(final Class type) { if (ArrayListSubListSerializer.canSerialize(type)) return new ArrayListSubListSerializer(); if (JavaUtilSubListSerializer.canSerialize(type)) return new JavaUtilSubListSerializer(); return null; }