Commit Graph

1496 Commits

Author SHA1 Message Date
Gary Russell
ff845b5069 INT-3309 Pluggable MessageBuilder
This is still a work in process.

There are a bunch of TODOs in classes
that are not managed by Spring and so
need to have the MessageBuilderFactory
injected.

But I am looking for feedback on the
approach.

INT-3309 Resolve TODOs

Provide access to the MessageBuilderFactory in all classes.

INT-3309 Polishing + Tests

* Fallback to 'fromMessage()' if mutating and inbound message is not MutableMessage
* Add 'alwaysMutate' boolean to MutableMessageBuilderFactory - coerces 'fromMessage' calls to 'mutateMessage'
* Add tests

INT-3309 Polishing; PR Comments

Also add tests to parent/child contexts where the parent has the
default message builder and the child has a mutable message builder.

INT-3309 More Polish; PR Comments

Also fix removeHeader in MMB.
2014-03-06 19:51:12 +02:00
Artem Bilan
4c775bce9d Fix JavaDocs issues 2014-03-06 14:33:18 +02:00
Gary Russell
776705e6c4 INT-3308 SubscribableChannel Optimization
JIRA: https://jira.springsource.org/browse/INT-3308

INT-3308 Move Optimization to AbstractDispatcher

- avoids the need for `canShortCutDispatcher()`
- optimizes all framework channels, including AMQP, JMS
- slight additional performance improvement

INT-3308 FinalSingleHandlerChannel

This is still a work in process.

TODO:Parser, parser tests.

See the DirectChannelTests for perforance results.

INT-3308 'Final' Channel Parser Changes, Tests

INT-3308 Polishing; PR Comments

INT-3308 Polishing

* Rename 'final' attribute to 'fixed-subscriber'
* Rename `BasicSingleFixedSubscriberChannel` to `FixedSubscriberChannel`

INT-3308 Polishing

* Rename test cases to match channel
* Fix parser error messages
* Add more exclusive attribute/element tests

INT-3308 More Polishing

* Remove remaining textual references to 'final'
* WARN log if the single subscriber has auto-startup="false"
* Handle the case when a fixed subscriber channel is declared after its handler
* Support the use of a fixed subscriber channel for elements created by an AbstractOutboundChannelAdapterParser
2014-03-06 13:28:08 +02:00
Artem Bilan
f0a1f81931 INT-3312: Add Support for outputChannelName
JIRA: https://jira.springsource.org/browse/INT-3312

* Add `setOutputChannelName` to `AbstractReplyProducingMessageHandler` and `SourcePollingChannelAdapterFactoryBean`
to allow to have 'late binding' and resolve the real channel from `AC` on component initialization, instead of creation phase
* Add `setRequestChannelName` and `setReplyChannelName` to `ContentEnricher` for the same purpose
* Make `HeaderValueMessageProcessor` implementation `public`. It is useful for JavaConfig and DSL
* Polishing parsers to use classes, not their names as strings

INT-3312: PR comments

INT-3312: Polishing
2014-03-05 12:18:48 -05:00
Gary Russell
5c68029a72 INT-3298 WARN if RSFB Falls Back to SeqSizeRS
JIRA: https://jira.springsource.org/browse/INT-3298

Emit a WARN log whenever the `ReleaseStrategyFactoryBean`
falls back to using the `SequenceSizeReleaseStrategy`.

This will happen if no method name is provided and no
annotated method is found, or a null reference is provided.
2014-03-05 17:25:53 +02:00
Gary Russell
727a554ccf INT-3294 Support Implicit Input Channel with Ann.
JIRA: https://jira.springsource.org/browse/INT-3294

Previously, implicit input channel creation was not
supported for annotated endpoints.

Register a `DirectChannel` if the input channel does
not exist in the context.
2014-03-04 18:28:57 -05:00
Artem Bilan
5d2820dfbe INT-1834: Register Beans for Annotated Handlers
JIRA: https://jira.springsource.org/browse/INT-1834

The general issue has been raised about `MessageHistory` for annotated endpoints (`@ServiceActivator`, `@Transformer` etc.)

* Register generated `MessageHandler`s as beans with concrete names based on component, method and annotation.
* Add tests and docs

In addition revert the version for JRuby to 1.7.8 as other latests versions have a NPE issue around `System.console()`

Doc Polishing
2014-03-03 16:55:54 -05:00
Artem Bilan
12287056d3 INT-3297: Add @MessagingGateway Support
JIRA: https://jira.springsource.org/browse/INT-3297

* Add `<gateway>` annotation analogue and its `MessagingGatewayRegistrar` to register `GatewayProxyFactoryBean` based on annotation attributes
* Add `@IntegrationComponentScan` and its `IntegrationComponentsRegistrar` to scan packages for integration components
* Add implementation to scan `@MessagingGateway`
* Add simple `@MessagingGateway` test

INT-3297: Further improvement

* Make `GatewayParser` to delegate the hard work to the `MessagingGatewayRegistrar`
* Add Docs
* Checked all existing tests

INT-3297: Polishing

INT-3297: Get rid of annotation dep from GWParser

Polishing - Docs and Assertion

Assert that the `@MessagingGateway` is on an interface.
2014-03-03 16:06:06 -05: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
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
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
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
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
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
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
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
Gary Russell
b5bb4a6fc5 INT-3254: AMQP inbound-gateway: add reply-timeout
JIRA: https://jira.springsource.org/browse/INT-3254

Attribute was missing from the namespace causing issues
with long-running consumers with async handoff.

Also fix typo in http, ampq and core schemas.
2014-01-05 18:02:37 +02:00
Artem Bilan
acf2ad2229 INT-3246: MessageHandlingException Refactoring
JIRA: https://jira.springsource.org/browse/INT-3246

INT-3246: Add description to usage of MHException

Deprecate `MessageRejectedException` constructor

INT-3246: Remove `MessageHandlingException` class
2014-01-03 16:19:01 -05:00
Artem Bilan
0be6ade8f8 INT-3253: Eliminate EasyMock Dependency
JIRA: https://jira.springsource.org/browse/INT-3253

INT-3253 Polishing

Use the mockito test runner to initialize the mocks.
2014-01-03 12:54:41 -05:00
Artem Bilan
f9e0bef434 INT-3240: i-c-a-parser: Fix gen. MessageSource Id
JIRA: https://jira.springsource.org/browse/INT-3240

Spring Integration 3.0 introduced registration of `MessageSource`s as beans
with an `id` based on the adapter `id` or, as a fallback, generated from
the `MessageSource` class name and the suffix `.source`.
But since that bean wasn't registered as a bean with the generated name (because the suffix was added),
subsequent elements get the same source bean name. This meant that
several anonymous `inbound-channel-adapter` with the same type (`file:`, `ftp:`, `twitter:` etc.)
caused an issue, when the same `MessageSource` bean was used by several `SourcePollingChannelAdapter` beans.

Fix the issue for fallback name generation by using the `SourcePollingChannelAdapterFactoryBean` class name.
Since that is registered, the source will always get a unique name, regardless of whether an id is provided.
2014-01-02 13:31:46 -05:00
Gary Russell
df492e18fa INT-3248 Suppress HeaderChannelRegistry Warning
Remove warning from BFCR if there is no HeaderChannelRegistry in
the bean factory. Change the log to DEBUG and remove the stack
trace.

Instead, update the Exception message when a channel name can't be
resolved to a channel to indicate that there is no registry.

JIRA: https://jira.springsource.org/browse/INT-3248
2013-12-21 10:46:14 -05:00
Gary Russell
ca0bddffbd INT-3245 Remove SI ChannelInterceptor
Replace with the same class from spring-messaging.

JIRA: https://jira.springsource.org/browse/INT-3245
2013-12-17 16:52:12 -05:00
Gary Russell
c2ee2161a1 INT-3242 Final Polish for 4.0.0.M2
- Rename EiMessageHeaderAccessor to IntegrationMessageHeaderAccessor
- Remove GenericMessage
- Minor TODOs
- Start a new What's new" chapter in the reference

JIRA: https://jira.springsource.org/browse/INT-3242
2013-12-17 14:38:36 -05:00
Artem Bilan
3d5a53d5d3 INT-3165: Deprecate Jackson 1.x Usage
JIRA: https://jira.springsource.org/browse/INT-3165

INT-3165 Polishing

Remove unnecessary SuppressWarnings.
2013-12-17 11:19:16 -05:00
Artem Bilan
ed4f443c4b INT-3156: Resolve deprecations according to SPR 4
JIRA: https://jira.springsource.org/browse/INT-3156

* Resolve `@SuppressWarnings("deprecation")` for HTTP, JDBC modules
* Remove `ParameterizedTypeReference`
* Add `@SuppressWarnings("deprecation")` to `HttpRequestHandlingEndpointSupport`
for `MappingJacksonHttpMessageConverter`
2013-12-17 12:54:50 +02:00
Artem Bilan
19aa52e510 INT-3160: IRMHM: Use Protected Method from Super
JIRA: https://jira.springsource.org/browse/INT-3160

Prior to SPR 4.0 `RequestMappingHandlerMapping#createRequestMappingInfo` was `private`.
So, there was reason to to use reflection in the `IntegrationRequestMappingHandlerMapping`
2013-12-16 15:31:34 -05:00
Gary Russell
e8843f3358 INT-3208 Create 4.0 Schemas
Update the spring.schemas files.

Update the version in the abstract namespace parser.

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

The following is a diff showing changes between the 3.0 and 4.0 schemas...

./spring-integration-amqp/src/main/resources/org/springframework/integration/amqp/config/spring-integration-amqp-3.0.xsd
12c12
< 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd"/>
---
> 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd"/>
./spring-integration-core/src/main/resources/org/springframework/integration/config/xml/spring-integration-3.0.xsd
./spring-integration-event/src/main/resources/org/springframework/integration/event/config/spring-integration-event-3.0.xsd
11c11
< 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-feed/src/main/resources/org/springframework/integration/feed/config/spring-integration-feed-3.0.xsd
12c12
< 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-file/src/main/resources/org/springframework/integration/file/config/spring-integration-file-3.0.xsd
13c13
<                 schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd"/>
---
>                 schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd"/>
./spring-integration-ftp/src/main/resources/org/springframework/integration/ftp/config/spring-integration-ftp-3.0.xsd
13c13
< 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
15c15
< 		schemaLocation="http://www.springframework.org/schema/integration/file/spring-integration-file-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/file/spring-integration-file-4.0.xsd" />
./spring-integration-gemfire/src/main/resources/org/springframework/integration/gemfire/config/xml/spring-integration-gemfire-3.0.xsd
./spring-integration-groovy/src/main/resources/org/springframework/integration/groovy/config/spring-integration-groovy-3.0.xsd
10c10
< 		schemaLocation="http://www.springframework.org/schema/integration/scripting/spring-integration-scripting-core-3.0.xsd"
---
> 		schemaLocation="http://www.springframework.org/schema/integration/scripting/spring-integration-scripting-core-4.0.xsd"
13c13
< 	<xsd:import namespace="http://www.springframework.org/schema/integration" schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 	<xsd:import namespace="http://www.springframework.org/schema/integration" schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-http/src/main/resources/org/springframework/integration/http/config/spring-integration-http-3.0.xsd
11c11
< 				schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 				schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-ip/src/main/resources/org/springframework/integration/ip/config/spring-integration-ip-3.0.xsd
12c12
< 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-jdbc/src/main/resources/org/springframework/integration/jdbc/config/spring-integration-jdbc-3.0.xsd
9c9
< 	<xsd:import namespace="http://www.springframework.org/schema/integration" schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 	<xsd:import namespace="http://www.springframework.org/schema/integration" schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-jms/src/main/resources/org/springframework/integration/jms/config/spring-integration-jms-3.0.xsd
14c14
< 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd"/>
---
> 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd"/>
./spring-integration-jmx/src/main/resources/org/springframework/integration/jmx/config/spring-integration-jmx-3.0.xsd
9c9
< 	<xsd:import namespace="http://www.springframework.org/schema/integration" schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 	<xsd:import namespace="http://www.springframework.org/schema/integration" schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-jpa/src/main/resources/org/springframework/integration/jpa/config/xml/spring-integration-jpa-3.0.xsd
12c12
< 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-mail/src/main/resources/org/springframework/integration/mail/config/spring-integration-mail-3.0.xsd
14c14
< 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd"/>
---
> 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd"/>
./spring-integration-mongodb/src/main/resources/org/springframework/integration/mongodb/config/spring-integration-mongodb-3.0.xsd
11c11
< 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-redis/src/main/resources/org/springframework/integration/redis/config/spring-integration-redis-3.0.xsd
11c11
< 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-rmi/src/main/resources/org/springframework/integration/rmi/config/spring-integration-rmi-3.0.xsd
14c14
< 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd"/>
---
> 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd"/>
./spring-integration-scripting/src/main/resources/org/springframework/integration/scripting/config/spring-integration-scripting-3.0.xsd
8c8
< 		schemaLocation="http://www.springframework.org/schema/integration/scripting/spring-integration-scripting-core-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/scripting/spring-integration-scripting-core-4.0.xsd" />
./spring-integration-scripting/src/main/resources/org/springframework/integration/scripting/config/spring-integration-scripting-core-3.0.xsd
11c11
< 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
./spring-integration-security/src/main/resources/org/springframework/integration/security/config/spring-integration-security-3.0.xsd
./spring-integration-sftp/src/main/resources/org/springframework/integration/sftp/config/spring-integration-sftp-3.0.xsd
13c13
< 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
15c15
< 		schemaLocation="http://www.springframework.org/schema/integration/file/spring-integration-file-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/file/spring-integration-file-4.0.xsd" />
./spring-integration-stream/src/main/resources/org/springframework/integration/stream/config/spring-integration-stream-3.0.xsd
14c14
< 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd"/>
---
> 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd"/>
./spring-integration-syslog/src/main/resources/org/springframework/integration/syslog/config/spring-integration-syslog-3.0.xsd
13c13
< 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd" />
15c15
< 		schemaLocation="http://www.springframework.org/schema/integration/ip/spring-integration-ip-3.0.xsd" />
---
> 		schemaLocation="http://www.springframework.org/schema/integration/ip/spring-integration-ip-4.0.xsd" />
./spring-integration-twitter/src/main/resources/org/springframework/integration/twitter/config/spring-integration-twitter-3.0.xsd
14c14
< 				schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd"/>
---
> 				schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd"/>
./spring-integration-ws/src/main/resources/org/springframework/integration/ws/config/spring-integration-ws-3.0.xsd
14c14
< 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd"/>
---
> 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd"/>
./spring-integration-xml/src/main/resources/org/springframework/integration/xml/config/spring-integration-xml-3.0.xsd
13c13
< 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd"/>
---
> 			schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd"/>
./spring-integration-xmpp/src/main/resources/org/springframework/integration/xmpp/config/spring-integration-xmpp-3.0.xsd
14c14
< 				schemaLocation="http://www.springframework.org/schema/integration/spring-integration-3.0.xsd"/>
---
> 				schemaLocation="http://www.springframework.org/schema/integration/spring-integration-4.0.xsd"/>
2013-12-16 13:04:18 -05:00
Gary Russell
2baea786b1 Merge remote-tracking branch 'upstream/master' into 4.0.0-WIP
Conflicts:
	build.gradle
	gradle.properties
	spring-integration-core/src/main/java/org/springframework/integration/config/RouterFactoryBean.java
	spring-integration-core/src/test/java/org/springframework/integration/channel/config/DispatchingChannelParserTests.java
	spring-integration-core/src/test/java/org/springframework/integration/gateway/GatewayProxyFactoryBeanTests.java
	spring-integration-core/src/test/java/org/springframework/integration/router/config/PayloadTypeRouterParserTests.java
	spring-integration-core/src/test/java/org/springframework/integration/transformer/MessageTransformingChannelInterceptorTests.java
	spring-integration-ip/src/test/java/org/springframework/integration/ip/tcp/connection/ConnectionFactoryShutDownTests.java
	spring-integration-ip/src/test/java/org/springframework/integration/ip/tcp/connection/TcpNioConnectionReadTests.java
	spring-integration-ip/src/test/java/org/springframework/integration/ip/udp/DatagramPacketSendingHandlerTests.java
	spring-integration-ip/src/test/java/org/springframework/integration/ip/udp/MultiClientTests.java
	spring-integration-ip/src/test/java/org/springframework/integration/ip/udp/UdpChannelAdapterTests.java
	spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcMessageHandler.java
	spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcOutboundGateway.java
	spring-integration-jdbc/src/main/java/org/springframework/integration/jdbc/StoredProcPollingChannelAdapter.java
	spring-integration-xmpp/src/main/java/org/springframework/integration/xmpp/core/AbstractXmppConnectionAwareEndpoint.java

Resolved.
2013-12-16 11:02:40 -05:00
Gary Russell
ef756bfd6d INT-3235 Make GatewayMethodMetadata Public
JIRA: https://jira.springsource.org/browse/INT-3235

Unable to programmatically wire header expressions or method-specific
properties into a GatewayProxyFactoryBean.

The GPFB has public methods that take arguments of
this type.

Make the class public instead of package-protected.

Add a test case.
2013-12-13 21:16:09 +02:00
Oleg Zhurakousky
52f5f4ad77 INT-3230 Added support for 'load-balancer-ref' attribute
of the 'channel' element. Added tests and updated documentation

INT-3230 addressed PR comments
2013-12-11 20:47:10 +02:00
Gary Russell
d39b6870c4 INT-3221 Polishing
Remove unused import.

JIRA: https://jira.springsource.org/browse/INT-3221
2013-12-11 09:21:58 -05:00
Artem Bilan
9971ace2ad INT-3221: Deprecate MessageTransformingCI
JIRA: https://jira.springsource.org/browse/INT-3221
2013-12-11 09:05:54 -05:00
Artem Bilan
c2004f1ab3 INT-3228: Remove Previous versions' Deprecations
JIRA: https://jira.springsource.org/browse/INT-3228

Remove elements that were deprecated in earlier
versions; see the migration guide for more information

https://github.com/spring-projects/spring-integration/wiki/Spring-Integration-2.2-to-3.0-Migration-Guide

INT-3228: Revert FileTransferMH#setTempDirectory
2013-12-10 09:21:04 -05:00
Gary Russell
87d8e86297 INT-3227 Fix Race Condition for WARN Log
JIRA: https://jira.springsource.org/browse/INT-3227

In MessagingTemplate.TemporaryReplyChannel, it was possible
the `clientHasReceived` boolean could be set by the other
thread after normal message receipt, but before the sender
tests it for the purpose of emitting a duplicate reply log
message.

Capture the boolean value of `clientHasReceived` before
counting down the latch.
2013-12-09 11:27:20 +02:00
Gary Russell
8dd9340f36 Fixes For Final Spring 4 Polishing
- MessageConverter moved
- MessagingException.failedMessage is immutable
- Cast needed on messagingTemplate.receive()
2013-12-06 15:22:01 -05:00
Gary Russell
feec3eaf84 Merge remote-tracking branch 'upstream/master' into 4.0.0-WIP
Conflicts:
	build.gradle
	spring-integration-amqp/src/main/java/org/springframework/integration/amqp/channel/AbstractSubscribableAmqpChannel.java
	spring-integration-core/src/main/java/org/springframework/integration/channel/ExecutorChannel.java
	spring-integration-event/src/main/java/org/springframework/integration/event/inbound/ApplicationEventListeningMessageProducer.java
	spring-integration-file/src/test/java/org/springframework/integration/file/recursive/FileInboundChannelAdapterWithRecursiveDirectoryTests.java
	spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpConnectionEventListeningMessageProducer.java
	spring-integration-jdbc/src/test/java/org/springframework/integration/jdbc/StoredProcOutboundGatewayWithNamespaceIntegrationTests.java
	spring-integration-jdbc/src/test/java/org/springframework/integration/jdbc/config/JdbcOutboundGatewayParserTests.java
	spring-integration-jdbc/src/test/java/org/springframework/integration/jdbc/config/StoredProcInvalidConfigsTests.java
	spring-integration-jms/src/main/java/org/springframework/integration/jms/SubscribableJmsChannel.java
	spring-integration-jpa/src/test/java/org/springframework/integration/jpa/outbound/JpaOutboundGatewayIntegrationTests.java
	spring-integration-redis/src/main/java/org/springframework/integration/redis/channel/SubscribableRedisChannel.java
	spring-integration-security/src/test/java/org/springframework/integration/security/SecurityTestUtils.java
	spring-integration-xml/src/main/java/org/springframework/integration/xml/selector/XmlValidatingMessageSelector.java

Resolved.
2013-12-06 14:23:23 -05:00
Gary Russell
116cedb3c6 Restore setDefaultChannel to MessagingTemplate
Synonym for the Spring setDefaultDestination for backward compatibility.
2013-12-05 09:24:56 -05:00
Gary Russell
7da027ad63 INT-3189 Fix JavaDocs
Links to classes moved to `spring-messaging`.

Also `MessageHeaders` was inadvertently added back in by the
last merge.

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

__NOTE: Merge to 4.0.0-WIP, not master__
2013-11-27 12:40:18 -05:00
Artem Bilan
db32486d35 INT-3006: Resolve 'maxSubscribers' from INT Props
JIRA: https://jira.springsource.org/browse/INT-3006

* Add integration properties `channels.maxUnicastSubscribers` and `channels.maxBroadcastSubscribers`
with default value to `Integer.MAX_VALUE`
* Add SpEL value resolution for those default values from parsers
* Deprecate similar properties from `ChannelInitializer`

INT-3006 `maxSubscribers` from channels' onInit()

* Move default init for `maxSubscribers` to the channels' `onInit()`
from `integrationProperties`, not from parsers
* extract `default` `integrationProperties` from static block in the `IntegrationProperties`
and use them as `default` on `IntegrationContextUtils#getIntegrationProperties`
* Add bean definition expression building to get the default values for `integration properties`
on bean building phase.

INT-3006: Add `taskScheduler.poolSize` property

INT-3006: Polishing
2013-11-26 11:35:16 -05:00
Gary Russell
6fd8d1dba7 Update to Spring 4 Build Snapshot
- IdGenerator package change
- Generics added to CollectionUtils.arrayToList()
2013-11-26 09:28:41 -05:00
Gary Russell
48a005ec2a Use SI BeanFactoryChannelResolver
Resolve channel names in the HeaderChannelRegistry.

Add back MessagingTemplate (subclass of GenericMessagingTemplate).
2013-11-25 18:43:16 -05:00