Artem Bilan
23a73fab87
GH-2873: Preserve mapping order in the router ( #2877 )
...
* GH-2873: Preserve mapping order in the router
Fixes https://github.com/spring-projects/spring-integration/issues/2873
Sometime it is important to map to most specific exception instead of
its super class.
* Use `LinkedHashMap` for mapping keys in the
`ErrorMessageExceptionTypeRouter`, as well as in its
`AbstractMappingMessageRouter` superclass.
Since we don't do that internal map modification, there is no reason to
worry about concurrent access: we just replace an internal instance
atomically with a new `LinkedHashMap` every time we modify a mapping
for router
**Cherry-pick to 5.1.x**
* * Fix `RouterSpec.RouterMappingProvider` to `LinkedHashMap` as well
* * Fix `RouterTests` for proper mapping order
* Polishing for `AbstractMappingMessageRouter` hierarchy, so we don't
use `protected channelMappings` field access any more
2019-04-01 15:29:39 -04:00
..
2018-07-03 14:11:02 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2018-07-03 14:11:02 -04:00
2018-07-03 14:11:02 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-02-06 11:21:33 -05:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2018-07-24 12:24:34 -04:00
2019-02-06 11:21:33 -05:00
2018-07-24 12:24:34 -04:00
2019-03-21 17:16:30 -04:00
2019-02-15 15:54:18 -05:00
2019-02-06 11:21:33 -05:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-02-06 11:21:33 -05:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2018-08-28 15:45:04 -04:00
2019-02-15 15:54:18 -05:00
2019-03-21 17:16:30 -04:00
2018-10-25 13:26:51 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2018-10-09 13:15:43 -04:00
2019-02-06 11:21:33 -05:00
2019-03-21 17:16:30 -04:00
2018-10-24 15:02:52 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-02-15 15:54:18 -05:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-28 12:37:55 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2018-10-09 12:29:34 -04:00
2019-03-21 17:16:30 -04:00
2018-07-24 12:24:34 -04:00
2019-02-06 11:21:33 -05:00
2018-07-03 14:11:02 -04:00
2019-03-21 17:16:30 -04:00
2015-08-11 18:21:35 -04:00
2019-02-06 11:21:33 -05:00
2015-03-20 19:49:42 +02:00
2018-10-09 12:29:34 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-27 16:10:49 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-02-06 11:21:33 -05:00
2018-07-24 12:24:34 -04:00
2019-03-21 17:16:30 -04:00
2018-10-25 13:26:51 -04:00
2019-04-01 15:29:39 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-02-06 11:21:33 -05:00
2019-03-21 17:16:30 -04:00
2018-07-24 12:24:34 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2018-10-25 13:26:51 -04:00
2016-05-25 09:29:00 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-28 12:37:55 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2019-03-21 17:16:30 -04:00
2018-10-25 13:26:51 -04:00