JMS Outbound Gateway did not allow the specification of
a task executor on the <reply-listener/> element.
This could prevent the gateway being used with a
listener in a JEE container.
Allow setting a task-executor.
Add a bean name to the reply listener container so
that a default TE will create suitably named threads.
INT-3053 Polishing
Fix container bean name when the gateway has no
bean name.
When a remote flow throws a `MessagingException`, it is unwrapped
and the local `failedMessage` property is the remote failed
message instead of the message that arrived at the outbound
gateway.
Detect a remote MessagingException and wrapt it in a new
MessagingException so the `failedMessage` property is the
original message and the `failedMessage` on the cause is
the remote failed message.
Previously there was a concurrency race condition, where
`parameters` with `idCache` for poll Messages query had one state on building phase,
but had another one on execution phase.
* Introduce `ReentrantReadWriteLock` `idCacheLock` for operation around `idCache`
* Change `idCache` to simple `HashSet`, because thread-safety is guaranteed by `idCacheLock`
* Add a concurrency test-case, which failed before fix
JIRA: https://jira.springsource.org/browse/INT-2993
Provide an option to determine whether or not the discard
(and exception throwing if configured) occurs within the
advice chain (default), or after it completes.
INT-2938 Filter Discard Advice Option - Schema
Schema, parser, tests for option on filter element.
INT-2938 Polishing - PR Comments + Doc
INT-2938 Add to "What's New"
INT-2938 Polishing - Javadoc Typo
while merging: simplified to use boolean var only
- Needs to implement SmartLifecycle and delegate to the adapter
- Needs to implement ApplicationEventPublisherAware and configure the adapter
- Don't set TaskExecutor if null
https://jira.springsource.org/browse/INT-2951
Provide the context id in the 'Dispatcher has no Subscribers'
message.
Ease debugging when more than one context in an application.
INT-2951 Polishing
PR Comments - add quotes to context Id in log message.
Polishing
INT-2951 Polishing
Change IOS to have a simple getApplicationContextId() and
add a method getFullChannelName() to AbstractMessageChannel.
* Introduce XSD 'id' attribute for all `<chain>` sub-components
* Register `<chain>` sub-components as Beans with names based on `<chain>` 'id'
* Generate aliases for sub-components based on element 'id'
* Add `<chain>` parser test to check sub-components as Beans within `BeanFactory`
* Ignore `NestedChainParserTests` as abnormal and confused for SI-configs
* Now `<chain>` sub-components are trackable by `MessageHistory`
* Now `<chain>` sub-components are eligible for JMX export
* Polishing some failed tests
https://jira.springsource.org/browse/INT-2755https://jira.springsource.org/browse/INT-2321
INT-2755: Register as Beans only if 'id' provided
INT-2755: Set 'componentName' for handlers with 'id'
When components within `<chain>` are configured with an 'id' attribute
the 'componentName' of the handler is constructed as:
chainHandler.componentName + '.' + handler.componentName.
Otherwise it is as was before.
INT-2755: Polishing
INT-2755: changes according PR's comments
* Add INFO about preference of `id` attribute for `<chain>` in the `ChainParser`
* Change `<chain>`'s sub-components `id` generation algorithm
* Configure `<chain>`'s sub-component `componentName` in the `ChainParser` instead of in the `MessageHandlerChain`
* Add `componentName` property to the `JpaOutboundGatewayFactoryBean`
* Add a note to the Reference Manual
INT-2755: Localize duplicate 'id' within chain
INT-2755: remove child beans aliasing
* Polishing tests
* Polishing docs
INT-2755 Polishing: Handle Nested Chain Bean Names
Previously named beans within a nested chain did not get unique
bean names.
INT-2755: Polishing nested chains
Doc Polishing
See: https://jira.springsource.org/browse/INT-3011
INT-3011 Pass BeanClassLoader and BeanFactory to GroovyScriptFactory
INT-3011 Move 'implements BeanFactoryAware, BeanClassLoaderAware'
to AbstractScriptExecutingMessageProcessor and GroovyControlBusFactory
Two implementations:
- native 'tail' command (e.g. tail -F -n 0 /foo/bar)
- Apache commons-io Tailer
Further changes:
- Add documentation to section "what's new"
- Add a JUnit @Rule so the OSDFTMP test doesn't fail on Windows
https://jira.springsource.org/browse/INT-3004
Previously, reply messages were silently ignored if the request thread
times out or caught an exception, or had already handled a reply.
Add a WARN log if the client times out or catches an exception,
or has already received a reply.
Optionally make these fatal; at this time, we are not exposing
this boolean on the namespaces see INT-3005.
Polishing - PR Comments
INT-3004 Polishing
Change MessagingTemplate property to throwExceptionOnLateReply.
Previously, the `ApplicationEventListeningMessageProducer` accepted
all `ApplicationEvent`'s and than filtered them.
This caused some `ApplicationEventMulticaster.retrieverCache` overhead.
* Improve `ApplicationEventListeningMessageProducer` to `implements SmartApplicationListener`.
This allows filtering earlier on first the appropriate `ApplicationEvent`
using `ApplicationEventListeningMessageProducer#supportsEventType`
and caching the `ApplicationListener` only for that `ApplicationEvent`.
* Re-register `ApplicationEventListeningMessageProducer` in the `ApplicationEventMulticaster`
when `ApplicationEventListeningMessageProducer#setEventTypes` is invoked
to clear the `ApplicationEventMulticaster.retrieverCache`.
* Move `org.springframework.integration.gemfire.inbound.SpelMessageProducerSupport` to core `ExpressionMessageProducerSupport`.
* Add test for the new logic int `ApplicationEventListeningMessageProducer` and its behavior with respect to the `ApplicationEventMulticaster.retrieverCache`.
JIRA: https://jira.springsource.org/browse/INT-2935
INT-2935: EMPS JavaDoc & AELMP ReadWriteLock
INT-2935: AELMP#eventTypes changing 'barrier'
INT-2935: avoid 'eventTypes' mutation afterwards
INT-2935: Polishing according PR comments
INT-2935: Fix NPE in the `setEventTypes`
Minor Polishing
Polish java docs/comments
Remove compiler warnings
Previously, when a MessageHandlerAdvice is applied to something
other than a MessageHandler, the advice was silently skipped.
Add a WARN log message that warns that the advice is not applied.
Add a test case that ensure the log is emitted when the
advice is applied to a Poller.