public void map(final Object srcObj, final Object destObj) { map(srcObj, destObj, null); }
private Object mapMap(Object srcObj, Map srcMapValue, FieldMap fieldMap, Object destObj, MappingContext context) { Map result; Map destinationMap = (Map) fieldMap.getDestValue(destObj); if (destinationMap == null) { result = DestBeanCreator.create(context.getParams(), srcMapValue.getClass()); } else { result = destinationMap; if (fieldMap.isRemoveOrphans()) { result.clear(); } } for (Entry<?, Object> srcEntry : ((Map<?, Object>) srcMapValue).entrySet()) { Object srcEntryValue = srcEntry.getValue(); if (srcEntryValue == null) { // overwrites with null in any case result.put(srcEntry.getKey(), null); continue; } Object destEntryValue = mapOrRecurseObject(srcObj, srcEntryValue, srcEntryValue.getClass(), destObj, fieldMap, context); Object obj = result.get(srcEntry.getKey()); if (obj != null && obj.equals(destEntryValue) && fieldMap.isNonCumulativeRelationship()) { map(null, srcEntryValue, obj, false, null, context); } else { result.put(srcEntry.getKey(), destEntryValue); } } return result; }
value = alreadyMappedValue; } else { value = map(value, fieldMapping.getDestHintContainer().getHint());
public <T> T map(final Object srcObj, final Class<T> destClass) { return map(srcObj, destClass, null); }
Object obj = result.get(srcEntry.getKey()); if (obj != null && obj.equals(destEntryValue) && fieldMap.isNonCumulativeRelationship()) { map(null, srcEntryValue, obj, false, null, context); } else { result.put(srcEntry.getKey(), destEntryValue);
value = alreadyMappedValue; } else { value = map(value, fieldMapping.getDestHintContainer().getHint());
/** * This function used to map into created instance of destination class * @param classMap object with mapping configuration * @param srcObj source object * @param destObj destination object * @param bypassSuperMappings //TODO * @param mapId mapping identifier */ private void mapToDestObject(ClassMap classMap, Object srcObj, Object destObj, boolean bypassSuperMappings, String mapId) { map(classMap, srcObj, destObj, bypassSuperMappings, new ArrayList<String>(), mapId); }
map(null, srcValue, obj, false, null, context); mappedElements.add(obj);
public <T> T map(final Object srcObj, final Class<T> destClass) { return map(srcObj, destClass, (T) null, getContextOrNewEmptyContext(null)); }
public void map(final Object srcObj, final Object destObj) { map(srcObj, destObj, getContextOrNewEmptyContext(null)); }
public void map(final Object srcObj, final Object destObj) { map(srcObj, destObj, getContextOrNewEmptyContext(null)); }
public <T> T map(final Object srcObj, final Class<T> destClass) { return map(srcObj, destClass, (T)null, getContextOrNewEmptyContext(null)); }
private void processSuperTypeMapping(Collection<ClassMap> superClasses, Object srcObj, Object destObj, List<String> mappedParentFields, String mapId) { for (ClassMap map : superClasses) { map(map, srcObj, destObj, true, mappedParentFields ,mapId); for (FieldMap fieldMapping : map.getFieldMaps()) { String key = MappingUtils.getMappedParentFieldKey(destObj, fieldMapping); mappedParentFields.add(key); } } }
public <T> T map(final Object srcObj, final Class<T> destClass, final MappingContext context) { MappingValidator.validateMappingRequest(srcObj, destClass); return map(srcObj, destClass, (T)null, getContextOrNewEmptyContext(context)); }
public void map(final Object srcObj, final Object destObj, final MappingContext context) { MappingValidator.validateMappingRequest(srcObj, destObj); map(srcObj, null, destObj, getContextOrNewEmptyContext(context)); }
public <T> T map(final Object srcObj, final Class<T> destClass, final MappingContext context) { MappingValidator.validateMappingRequest(srcObj, destClass); return map(srcObj, destClass, (T) null, getContextOrNewEmptyContext(context)); }
public void map(final Object srcObj, final Object destObj, final MappingContext context) { MappingValidator.validateMappingRequest(srcObj, destObj); map(srcObj, null, destObj, getContextOrNewEmptyContext(context)); }
map(copy, srcObj, destObj, true, mapId, context); for (FieldMap fieldMapping : copy.getFieldMaps()) {
/** * Maps classes using mappings of super classes. * * @param superClasses mappings of super classes * @param srcObj source * @param destObj destination * @param mapId map id * @param context user parameters * @param overriddenFieldMappings overridden field mappings * @return list of mapped field keys */ private List<String> processSuperTypeMapping(Collection<ClassMap> superClasses, Object srcObj, Object destObj, String mapId, MappingContext context, List<String> overriddenFieldMappings) { List<String> mappedFieldKeys = new ArrayList<String>(); for (ClassMap map : superClasses) { // create copy of super class map which will be modified farther ClassMap copy = map.copyOf(); // remove from field mappings list entries that overridden by child // class removeOverriddenFieldMappings(copy, overriddenFieldMappings, destObj); // map classes using field mappings for super classes map(copy, srcObj, destObj, true, mapId, context); for (FieldMap fieldMapping : copy.getFieldMaps()) { // remember mapped fields String key = MappingUtils.getMappedParentFieldKey(destObj, fieldMapping); mappedFieldKeys.add(key); } } return mappedFieldKeys; }
map(classMap, srcFieldValue, result, false, getMapId(context), context); context.setMapId(oldMapId);