ExtendedSession, with the listNames() method was introduced
in 2.1.1 (INT-2492) to support mget commands on the gateway.
This was to avoid breaking any user implementations of Session
in a point release. However, we documented this was temporary
and the interfaces would be consolidated in 2.2., and
ExtendedSession would be removed.
This is that consolidation.
Channel creation logic for channels that are not explicitly defined but identified via an 'input-channel' attribute on the corresponding endpoint is now done by ChannelInitializer - an InitializingBean implementation.
This bean plays a role of pre-instantiator since it is instantiated and initialized as the very first bean of all SI beans using AbstractIntegrationNamespaceHandler
INT-2434-v3 polishing
INT-2434-v3 polishing, changed ChannelCreatingFactoryBean from BeanFactoryPostProcessor to BeanFactoryAware
INT-2434 polishing
fix the test
changed the default name of the CHANNEL_CREATOR_BEAN_NAME to a simple name
added additional test
changed ChannelCreatingFactoryBean from FactoryBean to InitializingBean and renamed it to ChannelInitializer
INT-2434 added test validating how automatic channel creation can be disabled
INT-2434 polished based on the latest PR comments
INT-2434-v3 polishing based on comments and discussions with @markfisher and @garyrussell. Added support for disabling aut-creatioin of channels
INT-2434-v3 polished based on @garyrussell last comments
INT-2434-v3 final polishing
Added bean resolver to ContentEnricher
INT-2451 Polishing - PR Review Comments
Disallow bean resolution in the name expression for content enricher
properties - the name expressions can only resolve to payload
properties. Value expressions can resolve to beans and bean properties.
Refactored MongoDbMessageStore to ensure that the Message metadata is persisted consistently using already provided converters. Major refactoring went into MessageWrapper and MongoDbMessageStore.write method which was greatly simplified based on the fact that MessageWrapper now represents the structure that needs to be persisted
INT-2479
fixed default converters to make sure that UUID is stored in Mongo with type information, so the actuall UUID type could be restored
Add initial support for Global lock registry. Fix race condition described in INT-2502.
INT-2502 addressed PR comments by @garyrussell
INT-2502 polishing
Ensure that 'expression*' attributes are parsed
by the AggregatorParser when 'ref' is used to
define the actual aggregator
INT-2396 polishing based on PR comments
INT-2396 changed parser error to warning
message as suggested by Mark.
Raised follow up JIRA for 2.2 to fix it back to error
INT-2498:Added use-temporary-file-name to (s)ftp outbound adapters
INT-2489 polished parser to eliminate any value validation
INT-2489 removed trailing whitespaces from schema files
INT-2489 added boolean flag to detect if 'temporaryFileSuffix'
was explicitly set so the warning message is only be displayed
if renaming is turned off, but a suffix provided.
INT-2489 polishing
Fixed the return value of a non-SOAP message to return the extracted result as is, added tests
INT-2475 polishing based on PR comments
INT-2475 added POX tests for DomSource and Document as per PR suggestion
Fix AbstractCorrelatingMessageHandler to ignore
Message Sequence information IF a custom release strategy is provided.
INT-2478 polishing based on PR comments.
Rename Test case.
No options supported; send a payload of /* or * to
mget all files in the root directory.
Payload is a list of File objects representing files
copied to the 'local-directory'.
INT-2492 Polishing
Fix path issues; suppress LIST when GETing files from NLST.
INT-2492 Polishing
Add ExtendedSession so CachingConnectionFactory works.
INT-2492 SFTP, Docs
INT-2492 Polishing
INT-2492 Polishing - olegz PR Review
INT-2492 Polishing - EOL Note for ExtendedSession
PubSub channel subscriber accounting was incorrect; the counter
was not decremented when unsubscribing.
The handler count, reflecting the current number of subscriptions,
was maintained in the AbstractSubscribableChannel. The count really
belongs in the dispatcher and calls should be delegated to it, particularly
for a custom ASC, which might have a custom AbstractDispatcher.
However, it is possible (although perhaps rare) that someone
could implement a custom channel with a custom dispatcher that
is *not* a subclass of AbstractDispatcher.
Therefore, we now delegate to the dispatcher if we can, and
revert to a counter in the channel if we can't.
Also, the asymmetric accounting in this case is resolved; the
counter is decremented when a subscriber unsubscribes.
Polishing - factor out common code.
Add channel name to MessageDeliveryException
'Dispatcher has no subscribers'.
In a large integration flow, it can be difficult to track
down which subscribable channel has no subscribers.
This commit adds to the message text in the form
for channel someChannelName
to the exception message. For example:
"Dispatcher has no subscribers for channel myChannel."
Also
for amqp-channel someAmqpChannelName
for jms-channel someJMSChannelName
for redis-channel someJMSChannelName
INT-2431 Polishing
Make component type and name immutable once set to avoid
channels further down the stack frame claiming ownership.
INT-2431 Polishing
* PR Comments - use a new Exception type
* Add support for Redis
* Add WARN logs for AMQP/JMS pub-sub channels
INT-2431 Polishing
PR Comments: tighten up isPubSub field in AMQP-backed channel.
INT-2431 Polishing
Ensure channel name is not 'null' or empty string.
Fix PollerParser#configureAdviceChain for adding 'customBeanDefinition' into 'adviceChain' List.
PollerParserTests: adding <tx:advice> as customElement into poller's <advice-chain>.
Commit is mostly parser tidy-up. The crux of the fix is to add the
missing call to adviceChain.add().