Commit Graph

7454 Commits

Author SHA1 Message Date
Gunnar Hillert
00a4bc8cc7 INT-3307 Twitter: Upgrade Spring Social Twitter to 1.1.0
Jira: https://jira.springsource.org/browse/INT-3307
2014-02-25 10:44:36 +02:00
Artem Bilan
6a840783e7 INT-3300: Fix MS ref Regression for i-c-adapter
JIRA: https://jira.springsource.org/browse/INT-3300

The change introduced by https://jira.springsource.org/browse/INT-3147
(Registration of `MessageSource<?>` as a bean with suffix `.source`) broke
the case where `MessageSource<?>` is a reference to an existing bean.

Add check to the `AbstractPollingInboundChannelAdapterParser` for the type
of `source` and apply the appropriate logic.

INT-3300: Get rid of Spring Boot dependency

Remove test case that introduced a cyclic dependency.
2014-02-21 18:22:22 -05:00
Gary Russell
71f194a9b9 INT-3301 Polishing
* Close Context After JDBC Tests
* Fix SFTP Mock Tests

JIRA: https://jira.springsource.org/browse/INT-3301
2014-02-21 17:08:24 -05:00
Andy Wilkinson
28a23307cd INT-3301 Update Versions of Numerous Dependencies
JIRA: https://jira.springsource.org/browse/INT-3301

INT-3301 Polishing; Bump Hibernate to 4.3.1

* Fix JDBC Test after version update
* Bump Hibernate version to fix failing test

Latest versions of HSQLDB and Spring
2014-02-21 15:50:26 -05:00
Gary Russell
ccb0b8aa8e INT-3295 Add Doc For Global MessageConverter
JIRA: https://jira.springsource.org/browse/INT-3295

Plus test.
2014-02-12 14:12:27 -05:00
Gary Russell
25489adaa3 INT-3295 Datatype Channel : Use MessageConverter
JIRA: https://jira.springsource.org/browse/INT-3295

Instead of invoking the conversion service directly, do it
via a MessageConverter (DefaultDatatypeChannelMessageConverter).

That way, users can override the MessageConverter; for example,
XD wants to look at the content-type header during the conversion
process (and update the content-type).

INT-3295 Polishing

PR Comments.
2014-02-12 20:21:09 +02:00
Artem Bilan
814caea5d5 INT-3293: Add Lambda Strategies
JIRA: https://jira.springsource.org/browse/INT-3293
2014-02-11 10:50:50 -05:00
Artem Bilan
8cbaef7c6b INT-3292: Add support for Boot AutoConfiguration
JIRA: https://jira.springsource.org/browse/INT-3292

As far as Spring Boot reads `spring.factories` for key
`org.springframework.boot.autoconfigure.EnableAutoConfiguration`,
there is no difficulties to provide a hook to enable Spring Integration
via just Boot `@EnableAutoConfiguration`
2014-02-10 12:00:46 -05:00
Artem Bilan
2fd27e3a6c INT-3286: Add @EnableMessageHistory
JIRA: https://jira.springsource.org/browse/INT-3286

Introduce `@EnableMessageHistory` and `MessageHistoryRegistrar`.
Refactoring for `MessageHistoryParser` to use `MessageHistoryRegistrar` to follow with DRY
Add test for `@EnableMessageHistory`

INT-3286: Polishing

INT-3286: Enable several MHs with the same value

Previously the Framework allowed only one `<message-history>`
independent of their `tracked-components`.
With introduction of `@EnableMessageHistory` and `MessageHistoryRegistrar`
the `MessageHistoryConfigurer` is improved to allow
several `<message-history>` or `@EnableMessageHistory`
with the same set of `componentNamePatterns`.

INT-3286 Polishing + JMX + Docs

* Allows setComponentNamePatterns and/or setComponentNamePatternsSet to
  be used as long as the settings are consistent.
* Handle the case where the `MHC` was configured as a bean (no managed set exists)
* Add support for changing the component name patterns over JMX + test case
* Docs

INT-3286 More Polishing

* Change bean name to `messageHistoryConfigurer`
* Move constant to `ICU`
* Export the MBean by the `IMBE`
2014-02-10 08:51:13 -05:00
Gavin Gray
d8e4818c5e INT-3290 Fix TCP Deserializer for 0 Length Message
ByteArraySingleTerminatorSerializer does not support multiple
subsequent terminators (zero length messages).

JIRA: https://jira.springsource.org/browse/INT-3290

* Add unit test to verify bug.
* Fix bug.

Polishing:

* Remove test for `n >= 0`; n cannot be < 0 here
* Move test case to `DeserializationTests`
2014-02-07 13:30:00 -05:00
Artem Bilan
d54772f171 INT-3285: Fix AMQP JsonHeaders Regression
JIRA: https://jira.springsource.org/browse/INT-3285

Spring Integration 3.0 introduced the `JsonHeaders` and populates them
from a request AMQP Message to the SI Message. In the case of the `AmqpInboundGateway` and
`JsonMessageConverter`, if the SI flow doesn't do anything with `JsonHeaders`
they are returned to the `AmqpInboundGateway` for reply Message
and may override correct values provided by `JsonMessageConverter` in the `DefaultAmqpHeaderMapper`.

This fix provides the check for headers from the reply Message's `MessageProperties`
and populates `JsonHeaders` if the `MessageProperties` doesn't contains the `__TypeId__` header already.

Note, it is just a fix for regression to restore previous behavior.
There is maybe a reason to revise (Another JIRA) all standard AMQP headers and populate them from SI `MessageHeaders`
in the `DefaultAmqpHeaderMapper`, only if they haven't been populated by `MessageConverter` before.

**Cherry-pick to 3.0.x**
2014-02-07 10:34:01 -05:00
Gary Russell
15d9f9566d INT-3289 FileWMH - Improve Exception Message
JIRA: https://jira.springsource.org/browse/INT-3289

Emit '...could not be created.' instead of 'does not exist.'
if the `mkDirs` fails on auto-create.
2014-02-06 13:10:33 -05:00
Artem Bilan
ea080e8a9b INT-3284: Add 'spring.factories' Infrastructure
JIRA: https://jira.springsource.org/browse/INT-3284

* Introduce `IntegrationConfigurationBeanFactoryPostProcessor`, `IntegrationConfigurationInitializer`
* Apply `IntegrationConfigurationInitializer` and 'spring.factories' for HTTP and Security modules

INT-3284: Address PR's comments

JIRA: https://jira.springsource.org/browse/INT-3287

* Fix package tangle (INT-3287)
* Apply `IntegrationConfigurationInitializer` for `MBeanExporterHelper`
* Previously, there was a separate `ChannelSecurityInterceptorBeanPostProcessor`
for each `ChannelSecurityInterceptor` whereas now, there is one `ChannelSecurityInterceptorBeanPostProcessor`
that processes all interceptors

INT-3284 Refactoring around config package tangle
2014-02-06 11:58:23 -05:00
Gary Russell
b59fe444cf Polish MixedDispatcherConfigurationScenarioTests
Assert the latches countdown instead of using an overall
Junit timeout.

Failures: https://build.springsource.org/browse/INT-B40X-JOB1-78
2014-02-04 17:12:45 -05:00
Artem Bilan
4ae5152eff INT-3250: Add @EnableIntegration Infrastructure
JIRA: https://jira.springsource.org/browse/INT-3250

* The main purpose of this change to move all infrastructure bean definitions
from `AbstractIntegrationNamespaceHandler` to a new `IntegrationRegistrar`.
* `IntegrationRegistrar` is invoked by the standard `@Configuration` process and also directly from `AbstractIntegrationNamespaceHandler`.
* Provide some refactoring for consistency.
* Add AnnotationContext tests

INT-3250: Polishing

* Remove `@EnableIntegration#defaultPublisherChannel`
* Revert `#jsonPath` & `#xpath` registration logic
* Fix for DEBUG message on each parse

JIRA: https://jira.springsource.org/browse/INT-3258

INT-3250 Fix JavaDocs & IDEA+Gradle srcDirs issue

INT-3250: Revert `build.gradle` changes

INT-3250 Polishing

* Remove commented out code
* Add javadoc to IntegrationRegistrar.registerBeanDefinitions()
* Fix javadoc links to other Spring projects (and JVM, JEE)
* Add reference documentation and what's new
2014-02-04 16:30:03 -05:00
Artem Bilan
4ac1a9113a INT-3283: Prevent AbstractSelectableChannel NPE
JIRA: https://jira.springsource.org/browse/INT-3283

INT-3236: Remove deprecated `AbstractConnectionFactory.close`

JIRA: https://jira.springsource.org/browse/INT-3236

INT-3283: Remove `selectorLock`

As far as the issue in JVM's `AbstractSelectableChannel` was fixed in Java 7 and 8,
just catch entire `Exception` on `stop()`.
2014-02-03 12:43:12 -05:00
Spring Buildmaster
dd4fdee0cb [artifactory-release] Next development version 2014-01-30 17:03:38 -08:00
Spring Buildmaster
05cf2123a0 [artifactory-release] Release version 4.0.0.M3 2014-01-30 17:03:31 -08:00
Artem Bilan
59bde8ad44 INT-3282: Add BrokerRunning Rule
JIRA: https://jira.springsource.org/browse/INT-3282

Remove `@Ignore` from integration tests and some polishing
2014-01-30 18:49:46 -05:00
Gary Russell
af3160bc60 INT-3281 Bump Spring-AMQP to 1.3.0.M2
JIRA: https://jira.springsource.org/browse/INT-3281
2014-01-30 18:45:09 -05:00
Gary Russell
c0637b6e99 INT-3259 Map Inbound JMSPriority to priority
JIRA: https://jira.springsource.org/browse/INT-3259

Add an option to suppress if needed.

INT-3259: Polishing according PR comments
2014-01-30 17:17:10 +02:00
Artem Bilan
ad1035c33a Merge branch 'INT-3280' 2014-01-30 11:36:58 +02:00
Gary Russell
5db740b1ad INT-3278 Ignore ChannelTests
Some CI Servers don't have Rabbit running.

Need to port the BrokerRunning rule from Spring-AMQP
2014-01-29 18:48:27 -05:00
Gary Russell
5aa0bcadf8 INT-3280 Fix SFTP Class Tangle
JIRA: https://jira.springsource.org/browse/INT-3280
2014-01-29 17:46:49 -05:00
Gary Russell
22c0bb4180 INT-3275 Update Spring Data Redis to 1.1.1
JIRA: https://jira.springsource.org/browse/INT-3275
2014-01-29 17:44:19 -05:00
Artem Bilan
7e32b17a10 INT-3005: Add throwExceptionOnLateReply Property
JIRA: https://jira.springsource.org/browse/INT-3005

* `GenericMessagingTemplate` has `throwExceptionOnLateReply` property.
This change provides a global `messagingTemplate.throwExceptionOnLateReply` property
to allow change default `false` to `true` using `spring.integration.properties`

* Refactor `spring.integration.properties` keys to be consistent with other Spring properties - adde prefix `spring.integraton.`

INT-3005: Add test for `lateReply`

INT-3279: Fix classes tangle
2014-01-29 11:52:48 -05:00
Artem Bilan
2b888b7a76 INT-1897: Refactoring for ChannelInterceptors
JIRA: https://jira.springsource.org/browse/INT-1897

INT-1897: Introduce `ChannelInterceptorAware`

Upgrade to SF 4.0.1

JIRA: https://jira.springsource.org/browse/INT-3255
2014-01-29 10:47:26 -05:00
Artem Bilan
062e7bc9d2 INT-3130: Add result-type to <o-to-j-transformer>
JIRA: https://jira.springsource.org/browse/INT-3130

* add `result-type` attribute to the `<object-to-json-transformer>`
based on enumeration values: `STRING`, `NODE`
* Provide implementations for methods to convert value to the node representation
* Refactoring according new generic option in the `JsonObjectMapper`
* Add tests and documentation

Need Migration Guide note according this refactoring

INT-3130: remove some deprecation and JavaDocs

Addressed PR comments

Doc Polishing
2014-01-28 13:05:14 -05:00
Gary Russell
9005938ab5 INT-3278 AMQP PubSub Redeclare After Conn. Loss
JIRA: https://jira.springsource.org/browse/INT-3278

A broker-named auto-delete queue is not suitable for use
with a message listener container. If the connection is lost,
the queue is deleted and the container cannot recover its
consumer.

Use an AnonymousQueue, which has the same semantics as the
current queue, but can be redeclared after a connection loss.

Register the channel as a ConnectionListener and redeclare
the queue and binding as necessary.

Note: You cannot currently unregister a listener (AMQP-367)
so if the context is destroyed, the channel will remain a
listener. However, the isRunning() flag can be used to
avoid declaring the channels when in that state.

INT-3278 Polishing

* PR Comments
* Remove the listener when the bean is destroy()ed.
2014-01-28 19:54:47 +02:00
Artem Bilan
7e7fbe7247 INT-3274: build.gradle: BUILD-SNAPSHOT condition
JIRA: https://jira.springsource.org/browse/INT-3274

* Change the `libs-snapshot` repository to `libs-milestone`
* Add condition on `project.version` to check `BUILD-SNAPSHOT` release category
and enable `libs-snapshot` repository
* Remove redundant directories from `mqtt` module
* and one more project property for Spring AMQP version

To test it om master:
1. `gradle.properties -> version=4.0.0.M3`
2. `gradlew clean test --refresh-dependencies -PspringAmqpVersion=1.2.1.RELEASE`
2014-01-27 10:51:23 -05:00
Gary Russell
cb25d5ab05 INT-3239 Fix JDK8 Javadoc 2014-01-25 09:51:58 -05:00
Gary Russell
5cb9f05a40 INT-3271 Revert MessageHandlingException Ctor Use
When `MHE` was moved to spring-messaging, 2 constructors were
dropped. INT-3246 worked around it but it had undesirable
side-effects. Constructors have been added back in
spring-messaging so this commit reverts to using those
constructors.

JIRA: https://jira.springsource.org/browse/INT-3271
2014-01-24 10:58:31 +02:00
Gary Russell
1eefab9339 INT-3239 MQTT Final Polishing For Master Merge
* Final Polishing to move from extensions to master
* Commit history is retained from the extensions
* Docbook Chapter

JIRA: https://jira.springsource.org/browse/INT-3239
2014-01-23 18:59:15 -05:00
Glenn Renfro
85a388af89 Updated MQTTMessageConverter to use new classpath 2014-01-23 16:52:39 -05:00
Gary Russell
89cf737ad4 MQTT - Update to Spring Integration 4.0.0.M1 2014-01-23 16:52:39 -05:00
Gary Russell
f316ba86dd MQTT - Use INT/SPR 4.0.0 2014-01-23 16:52:39 -05:00
Gary Russell
7089f864d5 INTEXT-89 Fix Inbound Stop When No Server
The reconnection task was not canceled in doStop().
2014-01-23 16:52:39 -05:00
Gunnar Hillert
fa5a1e3ddd INTEXT-64 - Polishing
* Update dependency versions
* Add more comments/links
* Remove DocBook usage
2014-01-23 16:52:39 -05:00
Gunnar Hillert
4c8083edae Initial MQTT commit 2014-01-23 16:52:39 -05:00
Gary Russell
56ad69b3f6 INT-3276 Failing CI Tests
* Add test diagnostics
* Increase timers

JIRA: https://jira.springsource.org/browse/INT-3276
2014-01-23 13:18:23 -05:00
Gary Russell
7c7fc3fe2c INT-3276 Use a ThreadPool For Aggregator Stress
Stress tests previously created 36,000 threads.

JIRA: https://jira.springsource.org/browse/INT-3276
2014-01-23 12:52:29 -05:00
Gary Russell
deb6a35739 INT-3273 Fix Tests For Spring AMQP 1.3.x
Some mocking changes are needed to support changes in Spring-AMQP.

Note: Needs Spring AMQP with the fix for AMQP-364 Applied.

JIRA: https://jira.springsource.org/browse/INT-3273
2014-01-23 11:10:45 -05:00
Artem Bilan
16c7ac6134 INT-2688 Add header-type to xpath-header-enricher
JIRA: https://jira.springsource.org/browse/INT-2688
JIRA: https://jira.springsource.org/browse/INT-3237

Doc Polishing.
2014-01-21 12:07:48 -05:00
Artem Bilan
b817e98a44 INT-3249: property-placeholder for log-c-a Level
JIRA: https://jira.springsource.org/browse/INT-3249
2014-01-21 10:09:18 -05:00
Artem Bilan
e6d6bf04e2 INT-3244 Fix RedisMEssageStoreTest Race Condition
JIRA: https://jira.springsource.org/browse/INT-3244
2014-01-21 09:48:51 -05:00
Gary Russell
7b7319b39a INT-3266 Java 6 Compiler Compatibility
- ((CachingSessionFactory<?>.CachedSession) session).dirty();
+ ((CachingSessionFactory.CachedSession) session).dirty();

Failed to compile with Java6 (compiles ok with Java7 with
sourceCompatibility=1.6).
2014-01-21 09:28:32 -05:00
Gary Russell
1d002bfc47 INT-3266 (S)FTP Close Dirty Cached Sessions
If an exception occurs on a session it should be physically closed
and not reused because its state is indeterminate and the next
operation might fail.

Note: The booleans within CachedSession do not need to be volatile
because it is a short-lived object only used by the current thread.

Also fixes the assertion message in RFT.get().

JIRA: https://jira.springsource.org/browse/INT-3266

INT-3266 Polishing - PR Comments

Remove need for SuppressWarnings.
Fix 2 test cases where the exception has an additional cause.
2014-01-21 11:19:26 +02:00
Gary Russell
a90291c452 INT-3268 Add Simple RemoteFileOperations.get()
Requires a simple `remotePath` arg instead of
a Message<?>.

JIRA: https://jira.springsource.org/browse/INT-3268

Remove extra-class from `this` reference
2014-01-20 18:20:51 +02:00
Gary Russell
e6a2534fd2 INT-3265 Stored Proc Debug Logging
Set up stored procedure name in `SimpleJdbcCall` before setting
up row mappers; previously the debug logg showed `[null]` for
the procedure name.

JIRA: https://jira.springsource.org/browse/INT-3265
2014-01-16 15:46:15 -05:00
Gary Russell
c45b708341 INT-3262 JDK8 Javadoc Commit
Increase receive timeout for `Jsr223TransformerTests#testInt3162ScriptExecutorThreadSafety`.

JIRA: https://jira.springsource.org/browse/INT-3262
JIRA: https://jira.springsource.org/browse/INT-3263
2014-01-15 19:16:37 +02:00