Commit Graph

298 Commits

Author SHA1 Message Date
Spring Buildmaster
fdbbd74c4e [artifactory-release] Release version 0.5.0.RELEASE 2015-06-11 17:48:17 -07:00
Artem Bilan
6747b0605f Cassandra: polishing before release 2015-06-11 16:02:07 -04:00
Artem Bilan
2bcd54cfba INTEXT-50: Cassandra Adapter Improvements
JIRA: https://jira.spring.io/browse/INTEXT-50

More improvements

`Void` returns handling
2015-05-27 15:43:08 -04:00
Soby Chacko
b9089fb419 INTEXT-50: Add Cassandra Adapters
JIRA: https://jira.spring.io/browse/INTEXT-50
2015-05-13 14:05:48 +03:00
Eren Avsarogullari
c6975af37b INTEXT-149: Refactor HCCacheWritingMessageHandler
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`
2015-05-12 15:22:01 +03:00
Spring Buildmaster
37d70e0e84 [artifactory-release] Next development version 2015-04-20 03:15:21 -07:00
Spring Buildmaster
af4583fe27 [artifactory-release] Release version Hzelcast 1.0.0-M1 2015-04-20 03:15:08 -07:00
Eren Avsarogullari
95f7b239f7 INTEXT-150 Extract Hazelcast Headers and Payloads
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
2015-04-15 23:59:28 +03:00
Artem Bilan
20d0192fc0 INTEXT-163: Add JT400 Module
JIRA: https://jira.spring.io/browse/INTEXT-163
2015-04-13 10:25:08 +01:00
Artem Bilan
4ed2153a45 INTEXT-161 Add <poller> to the <int-hz:o-c-a>
JIRA: https://jira.spring.io/browse/INTEXT-161
2015-04-04 17:32:38 +03:00
erenavsarogullari
bfec7640ca INTEXT-142: Add Spring Integration Hazelcast
JIRA: https://jira.spring.io/browse/INTEXT-142
2015-04-03 12:56:48 +03:00
Artem Bilan
fddd7e47b4 INTEXT-122: Make XSD versionless from SI-core XSD
JIRA: https://jira.spring.io/browse/INTEXT-122

Fix for SMPP. All other extensions will be fixed on demand, when they will be upgraded to SI 4.0 or higher
2014-12-05 19:39:33 +02:00
Gary Russell
3318a4ddeb INTEXT-39 Remove Experimental WebSocket Code
JIRA: https://jira.spring.io/browse/INTEXT-39
2014-11-19 17:54:45 -05:00
Artem Bilan
05b7f39f39 Move AWS to separate repo 2014-11-17 13:45:16 +02:00
Artem Bilan
3268e0a2f7 Move Kafka to the separate repo 2014-11-17 13:26:00 +02:00
Artem Bilan
6b37a400d9 Move Splunk to the individual repo 2014-11-17 12:26:59 +02:00
Flemming Jønsson
85334c7e90 INTEXT-118: Fox for long messages with newlines
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
2014-11-15 19:15:52 +02:00
Artem Bilan
ecd539d1dc DSL: Move Java DSL to the separate repo 2014-11-13 11:40:04 +02:00
Spring Buildmaster
4caccc2ae0 [artifactory-release] Kafka Next development version 2014-11-12 14:16:42 -08:00
Spring Buildmaster
4f4717d9f5 [artifactory-release] Release version Kafka 1.0.0.M2 (#2) 2014-11-12 14:16:38 -08:00
Ilayaperumal Gopinathan
b899ff0ffd Add StringDecoder for kafka messages
- Add StringDecoder for decoding kafka key/value messages

Refactor StringDecoder
2014-11-12 16:00:12 -05:00
Spring Buildmaster
bfdcd7ad1d [artifactory-release] Kafka Next development version 2014-11-12 09:23:19 -08:00
Spring Buildmaster
b28faa34d9 [artifactory-release] Release version Kafka 1.0.0.M2 2014-11-12 09:23:15 -08:00
Ilayaperumal Gopinathan
cad2be0496 INTEXT-111: Allow PP for Kafka producer context
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
2014-11-12 11:20:49 +02:00
Artem Bilan
b8d986167c DSL: O-Gs: requiresReply="true" by default
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.
2014-11-10 18:36:36 +02:00
Artem Bilan
57caf41fb2 DSL: Use generic AppListener fromIntFlowBPP
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.
2014-11-10 13:04:40 +02:00
Artem Bilan
a04cdbf77f DSL: Register AELMP as AL in the AEM
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`.
2014-11-08 19:53:36 +02:00
Christos Kapasakalidis
b44bf47d62 INTEXT-80 - FIX S3 ConnectionPoolTimeoutException
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.
2014-11-06 17:35:30 +02:00
Artem Bilan
13ea2d9111 DSL: Fix RouterSpec for several subflows
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`.
2014-11-01 10:50:59 -04:00
Spring Buildmaster
e144feb1b3 [artifactory-release] Next development version 2014-10-31 12:07:29 -07:00
Spring Buildmaster
879024d97e [artifactory-release] SI Java DSL release version 1.0.0.RC1 2014-10-31 12:07:24 -07:00
Artem Bilan
c3477801e6 DSL: .gateway() SubFlow support 2014-10-31 19:15:26 +02:00
Artem Bilan
e6af7f7eba DSL: RecipientListRouter: Add SubFlow support 2014-10-31 13:43:26 +02:00
Artem Bilan
be9767b8a9 DSL: Introduce SubFlows
Add `subFlow` support for `router`s
Move some tests to separate domain classes
Fix some component registrations

DSL: Fix `SubFlow` registration according PR discussion

* Add IO plugin
* Fix SI 4.0 <-> 4.1 compatibility by `springIoCheck` results
* Further divide for tests to separate domain classes

DSL: Add `discardFlow` to the `.filter()`

Make `.router()` `subFlow`s as `always return to the main flow`

Add `.publishSubscribeChannel()` EIP-method with `.subscriber()`

to specify subscribers as `subFlow`s

Polishing
2014-10-30 16:57:19 -04:00
Artem Bilan
74102a022d DSL: Fix package tangles 2014-10-29 12:43:40 +02:00
Artem Bilan
4005ff874d Java DSL: Introduce FunctionExpression
Add support for `FunctionExpression` and apply it alongside with `expression`, where it is possible
For example:
```
.enrich(e -> e.requestChannel("enrichChannel")
		.requestPayload(Message::getPayload)
		.shouldClonePayload(false)
		.<Map<String, String>>headerFunction("foo", m -> m.getPayload().get("name")))
```
Remove redundant functional interfaces in favor of `Function`

FunctionExpression: Add JDBC Splitter sample

Minor Polishing to FunctionExpression

FunctionExpression: JavaDocs
2014-10-28 15:14:44 -04:00
Artem Bilan
cab77b5e76 Java DSL: Lambdas for Namespace Factories
* Add `Function` and `Consumer` copies from Java 8
* Rework some functional interfaces to `Function` or `Consumer`
* Introduce `Channels`, `MessageHandlers`, `MessageProducers`, `MessageSources`, `MessagingGateways`
- some convenient wrappers for Namespace Factories to be used from Lambdas
* Add Lambda-methods for those new wrappers
* Provide some refactoring
* Upgrade to Boot `1.1.7`

Java DSL: Lambda_Factories

* Change all `IntegrationFlows` methods to `.from()`
* Introduce internal `Function<?, ?>` extensions for particular cases, e.g. `MessageSourcesFunction`.
Now end-user has to cast Lambda parameter to concrete type to get desired factory, e.g.:
```
return IntegrationFlows.from((MessageProducers mp) -> mp.imap("imap://user:pw@host/INBOX"))
```
* rename `.fromFixedMessageChannel` to `.from()` with additional boolean flag
* Introduce `PollerFactory` Lambda for `.poller()` EIP-method on `EndpointSpec`
* Move `Pollers` stuff to the `.core` package to fix package tangle
* Refactoring for some code style
* Fix some typos
2014-10-07 15:11:32 +03:00
Artem Bilan
db05476acf Fix some ChannelName Late Resolution
Polishing
2014-09-17 15:21:16 +03:00
Gary Russell
87745d43a1 DSL: MailTests - SearchTermStrategy
Change lamda expression to a Method reference.
2014-09-10 10:55:47 -05:00
Spring Buildmaster
782999f576 [artifactory-release] Next development version 2014-09-08 04:46:06 -07:00
Spring Buildmaster
16b363a045 [artifactory-release] SI Java DSL Release version 1.0.0.M3 2014-09-08 04:46:02 -07:00
Gary Russell
070252961d DSL: Fix Tail Tests
Timing problem - set end(false), don't start adapter until file
is written.
2014-09-07 16:28:14 -05:00
Artem Bilan
ff4a229bc5 INTEXT-114 Fix outputChannel population AOP issue
JIRA: https://jira.spring.io/browse/INTEXT-114
2014-09-07 11:37:29 -05:00
Artem Bilan
eb5456f9d7 Upgrade to SI 4.0.4 and Boot 1.1.6 2014-09-05 13:02:42 +03:00
Artem Bilan
2ff83c61d9 INTEXT-113: Make .route() as non-last component
JIRA: https://jira.spring.io/browse/INTEXT-113

Previously `router` could be configured only as last component in the `IntegrationFlow` definition.

* Remove `defaultOutputChannel` options from `AbstractRouterSpec`
* Populate `outputChannel` to the `AbstractMessageRouter.defaultOutputChannel`, when there is more EIP-methods after `.route()`
* Rename EIP-method `.recipientListRoute()` to the `.routeToRecipients()`
* Make compatibility with SI 4.1
* Tested against SF 4.1
2014-09-04 11:19:54 +03:00
Artem Bilan
4b5bbb6412 DSL: Add enrichHeaders(Map) EIP-method
* Introduce `MapBuilder` and its custom inheritor - `MailHeadersBuilder`
* Add `HeaderEnricherSpec.headers(MapBuilder)` and `.headers(Map)`
* Change `MailTests` to use new `Mail.headers()` and new `IntegrationFlowDefinition.enrichHeaders(MapBuilder)`
* Change `mailapi` dependency to the IO's `javax.mail`

Polishing - Add headerExpressions()

More Polishing - Add Configurer

Polishing - PR Comments

- Move MapBuilderConfigurer to superclass.
- Move PropertiesBuilderConfigurer into PropertiesBuilder.
2014-08-27 18:08:52 -04:00
Artem Bilan
238c1f06b9 Polishing after rebase 2014-08-26 18:35:19 +03:00
Artem Bilan
f0bfe4656d DSL: Add support for IntegrationFlow Lambda
To simplify a bit the `direct` integration flow definition, the `IntegrationFlow` Lambda is introduced.

* Extract `IntegrationFlow` functional interface with `define(IntegrationFlowDefinition<?> flow)` method.
* Rename existing `IntegrationFlow` class to the `StandardIntegrationFlow` and move it to the inner class within `IntegrationFlowBuilder`
* Extract `IntegrationFlowDefinition` superclass for the `IntegrationFlowBuilder` to be used within `IntegrationFlow` Lambda
to hide `get()` method from end-users.
* Change `IntegrationFlowBeanPostProcessor` for a new logic around `IntegrationFlow` Lambda
* Rename `MessagingProducerSpec` to the `MessageProducerSpec`

Conflicts:
	spring-integration-java-dsl/src/main/java/org/springframework/integration/dsl/IntegrationFlowBuilder.java
2014-08-26 18:29:00 +03:00
Gary Russell
a5bb4e125f DSL: Mail - Add IMAP Idle Adapter
Polish IMAP test server and update it to support IDLE.

Polishing

Polishing - Fix IMAP Server

Changes required because receiver is now initialized.
2014-08-26 16:43:14 +03:00
Gary Russell
c67320e7bc DSL: Mail Polish - Add SearchTerm (lambda) To Test 2014-08-23 09:46:34 -04:00