Commit Graph

9623 Commits

Author SHA1 Message Date
Senthil Arumugam, Samiraj Panneer Selvam
d8f175edac INT-3666: Add MongoDbMetadataStore
JIRA: https://jira.spring.io/browse/INT-3666
2015-04-08 11:45:45 +03:00
Artem Bilan
f25a999ca5 INT-3686: CONNECTED & RECEIPT on WebSocket Client
JIRA: https://jira.spring.io/browse/INT-3686

Since `WebSocketInboundChannelAdapter` is positioned as an adapter for WebSocket client side as well,
the appropriate Server-side frames should be handler properly there, too, even if `StompSubProtocolHandler`
isn't designed for the client side usage.

* Add catch of the `CONNECTED` and `RECEIPT` STOMP message types to the `WebSocketInboundChannelAdapter`
* Emit `CONNECTED` as a `SessionConnectedEvent`
* Emit `RECEIPT` as a new introduced `ReceiptEvent`

**Cherry-pick to 4.1.x**

More coverage for the new events stuff
2015-04-03 18:58:04 +01:00
Artem Bilan
e31ff77580 INT-3668: Add late-binding for GatewayProxyFB
JIRA: https://jira.spring.io/browse/INT-3668

Note: the `defaultRequestChannel`, `defaultReplyChannel` and `errorChannel` remain as `MessageChannel` references,
since they are really some global shared and it looks logical to require those channels be populated by end-user directly

**Cherry-pick to 4.1.x**
2015-04-02 17:52:17 +01:00
Artem Bilan
5e4f9fca2c INT-3690: AMQP Content-Type Mapping for MimeType
JIRA: https://jira.spring.io/browse/INT-3690

**Cherry-pick to 4.0.x and 4.1.x**
2015-03-31 21:36:52 +03:00
Andy Wilkinson
90e7491d79 Upgrade to Spring Web Services 2.2.1.RELEASE
This commit updates the version of Spring Web Services to
2.2.1.RELEASE. The fix for SWS-892 means that in the event of an
interceptor failing to handle a request, the request is no longer
sent. The interceptor in UriVariableTests has been updated to return
true, indicating that the request has been handled and should be
sent.

Conflicts:
	build.gradle
	spring-integration-ws/src/test/java/org/springframework/integration/ws/config/UriVariableTests.java
2015-03-31 17:43:30 +03:00
Gavin Gray
0d4c839331 INT-3684: Rebuild Tail Command on Restart
JIRA: https://jira.spring.io/browse/INT-3684
2015-03-31 11:21:28 +01:00
Artem Bilan
a60a8733cc INT-3689: Upgrade to Spring Data Fowler
JIRA: https://jira.spring.io/browse/INT-3689

Remove usage of deprecated `mongoTemplate.executeInSession`.
Since MongoDB doesn't provide the `member pinning` guarantee with `requestStart/requestDone`,
this feature has been removed in MongoDB 3.0: https://github.com/mongodb/specifications/blob/master/source/server-selection/server-selection.rst#what-happened-to-pinning
2015-03-31 11:14:28 +01:00
Konstantin Yakimov
efef65c52f INT-3667: Fix RedisLockRegistry memory leak
JIRA: https://jira.spring.io/browse/INT-3667

* fix `RedisLockRegistry.tryLock` memory leaks using 2 different thread local internal storages:
 hard references for locked locks and weak references (optional) for others, weak references are used for lock obtaining optimization -
thread will get same `RedisLock` object for certain key before locking and after unlocking (if variable still exists)
* add `RedisLockRegistry.useWeakReferences` property for enable thread local weak references storage for unlocked locks, disabled by default
* fix `RedisLockRegistry$RedisLock.obtainLock` improper expire time update (expire time was updated on every attempt to get lock)
* update `RedisLockRegistry` tests
2015-03-30 15:05:53 +03:00
Artem Bilan
f686c21b00 INT-3672: Fix IdempotentReceiver for MH @Beans
JIRA: https://jira.spring.io/browse/INT-3672

Previously the `IdempotentReceiverInterceptor` has been applied only for the `MessageHandler`s which were registered with `.handler` suffix.

Rework `IdempotentReceiverAutoProxyCreatorInitializer` and `IdempotentReceiverAutoProxyCreator` to get deal with **direct** `MessageHandler`s
which can be resulted from `@Bean` methods.
Use the `MessageHandler` real bean name instead of `endpoint pattern` in that case

**Cherry-pick to 4.1.x**
2015-03-20 17:47:46 -04:00
Gary Russell
056b17aaa7 INT-3197: Docs to AsciiDoc from DocBook
JIRA: https://jira.spring.io/browse/INT-3197

Polishing

Various glitches.

Fix Table of Contents

Polishing - Various Glitches

More Polishing

- Fixes for issues found by side-by-side comparison of htmlsingle output.

Fix Table Formats for PDF

More Polishing - PR Comments

More Polishing - Bad Titles

More Polishing

Work-Around for AsciiDoctor Problem

https://github.com/asciidoctor/asciidoctor/issues/1297

Use a blank line between includes rather than a comment
at the end of include files that end with a callout.

Remove Unresolved qName Entries

Fix Overview PDF Image Sizes

Highlight Schema Imports

More Image Fixes

INT-3197: Port DocBook Changes Since Conversion

Remove DocBook Files
2015-03-20 19:49:42 +02:00
Gary Russell
facffe2411 INT-3680: Fix JMS Durable Subscription Name
JIRA: https://jira.spring.io/browse/INT-3680

Change parser to use the `setSubscriptionName` setter instead
of `setDurableSubscriptionName` which as the side effect of
unconditionally setting the subscription as durable.
2015-03-19 13:35:48 +02:00
Gary Russell
75ec449c0b INT-3633: Add MessageSourceAdvice
JIRA: https://jira.spring.io/browse/INT-3633

INT-3633: Add SimpleActiveIdleMessageSourceAdvice

Also resolve package tangle.

Polishing and Docs

Polishing according PR comments:
* Fix JavaDocs vulnerabilities
* Fix typos in docs
* Remove unnecessary `AopUtils.canApply` check
2015-03-19 13:31:24 +02:00
Artem Bilan
0f05512e9a INT-3664: Rework BPP in the IntMBExporter
JIRA: https://jira.spring.io/browse/INT-3664

Since all metrics are already direct for the integration components, we don't do any proxying from `IntegrationMBeanExporter`,
and even any other adjustments during BPP phases. Hence this stuff is already redundant for `IntegrationMBeanExporter`.
In addition this change fix the `early access to the BeanFactory from BPP` issue.

INT-3664: Address PR comments

Doc Polish

INT-3664: Polishing according the SF changes to the `PostProcessorRegistrationDelegate$BeanPostProcessorChecker`
2015-03-09 18:01:37 -04:00
Gary Russell
b7ba238860 INT-3656: Restore PreSend Log; Avoid Access Method
JIRA: https://jira.spring.io/browse/INT-3656

The optimization (when no interceptors) inadvertently removed
the `preSend` DEBUG log.

Reinstate the DEBUG log.

Also change `ChannelInterceptorList` to a `static` class.

This avoids the access method invocation each time the channel's
`logger` is used. The only `AMC` field used was the `logger`; pass
it into the `CIL` via a constructor.

Old bytecode:

       104: aload_0
       105: getfield      #14                 // Field this$0:Lorg/springframework/integration/channel/AbstractMessageChannel;
       108: invokestatic  #60                 // Method org/springframework/integration/channel/AbstractMessageChannel.access$1:(Lorg/springframework/integration/channel/AbstractMessageChannel;)Lorg/apache/commons/logging/Log;
       111: invokeinterface #66,  1           // InterfaceMethod org/apache/commons/logging/Log.isDebugEnabled:()Z
       116: ifeq          157

New bytecode:

        98: aload_0
        99: getfield      #22                 // Field logger:Lorg/apache/commons/logging/Log;
       102: invokeinterface #60,  1           // InterfaceMethod org/apache/commons/logging/Log.isDebugEnabled:()Z
2015-03-05 12:12:49 -05:00
Gary Russell
4511b42da8 Add Control Bus to Stored Proc JavaConfig Test 2015-03-05 10:02:19 +02:00
Gary Russell
c631560968 INT-3670: JMS Doc Polishing 2015-03-04 17:40:42 -05:00
Gary Russell
e7534aa4b8 INT-3670: JMS Conversion Error Handling
JIRA: https://jira.spring.io/browse/INT-3670

Exceptions during inbound message conversion are now routed to the error-channel (if present).

When there is no error-channel, the exception is thrown back to the container as before.

Add a note to the `jms.xml` about the `error-channel` usage changes
2015-03-04 23:04:58 +02:00
Artem Bilan
75ff56962a INT-3655: Remove Reactor Function Usage
JIRA: https://jira.spring.io/browse/INT-3655

In addition, change `GatewayProxyFactoryBean` to the logic to ensure that the Reactor is really `optional`

INT-3655: Doc Polishing
2015-03-03 12:14:49 -05:00
Artem Bilan
c8275a06d7 INT-3669: Fix DelayHandler for the Date delay
JIRA: https://jira.spring.io/browse/INT-3669

Previously the `DelayHandler` incorrectly calculated a `delay` for values which are of the `Date` time.
It always used `new Date()` even for rescheduling for persisted messages.

* Fix `DelayHandler` to calculate `delays` against the `requestDate` of the delayed Message
* In addition fix the expression evaluation root object, when for rescheduling it was the message with `DelayedMessageWrapper` payload instead of original message.

**Cherry-pick to 3.0.x, 4.0.x, 4.1.x**
2015-03-03 16:19:50 +02:00
Artem Bilan
7780c94433 Fix race condition in the MonitorTests
See: https://build.spring.io/browse/INT-B41-236
2015-03-03 09:52:40 +02:00
Artem Bilan
2bde14b742 INT-3661: Fix the eager BF access from BPPs (P I)
JIRA: https://jira.spring.io/browse/INT-3661

Previously there were a lot of noise from the `PostProcessorRegistrationDelegate$BeanPostProcessorChecker` for early access for beans.
That may produce some side-effects when some of `BeanFactoryPostProcessor`s won't adjust those beans.

The issue is based on two facts:
1. Loading beans from `BPP`, e.g. `IntegrationEvaluationContextAwareBeanPostProcessor` (or `ChannelSecurityInterceptorBeanPostProcessor` - https://jira.spring.io/browse/INT-3663)
2. Loading beans from `setBeanFactory()/setApplicationContext()` container methods

* Move all code from `setBeanFactory()` with access to the `BeanFactory` (e.g. `this.messageBuilderFactory = IntegrationUtils.getMessageBuilderFactory(this.beanFactory);`)
to some other lazy-load methods like `getMessageBuilderFactory()`
* Fix parser tests to remove `messageBuilderFactory` tests since there is no activity for target components to lazy-load them
* Polish some test according the new lazy-load logic
* Rework `IntegrationEvaluationContextAwareBeanPostProcessor` to the `SmartInitializingSingleton` and make it `Ordered`
* Populate `beanFactory` for the internal instance of `connectionFactory` in the `TcpSyslogReceivingChannelAdapter`
* Populate `beanFactory` for the internal `UnicastReceivingChannelAdapter` in the `UdpSyslogReceivingChannelAdapter`
* Add `log.info` that `UdpSyslogReceivingChannelAdapter` overrides `outputChannel` for the provided `UnicastReceivingChannelAdapter`
* Change the internal `MessageChannel` in the `UdpSyslogReceivingChannelAdapter` to the `FixedSubscriberChannel` for better performance

* Fix `AbstractExpressionEvaluator`
* Add JavaDocs for the `IntegrationEvaluationContextAware`

Fix `MongoDbMessageStoreClaimCheckIntegrationTests`

Addressing PR comments
2015-03-02 18:23:44 -05:00
Gary Russell
134c7c870b INT-3651: JMX Improvements Documentation
JIRA: https://jira.spring.io/browse/INT-3651

- Add documentation for the new JMX environment
- Add the ability to customize the default metrics implementations
- Fix LifecycleMessageHandlerMetrics to get a custom `MessageHandlerMetrics`
- Add an escape to the bean pattern matcher to handle beans starting with `!`

INT-3651: More Docs/Polishing

* JavaDocs polishing
* Change `jmx.xml` to describe `public void stopActiveComponents(long howLong)` not that removed with `boolean force`
2015-03-02 14:44:31 +02:00
Gary Russell
40c4cb0d41 INT-3635: TCP GW: Add remoteTimeoutExpression
JIRA: https://jira.spring.io/browse/INT-3635

Add an expression as an alternative to `remote-timeout`.

INT-3635: Tcp GW Docs

Also removed the relationship between reply-timeout and
remote-timeout (introduced in 2.2 to provide backward compatibility
after the incorrect use of the reply-timeout attribute).

* Add log for Thread interruption state to the `EnableIntegrationTests`: https://build.spring.io/browse/INT-B41-JOB1-233
2015-03-02 13:39:56 +02:00
Gary Russell
80a45715ac INT-3628: Use SchedulingAwareRunner for Long Tasks
JIRA: https://jira.spring.io/browse/INT-3628

Certain tasks in Spring Integration are long running. Indicate
so for the benefit of platforms such as WebLogic that can log warnings
for long running tasks otherwise.

Also fix conflicting versions of commons-io.
2015-02-28 15:16:07 +02:00
Gary Russell
beeb49d55b INT-3577: Remove flush() from TCP Serializers
JIRA: https://jira.spring.io/browse/INT-3577

It is no longer necessary to `flush()` the `BufferedOutputStream`.

Since INT-3575, the `TcpNetConnection` has flushed the stream.

The `TcpNioConnection` now does so too.

* Add `id` for the `<section>`s in the `whats-new.xml`
2015-02-28 15:03:52 +02:00
Gary Russell
29e65e68af INT-3657: Default MaxMessPerPoll=1 for @InboundCA
JIRA: https://jira.spring.io/browse/INT-3657

With XML/DSL, the MMPP defaults to 1 (via the SPCAFB) but
@InboundChannelAdapter defaulted to -1 (infinity).

Change the annotation to be consistent with the XML/DSL.

Add missing schema docs for the `basePollerType`.

* Fix `AbstractMethodAnnotationPostProcessor` for `maxMessagesPerPollValue` override
* Change `EnableIntegrationTests#foo()` `@InboundChannelAdapter` to use `maxMessagesPerPoll = "2"`
and modify appropriate test-case to be sure that `maxMessagesPerPoll` isn't overriden as it has been done in the original commit.
2015-02-28 14:45:06 +02:00
Gary Russell
14a5e1f9c5 Add JDBC SP JavaConfig Test
Polishing according Java 6 target style
2015-02-27 17:19:18 +02:00
Gary Russell
3a114ec83a INT-3641: JMX: Lazy Stats
JIRA: https://jira.spring.io/browse/INT-3641

Instead of maintaining a moving average on each event, store the events
for offline analysis.

Retain 5*window samples - this means that the earlies retained sample
contributes just 0.5% to the sum. E.g. with a window of 10, the earliest
sample is 0.9**50 (0.005).

Also, defer the conversion from nanoseconds to milliseconds to the
retrieval side.

Experimentation shows this increases perfomance by approximately 2x.

Sending 1B messages to nullChannel.

With Proxy: 1.2M/sec
Afer proxy removed: 2.4M/sec
With this change: 5.3M/sec

INT-3641: Polishing - PR Comments

JavaDocs polishing
2015-02-25 14:28:12 +02:00
Artem Bilan
49c231e547 EnableIntegrationTests: add more logger.debug 2015-02-23 11:57:56 +02:00
Gary Russell
d8c369d4d3 INT-3653: JMX: Use System.nanoTime()
JIRA: https://jira.spring.io/browse/INT-3653

Simplify the conversion to System.nanoTime()

Revert Exponential* classes.
2015-02-23 10:43:08 +02:00
Artem Bilan
61e959377d INT-2230: Fix for Double Global Wire-Taps
JIRA: https://jira.spring.io/browse/INT-2230

Previously two global `<wire-tap>`s with the same `id` registered
two `GlobalChannelInterceptorWrapper` wrappers with generated names
for the same (last) `WireTap`. Hence the same `Message` has been sent to the the `wire-tap channel` twice (or more).

Fix the issue with overriding `GlobalChannelInterceptorParser#resolveId` with the `.globalChannelInterceptor` suffix.
Therefore the last `GlobalChannelInterceptorWrapper` wins overriding all others, if all our `<wire-tap>`s has the same `id`.

INT-2230: Add `id` to the global `channel-interceptor`

Polishing
2015-02-21 12:25:41 -05:00
Gary Russell
2214b48aa0 INT-3653: Fix Mean Calculations
JIRA: https://jira.spring.io/browse/INT-3653

After moving to nanosecond precision, the mean calculations were incorrect.

Add test cases to verify correctness.
2015-02-21 14:38:22 +02:00
Artem Bilan
45eaadd6ac INT-3601: Use ChannelResolver instead of BF
JIRA: https://jira.spring.io/browse/INT-3601

* Move `setChannelResolver(DestinationResolver<MessageChannel> channelResolver)` to the `IntegrationObjectSupport`
* Introduce `IntegrationObjectSupport#getChannelResolver()`
* Change all `IntegrationObjectSupport` inheritors to use `getChannelResolver()` instead of direct `beanFactory` usage
* Fix `ServiceActivatorEndpointTests` do not fall

INT-3601: Addressing PR (JIRA) comments

Fixes failing tests

INT-3601: Address PR comments
2015-02-20 17:59:21 -05:00
Gary Russell
a4a6b7094b INT-3653: JMX: Add Pluggable Metrics Factory
JIRA: https://jira.spring.io/browse/INT-3653

Also switch to using `System.nanoTime()` for deltas.

INT-3653: Polishing; PR Comments

INT-3653: Polishing

* Fix `NullChannel` for the generic type
* Add `Assert.notNull` for metrics setters and for the result of `MetricsFactory`
* Fix compile and JavaDocs warnings
2015-02-20 20:21:11 +02:00
Gary Russell
8cba6e6d67 INT-3652: Fix NPE: TCP Caching Connection Factory
JIRA: https://jira.spring.io/browse/INT-3652
2015-02-19 22:08:21 +02:00
Gary Russell
09c203dc6d INT-3637: JMX Improvements Msg Sources/Handlers
JIRA: https://jira.spring.io/browse/INT-3637

- Message Sources
- Message Handlers

Polishing; Final Review and PR Comments

- avoid second call to System.currentTimeMillis()
- fix elapsed time in handler metrics
- expose TrackableComponent when available

INT-3637: Add @IntergrationManagedResource

Prevents beans (channels, etc), which were previously picked
up via a proxy, from being exported by a standard context
MBeanExporter.

I looked at completely eliminating the MBeanExporterHelper,
which suppresses o.s.integration beans from being exported by
a standard MBeanExporter when there is an IMBE present, but I feel
this is too much of a breaking change. There are a number of
standard beans (such as WireTap) that are @ManagedResources and
these would disappear for users that don't have an IMBE.

That said, such beans previously disappear completely when there
*is* an IMBE so now they are now annotated with both so that
they are exported by at most one of the exporters.

Polishing; Use MBE.addExludedBean instead of DFA

INT-3639: JMX (AMQP/JMS) Channel Stats

JIRA: https://jira.spring.io/browse/INT-3639

Module channels inherit `ChannelSendMetrics`; add
`PollableChannelManagement` for polled channels.

INT-3638: JMX Initial Stats/Counts Settings

JIRA: https://jira.spring.io/browse/INT-3638

Add the ability to specify the initial settings for
'enableStats' and 'enableCounts' for MBeans that
support those statistics.

Polishing; PR Comments; Add Handler Metrics Test

Also found a problem using an inner MessageSource bean in an
inbound-channel-adapter - a BeanComponentDefinition was returned
instead of a BeanDefinition.

Add @DirtiesContext to JMX Tests

The new MonitorTests failed with InstanceAlreadyExistsException for the
errorChannel.

Add @DirtiesContext to all tests using the Spring test runner to avoid caching any
contexts after the test class completes.

INT-3637: JMX Support Negated Name Match Patterns

Note: with negated matches, order matters.

Polishing for `MonitorTests`
Fix `EnableIntegrationMBeanExport` JavaDocs
2015-02-19 21:51:45 +02:00
Gary Russell
b56a56e8e6 INT-3650: Fix TCP Caching Factory Configuration
JIRA: https://jira.spring.io/browse/INT-3650

Don't propagate `setSingleUse` to the target factory.

* Polishing for code style
* Fix `CachingClientConnectionFactory#equals`
2015-02-19 13:17:28 +02:00
Artem Bilan
525ff5b2bd INT-3614 Fix extractPayload for JMS i-c-adapter
JIRA: https://jira.spring.io/browse/INT-3614

The `extractPayload` is present in the namespace support for `<int-jms:inbound-channel-adapter>`,
but nor `JmsInboundChannelAdapterParser`, neither `JmsDestinationPollingSource` take care of that value.

To be consistent with `<int-jms:message-driven-channel-adapter>` and documentation, introduce that option for
`JmsDestinationPollingSource` and populate it from the `JmsInboundChannelAdapterParser`.
2015-02-18 17:56:33 -05:00
Gary Russell
f4e775ec18 INT-3646: Add TCP Server Exception Events
JIRA: https://jira.spring.io/browse/INT-3646

Publish `TcpConnectionServerExceptionEvent`s when unexpected
exceptions occur on server sockets.

INT-3646: Polishing
Fix Reactor tests
2015-02-18 20:17:45 +02:00
Artem Bilan
f248394682 INT-3589: Upgrade Dependencies
JIRA: https://jira.spring.io/browse/INT-3589, https://jira.spring.io/browse/INT-3624

* SF - 4.2. Fix Breaking changes for the `ApplicationEventPublisher`
* AMQP 1.5. Without issues
* Reactor - 2.0. Fix for the new `Stream` foundation
* jsonPath - 1.2.0. Fix for new `Predicate` abstraction. Add 'fail-fast error' to the `IntegrationRegistrar`
* Sshd - 0.13.0. Fix for new `VirtualFileSystemFactory` usage
* Spring Data - Fowler
* And others without issues
* Get rid of `reactor.util.StringUtils` usage

INT-3589: Address PR comments

Polishing
2015-02-17 15:09:09 -05:00
Gary Russell
b07686cdc0 INT-3636: JMX Eliminate Channel Metric Proxies
JIRA: https://jira.spring.io/browse/INT-3636

- Add `enableStats()` managed operation
- Delegate to a channel metrics object instead of using a proxy

INT-3636: Polishing; PR Comments

Change field name in `MBeanExporterHelper`.

INT-3636: Polishing
2015-02-17 13:55:33 +02:00
Gunnar Hillert
8c81cffd27 INT-3629: Upgrade to Gradle 2.3
JIRA: https://jira.spring.io/browse/INT-3629

Fix Sonar Build
`build.gradle` polishing
2015-02-16 16:26:43 +02:00
Gary Russell
97c6726fdd Fix Redis Delayer Test
https://build.spring.io/browse/INT-MJATS41-JOB1-238/test/case/155714247

Perhaps a race in Redis; add delay.

Also add a delay between sends so the delays are scheduled in order.
2015-02-15 12:20:54 -05:00
Gary Russell
3f73dfc473 INT-3623: Fix Mail Test File Name
JIRA: https://jira.spring.io/browse/INT-3623

Tests don't run with case-sensitive file system.
2015-02-14 09:35:06 -05:00
Artem Bilan
2f6f269ed8 INT-3623: Make MailSendingMH More Generic
JIRA: https://jira.spring.io/browse/INT-3623

**Cherry-pick to 4.1.x**

INT-3623: Address PR comments
2015-02-13 11:01:49 -05:00
Stuart Williams
b63a8dc967 INT-3513: MutableMessage: Removes the use of DFA
JIRA: https://jira.spring.io/browse/INT-3513

Removing the `rawHeader` access by the `DFA` improves performance.
Tests are added to verify that `MutableMessageBuilderFactory` does
what it purports to, and that the `MutableMessageHeaders` is now
applied, permitting updates to individual headers.

change `@since` to correct/probable release version

INT-3513: Polishing
2015-02-13 11:01:54 +02:00
Gary Russell
9664d4f2fe INT-3634/3558 Fix NPE; Remove Deprecations
JIRA: https://jira.spring.io/browse/INT-3634
JIRA: https://jira.spring.io/browse/INT-3558
2015-02-13 10:55:31 +02:00
Artem Bilan
8c11d7a377 INT-3580: Polishing to the last STOMP tests fix
JIRA: https://jira.spring.io/browse/INT-3580

* Uncomment `org.springframework.integration.ip` category for the IP tests `log4j.properties`
* Since all tests in the `StompIntegrationTests` uses the same application context and therefore the same `SubscriptionRegistry`
the `waitForSubscribe()` should wait exactly for that `subscription` in which it is interested in.
The previous fix wasn't enough
2015-02-13 10:52:52 +02:00
Gary Russell
4286fc6b82 INT-3580: Fix More Stomp Test Race Conditions
JIRA: https://jira.spring.io/browse/INT-3580
2015-02-12 17:49:00 -05:00
Gary Russell
b7d64d12da Fix Race Condition in Test Interceptor (TCP)
The HelloWorldInterceptor (server side) set the
negotiated flag after sending the handshake back.
The next message could be received before the flag
was set and caused the test to fail.

Synchronize the server-side handshaking code so that
we don't start processing the next message before
the negotiated flag is set.

Leave the diagnostic log settings in place for now.
2015-02-12 17:00:29 -05:00