static List<?> prepareDestinationList(Collection<?> srcCollectionValue, Object field) { if (field == null) { return new ArrayList<Object>(srcCollectionValue.size()); } else { if (CollectionUtils.isList(field.getClass())) { return (List<?>) field; } else if (CollectionUtils.isArray(field.getClass())) { return new ArrayList<Object>(Arrays.asList((Object[]) field)); } else { // assume it is neither - safest way is to create new List return new ArrayList<Object>(srcCollectionValue.size()); } } }
static List<?> prepareDestinationList(Collection<?> srcCollectionValue, Object field) { if (field == null) { return new ArrayList<Object>(srcCollectionValue.size()); } else { if (CollectionUtils.isList(field.getClass())) { return (List<?>) field; } else if (CollectionUtils.isArray(field.getClass())) { return new ArrayList<Object>(Arrays.asList((Object[]) field)); } else { // assume it is neither - safest way is to create new List return new ArrayList<Object>(srcCollectionValue.size()); } } }
static List<?> prepareDestinationList(Collection<?> srcCollectionValue, Object field) { if (field == null) { return new ArrayList<Object>(srcCollectionValue.size()); } else { if (CollectionUtils.isList(field.getClass())) { return (List<?>) field; } else if (CollectionUtils.isArray(field.getClass())) { return new ArrayList<Object>(Arrays.asList((Object[]) field)); } else { // assume it is neither - safest way is to create new List return new ArrayList<Object>(srcCollectionValue.size()); } } }
private static Object getExistingValue(FieldMap fieldMap, Object destObj, Class<?> destFieldType) { // verify that the dest obj is not null if (destObj == null) { return null; } // call the getXX method to see if the field is already instantiated Object result = fieldMap.getDestValue(destObj); // When we are recursing through a list we need to make sure that we are not // in the list // by checking the destFieldType if (result != null) { if (CollectionUtils.isList(result.getClass()) || CollectionUtils.isArray(result.getClass()) || CollectionUtils.isSet(result.getClass()) || MappingUtils.isSupportedMap(result.getClass())) { if (!CollectionUtils.isList(destFieldType) && !CollectionUtils.isArray(destFieldType) && !CollectionUtils.isSet(destFieldType) && !MappingUtils.isSupportedMap(destFieldType)) { // this means the getXX field is a List but we are actually trying to // map one of its elements result = null; } } } return result; }
if (CollectionUtils.isList(result.getClass()) || CollectionUtils.isArray(result.getClass()) || CollectionUtils.isSet(result.getClass()) || MappingUtils.isSupportedMap(result.getClass())) { if (!CollectionUtils.isList(destFieldType) && !CollectionUtils.isArray(destFieldType) && !CollectionUtils.isSet(destFieldType)
result = mapArrayToArray(srcObj, srcCollectionValue, fieldMap, destObj, destCollectionType.getComponentType(), context); } else if (CollectionUtils.isArray(srcFieldType) && (CollectionUtils.isList(destCollectionType))) { result = mapArrayToList(srcObj, srcCollectionValue, fieldMap, destObj, context); else if (CollectionUtils.isList(srcFieldType) && (CollectionUtils.isArray(destCollectionType))) { result = mapListToArray(srcObj, (List<?>) srcCollectionValue, fieldMap, destObj, context); } else if (CollectionUtils.isList(srcFieldType) && (CollectionUtils.isList(destCollectionType))) { result = mapListToList(srcObj, (List<?>) srcCollectionValue, fieldMap, destObj, context); else if (CollectionUtils.isSet(srcFieldType) && CollectionUtils.isList(destCollectionType)) { result = mapListToList(srcObj, (Set<?>) srcCollectionValue, fieldMap, destObj, context);
context); } else if (CollectionUtils.isArray(srcFieldType) && (CollectionUtils.isList(destCollectionType))) { result = mapArrayToList(srcObj, srcCollectionValue, fieldMap, destObj, context); else if (CollectionUtils.isList(srcFieldType) && (CollectionUtils.isArray(destCollectionType))) { result = mapListToArray(srcObj, (List<?>) srcCollectionValue, fieldMap, destObj, context); } else if (CollectionUtils.isList(srcFieldType) && (CollectionUtils.isList(destCollectionType))) { result = mapListToList(srcObj, (List<?>) srcCollectionValue, fieldMap, destObj, context); else if (CollectionUtils.isSet(srcFieldType) && CollectionUtils.isList(destCollectionType)) { result = mapListToList(srcObj, (Set<?>) srcCollectionValue, fieldMap, destObj, context);
if (CollectionUtils.isList(result.getClass()) || CollectionUtils .isArray(result.getClass()) || CollectionUtils .isSet(result.getClass()) || MappingUtils.isSupportedMap(result.getClass())) { if (!CollectionUtils.isList(destFieldType) && !CollectionUtils .isArray(destFieldType) && !CollectionUtils .isSet(destFieldType) && !MappingUtils.isSupportedMap(destFieldType)) {
result = mapArrayToArray(srcObj, srcCollectionValue, fieldMap, destObj); } else if (CollectionUtils.isArray(srcFieldType) && (CollectionUtils.isList(destCollectionType))) { result = mapArrayToList(srcObj, srcCollectionValue, fieldMap, destObj); else if (CollectionUtils.isList(srcFieldType) && (CollectionUtils.isArray(destCollectionType))) { result = mapListToArray(srcObj, (List<?>) srcCollectionValue, fieldMap, destObj); else if (CollectionUtils.isCollection(srcFieldType) && CollectionUtils.isList(destCollectionType)) { result = mapListToList(srcObj, (Collection<?>) srcCollectionValue, fieldMap, destObj);