else if (Map.class.isAssignableFrom(clazz))
{
Type[] types = ((ParameterizedType) type).getActualTypeArguments();
FieldEncoder keyEncoder = getFieldEncoder(propertyName + MapEncoder.cKeyPrefix, field, types[0]);
FieldEncoder valueEncoder = getFieldEncoder(propertyName + MapEncoder.cValuePrefix, field, types[0]);
return new MapEncoder(propertyName, clazz, keyEncoder, valueEncoder);
}
else if (Collection.class.isAssignableFrom(clazz))
{
Type[] types = ((ParameterizedType) type).getActualTypeArguments();
FieldEncoder valueEncoder = getFieldEncoder(propertyName + CollectionEncoder.cContentsPrefix, field, types[0]);