Mark Fisher
397f976c08
Moved the setting of target object and method into DefaultMessageHandlerCreator instead of AbstractMessageHandlerCreator. If AbstractMessageHandlerAdapter's mapping result is null, the corresponding method argument will be null (no longer invoking getPayload() since there is a chance for null mapping results).
2008-05-15 20:43:00 +00:00
Mark Fisher
d38a7259d3
ResponseCorrelator is now ReplyMessageCorrelator.
2008-05-15 20:08:04 +00:00
Mark Fisher
6c31589987
Method parameter matching for Map or Properties will resolve to the payload if its type matches. Otherwise, the header attributes or properties will be passed respectively (INT-192).
2008-05-15 19:42:19 +00:00
Mark Fisher
be192a1691
Added support for @HeaderAttribute and @HeaderProperty parameter annotations (INT-192).
2008-05-15 18:29:13 +00:00
Mark Fisher
f6541eb7ec
Refactored "channel-factory" from sub-element to attribute of the <message-bus/> element.
2008-05-15 14:00:51 +00:00
Mark Fisher
ce37d6b4e7
polishing
2008-05-15 13:39:58 +00:00
Mark Fisher
37b2f0a87d
polishing
2008-05-15 13:21:59 +00:00
Marius Bogoevici
17294c44ec
Adding support for defining a ChannelFactory on the MessageBus in the form:
...
<message-bus>
<channel-factory ref="bean"/>
</message-bus>
The channel factory will be used for auto-created channels, as well as for channels created using the <channel/> syntax. For specifying a QueueChannel (with capacity), the newly added <queue-channel> element must be used.
2008-05-15 05:54:12 +00:00
Marius Bogoevici
035e9aef12
correcting import.
2008-05-15 05:11:02 +00:00
Mark Fisher
18d03ae2d7
Added support for the 'expect-reply' attribute in JmsGatewayParser. SimpleMessagingGateway now returns void instead of boolean, but it throws a MessageDeliveryException if the underlying RequestReplyTemplate fails to send the Message to the request channel.
2008-05-14 14:38:58 +00:00
Mark Fisher
9f95c5a1fa
Added the abstract MessagingGatewaySupport base class providing access to a RequestReplyTemplate. Renamed MessagingGateway to SimpleMessagingGateway which now extends MessagingGatewaySupport (INT-126).
2008-05-14 12:56:53 +00:00
Mark Fisher
1f57305cae
MethodInvokingHandler now has DefaultMessageMapper and DefaultMessageCreator unless overridden.
2008-05-11 20:32:13 +00:00
Mark Fisher
cc7f1cb91a
Enforcing that a <source-endpoint/> element always contains exactly one <schedule/> sub-element.
2008-05-03 22:55:55 +00:00
Mark Fisher
4c0c3677d0
The <jms-gateway/> element is now available for message-driven JMS adapters. The <jms-source/> is strictly for polling adapters. Provided basic foundation for converting other request-reply adapters into "gateways". This includes the following namespace changes: 'send-timeout' is now 'request-timeout', 'receive-timeout' is now 'reply-timeout', and the 'channel' element is now 'request-channel'. The Source interface now includes the receive() method itself. PollableSource and SubscribableSource interfaces have both been removed. The Subscribable interface was added (e.g. for SynchronousChannel), but "gateway" adapter types will be configured directly with a request channel (and optionally a response channel).
2008-05-03 22:23:40 +00:00
Marius Bogoevici
4f42fe7227
Adding MessageBus, previously omitted.
2008-05-02 21:16:35 +00:00
Marius Bogoevici
0d8e8fc6ee
Adding ChannelFactory, various implementations for different types of channels and DefaultChannelFactoryBean.
2008-05-02 21:10:18 +00:00
Marius Bogoevici
82ecd5f5b8
<message-bus/> will automatically add a MessageBusAwareBeanPostProcessor to the context.
2008-05-02 06:10:18 +00:00
Marius Bogoevici
d0041dd8ad
Adding class ommitted from previous checkin.
2008-05-02 05:21:20 +00:00
Marius Bogoevici
cc5011428d
Added the MessageBusAware interface, as well as the MessageBusAwareBeanPostProcessor for injecting the MessageBus in the implementing beans.
2008-05-02 05:11:17 +00:00
Mark Fisher
78905d9bcb
Added MessagingGateway as a subclass of RequestReplyTemplate that is also a superclass for the GatewayProxyFactoryBean.
2008-05-01 13:09:11 +00:00
Mark Fisher
369ea90b24
Refactored ChannelParser into a hierarchy of parsers. Added namespace support for "rendezvous-channel" and "direct-channel" (a.k.a. SyncrhonousChannel at this point).
2008-04-28 23:59:43 +00:00
Mark Fisher
d252605bdb
The "defaultOutputChannelName" property of HandlerEndpoint is now "outputChannelName", and the "defaultOutput" attribute of the @MessageEndpoint annotation is now "output".
2008-04-27 06:00:40 +00:00
Mark Fisher
09333d62cb
The <handler-endpoint/> element's "default-output-channel" attribute is now "output-channel". Since the new "return-address-overrides" value is true by default, the "output-channel" takes precedence rather than being a fallback.
2008-04-27 05:29:59 +00:00
Mark Fisher
9eaa088052
The <endpoint/> element is now <handler-endpoint/>, and its "handler-method" attribute is now "method".
2008-04-27 05:01:38 +00:00
Mark Fisher
412c5b3134
Added namespace support for target-endpoint.
2008-04-27 02:25:53 +00:00
Mark Fisher
64c498838c
GatewayProxyFactoryBean now supports receive-only operations. Also added support for timeouts and type-conversion.
2008-04-25 19:14:14 +00:00
Mark Fisher
24a15520ba
PollingSourceEndpoint now provides initializeTask() for one-time only as well as refreshTask() to reconfigure proxies at runtime.
2008-04-25 15:18:39 +00:00
Mark Fisher
2147ac43ed
Restricting advice to the "run" method of MessagingTask, and added synchronization for proxy initialization.
2008-04-25 12:45:12 +00:00
Mark Fisher
c92b24f959
Added initial implementation of GatewayProxyFactoryBean.
2008-04-24 23:41:52 +00:00
Mark Fisher
cfb0d7e2fd
Added 'taskAdviceChain' and 'dispatchAdviceChain' to PollingSourceEndpoint.
2008-04-24 19:57:27 +00:00
Mark Fisher
467e0f803d
PollingSourceEndpoint delegates to PollingDispatcher. Added sendTimeout to SimpleDispatcher.
2008-04-24 14:25:34 +00:00
Mark Fisher
9c67c1516f
Added more tests for returnAddress and output channel.
2008-04-24 11:36:14 +00:00
Mark Fisher
7d3755c099
Added "returnAddressOverrides" property for endpoints ('return-address-overrides' in XML). The default value is 'false' indicating that any explicitly defined output channel should take precedence.
2008-04-24 03:41:50 +00:00
Mark Fisher
28f914748b
ChannelAdapterParser is now MethodInvokingAdapterParser and only creates the source or target. The result should be configured with a SourceEndpoint or TargetEndpoint.
2008-04-24 00:43:08 +00:00
Mark Fisher
4d19a02f15
Added PollingSourceEndpoint, removed PollingSourceAdapter, and source-adapter parsers only parse the Source itself.
2008-04-23 23:47:02 +00:00
Mark Fisher
9f3bc80949
Factored out the common target endpoint type to enable change to 'target-endpoint' and 'handler-endpoint'.
2008-04-23 14:18:01 +00:00
Mark Fisher
9fd30d1ed4
Moved awareness of SynchronousChannel out of the MessageBus and into the SubscriptionManager.
2008-04-23 13:37:27 +00:00
Mark Fisher
bf0f8b16ec
SimpleChannel is now QueueChannel. Also added RendezvousChannel for the zero-capacity SynchronousQueue-based version.
2008-04-22 20:26:19 +00:00
Mark Fisher
4b01a3a09c
The <endpoint/> element now expects a "handler" attribute instead of "handler-ref".
2008-04-22 18:17:05 +00:00
Mark Fisher
cb3c4fbdc3
Removed support for <handler/> sub-element for <endpoint/> since the 'handler-ref' attribute is sufficient.
2008-04-22 17:44:23 +00:00
Mark Fisher
3d63406053
MessageBus now registers endpoints and source adapters (and starts if its autoStartup property is set to "true") after receiving a ContextRefreshedEvent rather than the excessively eager start during the 'setApplicationContext' callback (INT-196).
2008-04-22 16:56:27 +00:00
Mark Fisher
c9cdff0aee
Added removeAttribute() and removeProperty() methods (INT-203, INT-204).
2008-04-22 13:40:42 +00:00
Mark Fisher
e0563a6173
Checking for null prior to setting the channelRegistry on the endpoint's handler (short term fix for INT-202).
2008-04-21 20:51:38 +00:00
Mark Fisher
d30f3230b0
Simplified Message dispatching. Removed MessageRetriever and MessageDistributor (and the "default" implementations). Added SimpleDispatcher and PollingDispatcher. Added the SubscribableSource interface and a SubscriptionManager to simplify the coordination of dispatchers within the MessageBus. These changes also lay the groundwork for further refactoring of the various Source and SourceAdapter implementations.
2008-04-18 21:26:31 +00:00
Mark Fisher
0bd9ea9255
TargetEndpoint now returns false when one of its MessageSelectors rejects a Message rather than throwing an Exception. Added Source, BlockingSource, and BlockingTarget interfaces. MessageChannel now extends BlockingSource and BlockingTarget.
2008-04-17 21:06:14 +00:00
Mark Fisher
0f6bd60ee0
Added Target interface and split DefaultMessageEndpoint into TargetEndpoint and HandlerEndpoint. All "one-way" adapters now implement Target instead of MessageHandler, the ConcurrentHandler is now ConcurrentTarget, and the MessageDispatcher also operates on Targets rather than MessageHandlers.
2008-04-17 17:25:56 +00:00
Mark Fisher
e9673586c4
On destruction, ConcurrentHandler calls shutdownNow() on its Executor rather than shutdown().
2008-04-16 19:50:32 +00:00
Mark Fisher
a0072b3e66
DefaultMessageEndpoint constructor now requires a MessageHandler. The endpoint no longer invokes Lifecycle methods on the MessageHandler.
2008-04-16 19:14:26 +00:00
Mark Fisher
9710edaa3c
If no ErrorHandler is available, errors will be logged at WARN level (INT-138).
2008-04-16 18:47:12 +00:00
Mark Fisher
7edfc96f5e
MessageHandlingExceptions (other than selector-rejection, handler-not-running, and executor-rejection) are now propagated from DefaultMessageDistributor (INT-184).
2008-04-16 18:07:14 +00:00