diff --git a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToMapTransformer.java b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToMapTransformer.java index e35a8659f3..593919b723 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToMapTransformer.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/transformer/ObjectToMapTransformer.java @@ -26,21 +26,26 @@ import org.springframework.util.StringUtils; /** * Will transform an object graph into a Map. It supports a conventional Map (map of maps) where complex attributes are - * represented as Map values as well as a flat Map where keys document the path to the value. It supports Collections, - * Maps and Arrays which means that for flat maps it will flatten an Object's properties as such:
+ * represented as Map values as well as a flat Map where keys document the path to the value. By default it will + * transform to a flat Map. If you need to transform to a Map of Maps set the 'shouldFlattenKeys' property to 'false' + * via the {@link ObjectToMapTransformer#setShouldFlattenKeys(boolean)} method. It supports Collections, Maps and Arrays + * which means that for flat maps it will flatten an Object's properties. Below is an example showing how a flattened + * Object hierarchy is represented when 'shouldFlattenKeys' is TRUE.
* - * private Map> testMapInMapData;
- * private List departments;
- * private String[] akaNames;
+ * + * public class Person { + * public String name = "John"; + * public Address address = new Address(); + * } + * public class Address { + * private String street = "123 Main Street"; + * } + * * - * The resulting Map structure will look similar to this:
- * - * person.address.mapWithListData['mapWithListTestData'][1]=blah
- * departments[0]=HR
- * person.lname=Case - * - * By default it will transform to a flat Map. If you need to transform to a Map of Maps set the 'shouldFlattenKeys' - * property to 'false' via the {@link ObjectToMapTransformer#setShouldFlattenKeys(boolean)} method. + * The resulting Map would look like this: + * + * {name=John, address.street=123 Main Street} + * * * @author Oleg Zhurakousky * @since 2.0