5561 Commits

Author SHA1 Message Date
Gary Russell
b10aec3ae8 INT-2519 Fix Failing Test
Depending on timing, it was possible the event the test
case was waiting for would never happen. With no timeout
the selector will block until the next IO event occurs,
and there is none in this test.

Adding a call to factory.close() forces a wakeup of
the selector, which will force the harvest to occur.

This is a test-only problem.
2012-05-08 15:01:55 -04:00
Gary Russell
a57a9e56e6 INT-2519 Fix Memory Leak 2.0.x Backport
When using NIO, a Map of connections is maintained (keyed
by the SocketChannel) and used to manage registrations
for NIO events, timeouts etc.

When a connection is closed, the corresponding entry
should be removed from the map. The code to do this
is in AbstractConnectionFactory.processNioSelections().
However, if no socket timeout (soTimeout) has been set,
or it was explicitly set to 0, connections are not
removed from the map. This was because the timeout
logic and map cleanup is done in the same iteration
loop.

Now, if soTimeout is not set, the clean up loop
operates every nioHarvestInterval milliseconds
(default 2000), we don't want to run it on
every selector event.

In addition, it runs if the selectionCount is
zero - this might occur when a socket
is closed, when the selector.wakeup() is called.
2012-04-19 13:32:29 -04:00
Oleg Zhurakousky
82c71852a4 Update version to 2.0.7.BUILD-SNAPSHOT 2012-04-10 17:51:45 -04:00
Oleg Zhurakousky
b79fdd0362 Release version 2.0.6.RELEASE 2012-04-10 16:04:32 -04:00
Oleg Zhurakousky
562a53de87 INT-2502-backport Improve Locking, Race Condition
INT-2502-backport Polishing
2012-03-29 12:05:59 -04:00
Artem Bilan
738009399d INT-2405-maint: polishing tests:
XPathHeaderEnricherTests#notSkippingNullValues() add 'enricher.setDefaultOverwrite(true);' as right behavior for overwriting on existing headers

INT-2405 fix MessageProcessor for <header-value>
1. MethodInvokingHeaderValueMessageProcessor => MessageProcessingHeaderValueMessageProcessor because now he uses MessageProcessor
2. polishing HeaderEnricherParserSupport
3. GroovyHeaderEnricherTests: add check to HeaderValueMessageProcessor for Groovy scripts.
4. build.gradle: add dependency to 'spring-integration-test' for 'spring-integration-groovy'.
5. Fix HeaderEnricherParserSupport like in INT-2188
2012-03-26 15:21:29 -04:00
Artem Bilan
95f29507a7 INT-2405 fix MessageProcessor for <header-value>
1. MethodInvokingHeaderValueMessageProcessor => MessageProcessingHeaderValueMessageProcessor because now he uses MessageProcessor
2. polishing HeaderEnricherParserSupport
3. GroovyHeaderEnricherTests: add check to HeaderValueMessageProcessor for Groovy scripts.
4. build.gradle: add dependency to 'spring-integration-test' for 'spring-integration-groovy'.
5. Fix HeaderEnricherParserSupport like in INT-2188
2012-03-26 10:53:48 -04:00
Gary Russell
ec003d8c05 INT-2449 Fix PubSub Subscriber Accounting Backport
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.
2012-03-26 10:45:36 -04:00
Oleg Zhurakousky
ee77b52fd9 INT-2442 SFTP Authentication - Backport
Fixed DefaultSftpSessionFactory#OptimisticUserInfoImpl to additionally implement UIKeyboardInteractive, tested with both right and wrong password.

Cherry pick; fix copyright.
2012-03-13 12:46:26 -04:00
Artem Bilan
37c7e3c2c6 INT-2439 PollerParser adviceChain.add(customBean)
Fix PollerParser#configureAdviceChain for adding 'customBeanDefinition' into 'adviceChain' List.
PollerParserTests: adding <tx:advice> as customElement into poller's <advice-chain>.
2012-03-13 11:42:06 -04:00
Oleg Zhurakousky
a3df39ea28 INT-2428/29 backport FTP Documentation 2012-03-08 15:25:21 -05:00
Artem Bilan
013e09c888 INT-2399-maint:
Refactor ReplyRequiredException to MessageHandlingException
2012-02-22 18:38:45 -05:00
Oleg Zhurakousky
dad420c6ac INT-2412-maint backport
added validation for 'priority' header, added tests
2012-02-13 12:08:46 -05:00
Oleg Zhurakousky
1d405ac46b INT-1734
added support for case insensitivity for the user defined header prefix in DefaultHttpHeaderMapper
2012-02-13 08:36:46 -05:00
Artem Bilan
96e8d04cc0 INT-2399 fix processMessage for service-activator
ServiceActivatorFactoryBean#createMessageProcessingHandler: force 'processMessage' method-name parameter into constructor ServiceActivatingHandler for MessageProcessor
Test for check 'handlerMethods' in ServiceActivatingHandler's MethodInvokingMessageProcessor
Integration test for <service-activator> with invalid Groovy inline script
2012-02-06 10:04:38 -05:00
Gary Russell
a08904e613 INT-2414 Error When container-class Supplied
JMS backed channels can have container-type and
container-class. Parser rejected container-class because
the schema has a default for container-type.

Both attributes are allowed; user must set container-type
appropriately (based on the superclass of the custom class)
when container-class is provided.
2012-01-24 12:43:31 -05:00
Gary Russell
874c2da895 INT-2406 Add JMSTimestamp Property To Headers
Inbound JMSTimestamp property is now mapped to header
jms_timestamp.
2012-01-19 09:52:56 -05:00
Gary Russell
62630537c3 INT-2400 More Invalid Class Names in Schemas
File and Feed
2012-01-13 22:12:03 -05:00
Gary Russell
a03d2a3e23 INT-2400 More expected-type Fixes
CollectionFilter in core; package changes in security.

Backport to 2.0.x
2012-01-13 13:44:29 -05:00
Gary Russell
d4e9cf5d83 NT-2400 Fix tool:expected-type Classes
* MessageChannel was moved from core to the base package.
* ChannelResolver moved from core to support.
* TcpConnectionInterceptorFactoryChain was incorrect.

Backport to 2.0.x
2012-01-13 09:54:34 -05:00
Oleg Zhurakousky
9babf3d784 INT-2390 backported INT-2350 and INT-2351 to 2.0.6 2012-01-06 10:52:47 -05:00
Oleg Zhurakousky
575a80f9c0 INT-2350 fixed FtpSession
improved logic that deals with creating multiple directories independent of the OS hosting FTP server
2012-01-03 16:43:20 -05:00
Gary Russell
52faf04469 INT-2347 Update Channel Mappings Atomically
Ensure consistent state if channel map is replaced
dynamically.

Backport to 2.0.x.
2012-01-03 11:21:53 -05:00
Mark Fisher
42f95faa61 INT-2335, INT-2336, INT-2337
upgraded spring framework dependency to 3.0.7.RELEASE

  upgraded spring security dependency to 3.0.7.RELEASE

  upgraded spring ws dependency to 2.0.3.RELEASE

  added exclusions for spring-ws transitive dependencies

  updated etag test for spring 3.0.7
2011-12-22 17:56:29 -05:00
Gary Russell
45defb0268 INT-2333 Mac OSX TCP Workaround on Server Side
Mac OSX problem was encountered only on the client; similar
code exists on the server side, so the workaround should
be implemented there too; just in case.
2011-12-22 16:35:45 -05:00
Gary Russell
df1821a279 INT-2333 2011-12-22 16:04:19 -05:00
Oleg Zhurakousky
0e791e38e9 INT-2331-maint fixed aggregator documentation
INT-2331-maint polishing
2011-12-22 08:54:42 -05:00
Mark Fisher
b660d816a0 INT-2291 polishing 2011-12-19 12:11:28 -05:00
Mark Fisher
da21487251 INT-2291 backported 2011-12-19 10:37:51 -05:00
Oleg Zhurakousky
820a1e138a INT-2295 fixed parser logic to eliminate STS warning
INT-2295 removed dead code
Object source = parserContext.extractSource(element); always returned NULL
2011-12-15 16:13:22 -05:00
Oleg Zhurakousky
09094b71aa INT-2291 polished test 2011-12-15 15:42:37 -05:00
Oleg Zhurakousky
bc2ca427bc INT-2291 fixed failing test 2011-12-01 13:13:13 -05:00
Gary Russell
eda83aa1ce INT-2287 Timing Hole With Send-and-Forget TCP
If a tcp client connection factory was configured for single-use
connections (one socket per message), and it was used by an outbound
channel adapter (send and forget), the socket is closed immediately
after sending the message.

This could cause issues with the connection handling because certain
failures could occur. For example, the close could occur before we
ever registered the channel for read selection, resulting in a
ClosedChannelException. Secondly, there was a small timing hole
where a selection key could be invalidated between the isValid()
call and isReadable().

These problems have been corrected.
2011-11-30 16:25:33 -05:00
Mark Fisher
9d9abd3408 Merge pull request #218 from olegz/INT-2278-maint
INT-2278-maint backporting INT-2278
2011-11-28 17:44:38 -05:00
Oleg Zhurakousky
14fc986836 INT-2278-maint backporting INT-2278 2011-11-28 17:43:28 -05:00
Oleg Zhurakousky
495cf53ac6 INT-2254 backporting to maint branch 2011-11-23 09:32:36 -05:00
Oleg Zhurakousky
58d41541d1 INT-2249
polished MethodInvokingMessageProcessor constructor that takes boolean argument by renaming the argument from 'requiresReply' to 'canProcessMessageList' which is what it really maps to in MessagingMethodInvokerHelper.HandlerMethod

  fixed 'filterSelectsNonVoidReturningMethodsOnly' and 'testOverloadedNonVoidReturningMethodsWithExactMatchForType' tests of MethodInvokingMessageProcessorTests to invoke the right constructor and commented out 'testVoidMethodsExcludedByFlag' test as its no longer valid
2011-11-23 08:11:54 -05:00
Gary Russell
d061de73b7 INT-2242 Fix JavaDocs for FTP File Types
Change hard-coded literals to @links

Changed to <ul/>
2011-11-23 07:53:59 -05:00
Gary Russell
eeeeed5c69 INT-2232 GCIBPP Don't Emit Stack Trace
Previously, a (DEBUG) stack trace was logged when we tried
to intercept NullChannel with a Global Channel Interceptor.
2011-11-23 07:53:18 -05:00
Oleg Zhurakousky
a0a09f7e66 backporting INT-2226 changes to maint branch 2011-11-10 15:00:57 -05:00
Mark Fisher
93a27b4ff1 fixed atomicity 2011-11-03 15:19:09 -04:00
Oleg Zhurakousky
c90426ca9f INT-2103-maint added auto-startup to FTP/SFTP adapters 2011-10-20 10:42:39 -04:00
Oleg Zhurakousky
b1f4123e12 INT-2048 2011-10-19 14:57:24 -04:00
Oleg Zhurakousky
a1cbb51da8 backport INT-2103 2011-10-19 10:58:39 -04:00
Oleg Zhurakousky
c20f74c7e6 INT-1813
Added support for recognizing default components in parent ApplicationContext before they get auto-registered in child AC

Added containsBean check earlier, removed 'IfNecessary' from method names
2011-10-18 18:16:55 -04:00
Oleg Zhurakousky
968a2ed6a4 added delegate setters to DefaultSftpSessionFactory for the remaining properties of com.jcraft.jsch.Session 2011-10-10 13:24:43 -04:00
Gary Russell
e12ce5b933 INT-2168 Backport - Missing Port in Connection Id
Broken by INT-1822.
2011-10-06 07:38:25 -04:00
Mark Fisher
316f526472 INT-2124 2011-10-04 16:06:29 -04:00
Mark Fisher
0a25e6de04 INT-2150:fixed xsd doc errors 2011-09-29 10:58:37 -04:00
Mark Fisher
3dc7333593 fixed tests that had multiple triggers 2011-09-27 17:23:07 -04:00