SubscribableRedisChannel as well as other components to initialize MessageListenerAdapter as it is now neccessery after Redis upgrade
INT-2328-v2 polishing
INT-2328-v2 polishing
* fix RedisChannelParser 'serializer' ref
* some RedisChannelParser polishing
* test for 'serializer' attribute
* SubscribableRedisChannel delegates getPhase() to container
Now <header-enricher> <reply-channel> & <error-channel> are 'referenceOrValueHeaderType'.
Added tests for 'value' & 'expression' attributes on <reply-channel> element.
modified implementation of MessageGroupQueue to use interruptible locks
Basically modeled it after LinkedBlockingQueue
changed to use ReadWriteLock
refactored MessageGroupQueue and added tests
changed MessageGroupQueue to use Condition
added messageGroupSize(groupId) method to MessageGroupStore and all the implementations
polishing based on Gary's comments
removed setStoreLock method in favor of additional constructors
polishing tests, decreased timeouts
made peek() thread safe
added logging
If multiple application contexts exist in the same JVM, where
managed beans exist with the same name, InstanceAlreadyExistsExceptions
could result.
1. Change int-jmx MBean exporter parser to ensure the exporter itself
has a unique name within the JVM.
2. When the IMBE exports Integration components for monitoring, where
the component itself is already an MBean, add domain and object name
static properties configured in the MBean exporter.
3. Add tests to load the same ac a second time to ensure no naming
conflicts arise.
INT-2291
* polished MixedDispatcherConfigurationScenarioTests.failoverNoLoadBalancingWithExecutorConcurrent() test even more
* introduced 'taskSubmissionMonitor' as CountDownLatch to ensure that shutdown command is not called until all tasks are submitted
* also made sure that ExecutorChannel is using the same task executor so shutdown command actually shuts down the same executor
polished MixedDispatcherConfigurationScenarioTests.failoverNoLoadBalancingWithExecutorConcurrent() test even more, introduced 'taskSubmissionMonitor' as CountDownLatch to ensure that shutdown command is not called untill all tasks are submitted. Also made sure that ExecutorChannel is using the same tasks executor so shutdown command actually shuts down the same executor.