@Override protected Entry<String, Object> getMappedObjectForField(Field field, Object rawValue) { if (isDocument(rawValue)) { Object val = field.isMap() ? new LinkedHashMap<>((Document) rawValue) : rawValue; // unwrap to preserve field type return createMapEntry(field, convertSimpleOrDocument(val, field.getPropertyEntity())); } if (isQuery(rawValue)) { return createMapEntry(field, super.getMappedObject(((Query) rawValue).getQueryObject(), field.getPropertyEntity())); } if (isUpdateModifier(rawValue)) { return getMappedUpdateModifier(field, rawValue); } return super.getMappedObjectForField(field, rawValue); }
@Override protected Entry<String, Object> getMappedObjectForField(Field field, Object rawValue) { if (isDocument(rawValue)) { Object val = field.isMap() ? new LinkedHashMap<>((Document) rawValue) : rawValue; // unwrap to preserve field type return createMapEntry(field, convertSimpleOrDocument(val, field.getPropertyEntity())); } if (isQuery(rawValue)) { return createMapEntry(field, super.getMappedObject(((Query) rawValue).getQueryObject(), field.getPropertyEntity())); } if (isUpdateModifier(rawValue)) { return getMappedUpdateModifier(field, rawValue); } return super.getMappedObjectForField(field, rawValue); }