Fixes GH-164 (https://github.com/spring-projects/spring-integration-extensions/issues/164)
* Move `deleteFile` logic to the end of of `ZipTransformer#doZipTransform()`
* Add `deleteFile = true` for the `ZipTransformerTests`
* Add `<request-handler-advice-chain>` to the transformers XSD definitions
* Upgrade to Gradle 3.0
* Upgrade dependencies
Move delete logic before reply message creation
Fix `LeaderInitiator`
* Implement `SmartLifecycle` instead of just `Lifecycle`
* Add `Assert`s
* Rework logic from `IMap` for locks just into single `ILock`, since we require it only for the `role` as a key
* Fix `Future.cancel(true)` logic via rescheduling
See https://jira.spring.io/browse/INT-4058 and its commit comments
* Add more complex test-case to meet distributed requirements and verify several `yield()` cycles
JIRA: https://jira.spring.io/browse/INTEXT-158
* Provide the test cases to demonstrate the Spring Integration Hazelcast adapters usage from the JavaConfig
* Upgrade to Hazelcast-3.6, SI-4.2.4, Gradle-2.5
* Fix Hazelcast-3.6 compatibility
* Fix failing tests
* Upgrade to Gradle-2.5, SI-4.2.4
* Remove redundant dependencies
* Add `slf4j-log4j12` to avoid log noise during testing
* Add `settings.gradle` to allow Artifactory Release Management
* Move XSD stuff to the proper place - `org\springframework\integration\zip\config`
* Get rid of manual `enum` transformation in the `Parser`:
- we can't do that there because `property-placeholder` and SpEL are processed later
- no reason to do that at all - `enum`s are properly converted by the SF during bean population phase
* Fix `UnZipTransformer` to `delete()` file in the `finally` block after closing the `InputStream` on file
JIRA: https://jira.spring.io/browse/INTEXT-195
Upgrade to Smack 4.1
Rework logic to the `XMPPConnection` interface
Refactoring for the `XmppConnectionFactoryBean` to extract `serviceName` from the `user`.
Remove redundant dependencies
Add `smack-java7` dependency and some other polishing after testing
Polishing
JIRA: https://jira.spring.io/browse/INTEXT-167
Some refactorings are done.
Hazelcast Cluster Monitor Unit Test Refactorings are done.
Some minor bug fixes are done.
Redundant assert is removed.
HazelcastInstance lifecycle check is added
Migration Event UT Case is updated.
Code style polishing and upgrade to the `spring.io.plugin-0.4.0`
* Add IO plugin
* Upgrade to Gradle 2.4
* Upgrade dependencies
* Upgrade to Hazelcast-3.5 and therefore make compatible with IO-2.0
* All these changes and tests make this module compatible with SI-4.2
JIRA: https://jira.spring.io/browse/INTEXT-149
Some refactorings are done.
Polishing
* Add `IllegalStateException` for wrong `distributedObject`
* Add an invalid test to attempt to write to `ILock`
JIRA: https://jira.spring.io/browse/INTEXT-150
Refactorings are committed.
Polishing:
* Add generic type to the `AbstractHazelcastEventListener` for cleaner implementors
* Remove redundant `Assert`s
* Polishing some code style
JIRA: https://jira.spring.io/browse/INTEXT-118
It also tests long messages without newlines to verify that the fix works for both types of long messages.
INTEXT-118: Replace regular expression split with standard substring to split message into subparts with max length.
The regular expression used earlier failed splitting messages that contained newlines correctly. (See SmesMessageSpecificationTest)
Corrected spelling in constants
Polishing
JIRA: https://jira.spring.io/browse/INTEXT-111
- Remove hard coded names for bean names at the producer context parser
- Fix and update tests
- Remove the use of `BeanFactory` to get the producerConfigurations in
KakfaProducerContext and use setter to set the producerConfigurations
- Add logic to send the message from producer configuration when there
is no header specified for the topic and single producer configuration
is used.
Add tests to verify placeholder values
Fix code review comment and formatting
Polishing code style.
Add `KafkaProducerContext#theProducerConfiguration` for single `producerConfigurations` entry to avoid iterators
Since many `outbound-gateway`s are designed to always expect replies and XML configuration
specifies `requires-reply="true"` for them by default, the DSL should follow with that.
https://build.spring.io/browse/INTSAMPLES-NIGHTLY-JOB1-1189
Since `spring-integration-even` is optional dependency, the usage of `ApplicationEventListeningMessageProducer` is wrong.
Changing it to the generic `ApplicationListener` doesn't hurt for any inline components from Flow definition, when there is an interest to handle Events.
Register `ApplicationEventListeningMessageProducer` as `ApplicationListener` in the `ApplicationEventMulticaster`
Since `ApplicationContext` invokes its `registerListeners()` before the `IntegrationFlowBeanPostProcessor` does its stuff,
the `ApplicationEventListeningMessageProducer` hasn't been visible as an `ApplicationListener` bean, when it is defined from `IntegrationFlow`,
hence add a logic to register it to the `ApplicationEventMulticaster` from `IntegrationFlowBeanPostProcessor`.
JIRA: https://jira.spring.io/browse/INTEXT-80
When synchronizing to local directory, getObject was called without
ever closing the InputStream that the SDK opens causing an
"org.apache.http.conn.ConnectionPoolTimeoutException: Timeout waiting
for connection" exception. To fix that, after synchronization, the
inputStream of the s3Object is closed, causing the s3 client to release
the connection.
The root of the issue is the order of bean registration in the beanFactory.
In this case the first subflows is registered correctly, but the next one has been registered after `RouterSubFlowMappingProvider`.
In this case the input `channel` of the next subflow hasn't been registered yet, hence `NPE` in the `this.router.setChannelMapping`
from `@PostConstruct` of `RouterSubFlowMappingProvider`.
Move the `RouterSubFlowMappingProvider` to end of `componentsToRegister` collection to give a chance to register all subflows before the `RouterSubFlowMappingProvider`.