INT-2388 Update Gradle build
This is a significant update to the build system, including the changes listed below. README.md has been updated with instructions on the most important day-to-day commands. - Eliminate buildSrc submodule In favor of using the new bundlor and docbook-reference plugins. The net effect is a large reduction in number of lines of build code. Common docbook resources, stylesheets, etc are stored directly in the docbook plugin. This means that --recursive is no longer required when cloning and there will never be a need to use `git submodule` commands. README files have been updated to reflect. Use of the new bundlor plugin also means the removal of template.mf files from the source tree in favor of an inline approach. See build.gradle for details. Bundlor 'import templates' are built up programmatically and kept physically close to gradle dependency declarations, leading to more convenience when changing these values and hopefully fewer errors / version inconsistencies over time. Certain tests depended on the presence of template.mf files, all of which have recently been removed from the source tree in favor of the new bundlor plugin which allows for inlining bundlor configuration within the Gradle build script. These tests now create temp files using the java.io.File API instead. - Upgrade to Gradle 1.0-milestone-6 The m6 release is significantly faster when resolving dependencies and has a number of valuable new features over the earlier m3 version. Review the release notes for Gradle 1.0-milestone-6 online for full details. - Switch to repo.springsource.org repository Previously the project build declared as many repositories as necessary to resolve all project dependencies. Now depending on a single 'virtual repository' defined within the SpringSource Artifactory instance at http://repo.springsource.org. Currently, the virtual repository in use is 'libs-milestone', which allows for the resolution of all "milestone-or-better" versions of all S2 and third-party dependencies. Should snapshot dependencies become required, this value may be changed from 'libs-milestone' to 'libs-snapshot'. To build only against GA releases, change the value to 'libs-release'. - New build plan(s) Spring Integration build plans have been updated to use the Artifactory Bamboo plugin and publish to repo.springsource.org. Build plans have names like 2.1.x to reflect the version under development, not necessarily the name of the branch, as this may change over time and across major releases. - Improve release process As mentioned above, Spring Integration will now use the Artifactory Bamboo plugin to publish releases and also use Artifactory's support for pushing builds directly into Maven Central via oss.sonatype.org. Generate poms that contain all necessary fields for onboarding at Maven central (scm, developers, organization, licenses, etc). Generate -source and -javadoc poms to comply with Maven Central onboarding rules (and for general good practice anyway). Generation of PGP signatures, sha1 and md5 checksums are all handled automatically by Artifactory. These are also requirements for automated entry into Maven Central. - Remove source-level pom generation Automatic generation of Maven poms suitable for use in building Spring Integration is no longer supported. Generation and publication of poms for the purpose of dependency management remains supported. Sonar support has to date depended on these poms, but will be switched over to use the Gradle Sonar plugin shortly. - Eliminate docs subproject Move docs/src to the root of the project and eliminate docs as a formal subproject. This simplifies the build in a number of ways, including removing the need for distinguishing between 'subprojects' and 'javaprojects' as well as allowing users to build both 'api' and 'reference' docs without qualifying with a ':docs' prefix. Also rename the src/info directory to src/dist to better reflect that these files are packaged with the distribution. For example, the readme.txt there is really the distribution readme, distinct from the README.md at the root of the project which is for building from source, etc.
This commit is contained in:
456
src/dist/changelog.txt
vendored
Normal file
456
src/dist/changelog.txt
vendored
Normal file
@@ -0,0 +1,456 @@
|
||||
SPRING INTEGRATION CHANGELOG
|
||||
============================
|
||||
|
||||
For the full detailed changelog, see:
|
||||
https://fisheye.springsource.org/changelog/spring-integration
|
||||
|
||||
|
||||
Changes in version 2.1.0 Release Candidate 2 (Dec 23, 2011)
|
||||
https://jira.springsource.org/secure/ReleaseNote.jspa?projectId=10121&version=12712
|
||||
|
||||
Changes in version 2.1.0 Release Candidate 1 (Nov 23, 2011)
|
||||
https://jira.springsource.org/secure/ReleaseNote.jspa?projectId=10121&version=12341
|
||||
|
||||
Changes in version 2.1.0 Milestone 3 (Oct 26, 2011)
|
||||
https://jira.springsource.org/secure/ReleaseNote.jspa?projectId=10121&version=12640
|
||||
|
||||
Changes in version 2.1.0 Milestone 2 (Oct 12, 2011)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=12200
|
||||
|
||||
Changes in version 2.1.0 Milestone 1 (Sept 2, 2011)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11668
|
||||
|
||||
Changes in version 2.0.5 (July 18, 2011)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=12104
|
||||
|
||||
Changes in version 2.0.4 (May 18, 2011)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11828
|
||||
|
||||
Changes in version 2.0.3 (Feb 09, 2011)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11815
|
||||
|
||||
Changes in version 2.0.2 (Feb 08, 2011)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11787
|
||||
|
||||
Changes in version 2.0.1 (Dec 17, 2010)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11696
|
||||
|
||||
Changes in version 2.0.0 GA (Nov 22, 2010)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11537
|
||||
|
||||
Changes in version 2.0.0 Release Candidate 2 (Nov 13, 2010)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11749
|
||||
|
||||
Changes in version 2.0.0 Release Candidate 1 (Oct 28, 2010)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11656
|
||||
|
||||
Changes in version 2.0.0 Milestone 7 (Sept 03, 2010)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11311
|
||||
|
||||
Changes in version 2.0.0 Milestone 6 (July 28, 2010)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11536
|
||||
|
||||
Changes in version 2.0.0 Milestone 5 (June 25, 2010)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11446
|
||||
|
||||
Changes in version 2.0.0 Milestone 4 (May 8, 2010)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11389
|
||||
|
||||
Changes in version 2.0.0 Milestone 3 (Mar 12, 2010)
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11307
|
||||
|
||||
Changes in version 2.0.0 Milestone 2 (Dec 24, 2009)
|
||||
---------------------------------------------------
|
||||
http://jira.springsource.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11306
|
||||
|
||||
Changes in version 2.0.0 Milestone 1 (Oct 12, 2009)
|
||||
---------------------------------------------------
|
||||
http://jira.springframework.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11178
|
||||
|
||||
Changes in version 1.0.3 (Jul 18, 2009)
|
||||
---------------------------------------
|
||||
http://jira.springframework.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11209
|
||||
|
||||
Changes in version 1.0.2 (Mar 31, 2009)
|
||||
---------------------------------------
|
||||
http://jira.springframework.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11153
|
||||
|
||||
Changes in version 1.0.1 (Dec 17, 2008)
|
||||
---------------------------------------
|
||||
For changes in this release, see:
|
||||
http://jira.springframework.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11146
|
||||
|
||||
|
||||
Changes in version 1.0.0 (Nov 26, 2008)
|
||||
---------------------------------------
|
||||
For changes in this release, see:
|
||||
http://jira.springframework.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=10791
|
||||
|
||||
|
||||
Changes in version 1.0.0.RC2 (Nov 14, 2008)
|
||||
-------------------------------------------
|
||||
For changes in this release, see:
|
||||
http://jira.springframework.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11102
|
||||
|
||||
|
||||
Changes in version 1.0.0.RC1 (Nov 03, 2008)
|
||||
-------------------------------------------
|
||||
For changes in this release, see:
|
||||
http://jira.springframework.org/secure/IssueNavigator.jspa?reset=true&pid=10121&fixfor=11101
|
||||
|
||||
*** GENERAL ***
|
||||
|
||||
Upgraded Spring Framework dependency to 2.5.6
|
||||
Upgraded Spring Security dependency to 2.0.4
|
||||
Broke 'adapter' module into individual JARs
|
||||
Added JMS samples
|
||||
|
||||
*** CORE API ***
|
||||
|
||||
Added Message Filter
|
||||
Added error handling strategy so that ErrorMessage can be routed to an error channel
|
||||
Added support for a 'defaultChannel' property on MessageChannelTemplate
|
||||
Added @Gateway annotation for per-method configuration of request and/or reply channels
|
||||
Simplified GatewayProxyFactoryBean reply Message correlation
|
||||
GatewayProxyFactoryBean now supports non-pollable replyChannel
|
||||
DefaultMethodResolver now correctly resolves annotated method on Proxy
|
||||
Fixed CronTrigger end of month rollover issue
|
||||
Added <interval-trigger/> and <cron-trigger/> elements for pollers
|
||||
Added transaction support for annotation-based polling
|
||||
AbstractPollingEndpoint now supports an Advice chain
|
||||
Fixed endless loop issue in Router (INT-358)
|
||||
MethodInvokingRouter now accepts a target object only (no method name required)
|
||||
MethodInvokingRouter will check for @Router method-level annotation
|
||||
Added 'default-output-channel' attribute to the <router/> element
|
||||
The 'splitter' element does not require a "ref" (for a DefaultSplitter instance)
|
||||
The 'resequencer' element accepts an "input-channel" attribute
|
||||
AbstractMessageBarrierHandler no longer calls processMessages twice
|
||||
The <pool-executor/> element was renamed to <thread-pool-task-executor/>
|
||||
Default TaskExecutor created for MessageBus sets max-size for pool instead of core
|
||||
Endpoints registered after ApplicationContext refresh are still activated
|
||||
MessageBus started/stopped events are fired
|
||||
Removed the MessageBusInterceptor
|
||||
Stopping/destroying context/MessageBus properly stops all Threads
|
||||
MessageHeaders no longer supports clear
|
||||
MessageHeaders constructor copies the original map for immutability
|
||||
|
||||
*** ADAPTERS ***
|
||||
|
||||
Added JMS header enricher
|
||||
Added JmsOutboundGateway and refactored JmsGateway to JmsInboundGateway
|
||||
JMS gateways recognize a payload that is already a Spring Integration Message
|
||||
Added namespace support for JmsOutboundGateway
|
||||
MessageHeader values are propagated when using JMS gateways
|
||||
Enabled configuration of MessageConverter for JmsOutboundGateway
|
||||
FileToStringTransformer is encoding-aware
|
||||
Added inbound Mail Channel Adapters (POP3, IMAP, and IMAP IDLE)
|
||||
Mail outbound-channel-adapter accepts the "channel" attribute
|
||||
Added mail header enricher namespace support
|
||||
Enabled configuration of a WebServiceMessageSender instance for WS outbound gateways
|
||||
WebService gateway supports a Document payload in addition to Source and String
|
||||
RMI and HttpInvoker outbound gateways remove but copy non-serializable Message headers
|
||||
|
||||
*** OTHER ***
|
||||
|
||||
Channel security provides a ChannelInvocation instance
|
||||
Channel security interceptor now extends AbstractSecurityInterceptor
|
||||
XML Document Builders are now Namespace-aware
|
||||
Added XPath Message Selector
|
||||
Added XPath Message Splitter
|
||||
|
||||
|
||||
Changes in version 1.0.0.M6 (Aug 20, 2008)
|
||||
------------------------------------------
|
||||
|
||||
*** CORE API ***
|
||||
|
||||
Refactored Message object to be unmodifiable after initial creation
|
||||
Refactored MessageHeaders object to be an implementation of (unmodifiable) Map<String, Object>
|
||||
Added MessageBuilder for constructing Messages (now used within internal handlers and endpoints)
|
||||
Added Quartz-based MessagingTaskScheduler to support Cron-based polling
|
||||
Reimplemented base Scheduling infrastructure to provide an SPI
|
||||
MessageBus no longer provides an option for auto-creating channels
|
||||
Added HeaderTransformer strategy interface
|
||||
MethodArgumentMessageMapper (f.k.a AnnotationMethodMessageMapper) is used across handler types
|
||||
PublishSubscribeChannels now provide an 'applySequence' property for adding sequence number/size headers
|
||||
SimpleDispatcher no longer attempts retries and does not mask exceptions with rejection limit error
|
||||
Default 'maxMessagesPerPoll' value is now unbounded
|
||||
Aggregator gives precedence to outputChannel and falls back to the returnAddress (consistent with other handlers)
|
||||
Added support for arguments, return-value, and thrown exception payload types for MessagePublishingInterceptor
|
||||
AbstractMessageDispatcher uses a Set (to avoid duplicate subscriptions) instead of a List
|
||||
AbstractMessageBarrierHandler uses returnAddress if outputChannel is null
|
||||
PublisherAnnotationPostProcessor proxies classes if the annotated method is not declared on an interface method
|
||||
Method reference is used for @Subscriber annotation (avoids NoSuchMethodException for method name ambiguity)
|
||||
MethodInvokingSource and MethodInvokingTarget now accept the actual Method reference instead of method name
|
||||
ChannelFactory behavior is now consistent with channels that are defined explicitly (no longer creates proxies)
|
||||
MessageHandlerDecorator (f.k.a. InterceptingMessageHandler) now supports setter injection
|
||||
InboundChannelAdapter (replacement for SourceEndpoint) calls MessageDeliveryAware onSend/onFailure methods
|
||||
|
||||
*** ADAPTERS ***
|
||||
|
||||
Added an FTP Target adapter
|
||||
FileEntryParser can be customized for the FtpSource
|
||||
Added PollingMailSource adapter to support (polled) inbound e-mail messages
|
||||
Added SubscribableMailSource adapter to support (event-driven) inbound e-mail messages
|
||||
JMS header-mapping MessageConverter is no longer nested twice when used for source and target
|
||||
JMS message headers are now propagated (JMS-specific and user-prefixed values)
|
||||
AbstractMailHeaderMapper correctly maps the FROM/REPLY_TO attributes
|
||||
|
||||
*** CONFIGURATION ***
|
||||
|
||||
Channel Adapter now creates a DirectChannel implicitly if no "channel" is configured
|
||||
Added namespace support for WireTap
|
||||
The "max-messages-per-poll" value can be configured on <poller/> elements
|
||||
The <poller/> element now accepts a "cron" attribute (as an alternative to "period") if Quartz support is available
|
||||
The <poller/> element now provides "initial-delay" and "fixed-rate" attributes
|
||||
Added support for hybrid XML and annotations configuration (method-level annotations with XML-based endpoint)
|
||||
Added namespace support for configuring the MessageBus' TaskScheduler
|
||||
The "error-handler" attribute is available for XML-based Message Endpoint configuration
|
||||
The "errorChannel" bean is detected within the Application Context rather than being configured on the MessageBus
|
||||
The "channelFactory" bean is detected within the Application Context rather than being configured on the MessageBus
|
||||
Exposed configuration of concurrent-consumers for the JmsGateway
|
||||
The @HeaderProperty and @HeaderAttribute annotations have been replaced with @Header
|
||||
Splitter endpoint's 'output-channel' is now configured correctly when using annotations
|
||||
|
||||
*** WEB SERVICES AND XML ***
|
||||
|
||||
Added XPathRouter
|
||||
DOMResultFactory now creates a DOMResult with a node for OXM Marshaller
|
||||
|
||||
*** GENERAL ***
|
||||
|
||||
Upgraded to Spring 2.5.5.A
|
||||
Upgraded to Spring Security 2.0.2.A
|
||||
Upgraded to Spring WS 1.5.4.A
|
||||
|
||||
|
||||
Changes in version 1.0.0.M5 (Jul 08, 2008)
|
||||
------------------------------------------
|
||||
|
||||
*** CORE API ***
|
||||
|
||||
SimpleMessagingTaskScheduler now has a configurable shutdown (for 'shutdown' vs 'shutdownNow')
|
||||
QueueChannel uses TRACE logging for preReceive and only uses DEBUG in postReceive if the Message is not null
|
||||
Added <concurrency-interceptor> for endpoints
|
||||
Added <transaction-interceptor> for endpoints
|
||||
The MessageBus tries to register new channels before starting (on ContextRefreshedEvent)
|
||||
Aggregator now uses its endpoint's output-channel
|
||||
Added MessageTransformer and @Transformer support
|
||||
Added a MessageTransformingChannelInterceptor
|
||||
MessageBus is now an interface
|
||||
MessageHeader is now an interface
|
||||
Added ChannelFactory
|
||||
Added PublishSubscribeChannel and <publish-subscribe-channel/>
|
||||
Channels specified in source-endpoint (now channel-adapter) are now auto-created
|
||||
Added EndpointTrigger for invoking endpoints with a poll command
|
||||
Removed the DispatcherPolicy from channel configuration
|
||||
Added BroadcastingDispatcher
|
||||
|
||||
*** ADAPTERS ***
|
||||
|
||||
Added regular expression pattern FilenameFilter implementation
|
||||
The <file-source/> now accepts one of "file-filter", "filename-filter", or "filename-pattern"
|
||||
FileSource now uses a Resource to locate its directory
|
||||
FtpSource closes the connection after poll
|
||||
WebServiceHandler namespace support includes 'message-factory' and 'fault-message-resolver'
|
||||
WebServiceHandler namespace supports injection of the WebServiceMessageCallback
|
||||
Refactored FtpSource and FileSource to be better aligned
|
||||
AggregatorBarrier correctly stops processing messages after completion
|
||||
|
||||
*** CONFIGURATION ***
|
||||
|
||||
Method-level @Handler can now be used without class-level @MessageEndpoint
|
||||
The <channel-adapter/> with "ref" and "source" attributes replaces <source-endpoint/>
|
||||
The <channel-adapter/> with "ref" and "target" attributes replaces <target-endpoint/>
|
||||
The <channel-adapter/> accepts a "method" replacing <source-adapter/> and <target-adapter/>
|
||||
The <router/> element is now a self-sufficient endpoint (rather than just creating a handler)
|
||||
The <splitter/> element is now a self-sufficient endpoint (rather than just creating a handler)
|
||||
The <aggregator/> element is now a self-sufficient endpoint (rather than just creating a handler)
|
||||
Added namespace support for creating a MessageSelectorChain
|
||||
|
||||
*** WEB SERVICES AND XML ***
|
||||
|
||||
Added XML module
|
||||
Added XSLT Transformer
|
||||
Add Spring OXM transformer
|
||||
Add XML Result transformer to convert from a Result to a Document
|
||||
|
||||
*** SECURITY ***
|
||||
|
||||
Added support for Spring Security on MessageChannels
|
||||
Added support for Spring Security on endpoints
|
||||
|
||||
*** GENERAL ***
|
||||
|
||||
More Exceptions now provide the 'failedMessage'
|
||||
Added a MessageRejectedException. It is thrown when a MessageSelector rejects a Message
|
||||
|
||||
|
||||
Changes in version 1.0.0.M4 (May 23, 2008)
|
||||
------------------------------------------
|
||||
|
||||
*** CORE API ***
|
||||
|
||||
Improved consistency of 'endpoint' with SourceEndpoint, TargetEndpoint, and HandlerEndpoint implementations
|
||||
SourceEndpoint replaces PollingSourceAdapter and also provides better separation from the actual Source
|
||||
ReplyCorrelator is now encapsulated within RequestReplyTemplate
|
||||
Added MessagingGatewaySupport, SimpleMessagingGateway, and GatewayProxyFactoryBean for Request-Reply operations
|
||||
Renamed SynchronousChannel to DirectChannel, also factored out ThreadLocalChannel
|
||||
@Splitter-annotated methods now attempt to convert the Message payload (consistent with @Handler)
|
||||
Added support for parameter-binding with @HeaderAttribute and @HeaderProperty annotations
|
||||
Handler methods configured with namespace support now accept a Message payload
|
||||
Implemented a MessageSelectorChain (consistent with MessageHandlerChain)
|
||||
Added @CompletionStrategy annotation and CompletionStrategyAdapter for aggregators
|
||||
The sequence number and sequence size are propagated correctly for POJO-based handler methods.
|
||||
Source implementations may be connected to a DirectChannel
|
||||
The ErrorHandler is now provided to ConcurrentTargets
|
||||
Implemented RootCauseErrorMessageRouter
|
||||
Added removeAttribute() and removeProperty() methods to MessageHeader
|
||||
When passing to a handling method, primitive arrays are no longer cast to Object[]
|
||||
Failed Messages (when available) are now propagated within MessageHandlingException and MessageDeliveryException
|
||||
Provided configurable property for registering an asynchronous TaskExecutor for the ApplicationEventMulticaster
|
||||
|
||||
*** ADAPTERS ***
|
||||
|
||||
Provided namespace support for configuring the MessageHeaderMapper for JMS sources and targets
|
||||
FileNameGenerator is now configurable for a FileTarget
|
||||
File-Message mapping now supports text, binary, and File object
|
||||
Mapping to JMS properties from the MessageHeader no longer fails on JMSException
|
||||
|
||||
*** CONFIGURATION ***
|
||||
|
||||
Added namespace support for the <gateway/> element
|
||||
Added namespace support for the <splitter/> element
|
||||
Added namespace support for the <router/> element
|
||||
Added namespace support for different channel types (queue, priority, rendezvous, direct, thread-local)
|
||||
Defined ChannelFactory strategy for the plain <channel/> elements and for the MessageBus 'auto-create' mode
|
||||
Added namespace support for <console-source/> and <console-target/> elements
|
||||
The <source-adapter/> element now produces a MethodInvokingSource
|
||||
The <target-adapter/> element now produces a MethodInvokingTarget
|
||||
Added annotation support for scheduling metadata on a message endpoint
|
||||
@Splitter no longer accepts a "channel" attribute (now uses endpoint's output-channel)
|
||||
A @MessageEndpoint annotated class now requires the presence of a handler method
|
||||
The endpoint's <selector/> sub-element has been replaced by the "selector" attribute
|
||||
The endpoint's <concurrency/> and <schedule/> elements can now occur in any order
|
||||
Fixed timing issue between <annotation-driven/> and <message-bus/> in a ClasspathXmlApplicationContext
|
||||
|
||||
*** GENERAL ***
|
||||
|
||||
Now using the SpringSource Enterprise Bundle Repository for dependencies
|
||||
Updated MANIFEST.MF files for imports, exports, and bundle metadata
|
||||
Adjusted ivy configuration for provided and runtime dependency scopes
|
||||
Moved spring.schemas and spring.handlers files to src/main/resources
|
||||
Refactored the core's org.springframework.integration.adapter package contents into other packages
|
||||
Added several diagrams to the Reference Documentation's "overview" section
|
||||
Upgraded to Spring 2.5.4.A and Spring-WS 1.5.1.A
|
||||
|
||||
|
||||
Changes in version 1.0.0.M3 (Apr 07, 2008)
|
||||
------------------------------------------
|
||||
|
||||
*** CORE API ***
|
||||
|
||||
Handler method invocation now uses Spring's default type-conversion strategies
|
||||
Message priorities are now defined in the MessagePriority enum
|
||||
Added ResponseCorrelator for polling a reply channel with a correlationId
|
||||
Added SynchronousChannel that invokes handlers on the sender's thread
|
||||
or receives from a PollableSource on the receiver's thread
|
||||
Implemented the WireTap pattern with a ChannelInterceptor that publishes to a secondary channel
|
||||
Calling setErrorChannel on MessageBus no longer throws NullPointerException upon activation
|
||||
ChannelPurger now accepts multiple MessageChannels (as varargs) in its constructors
|
||||
RouterMessageHandlerAdapter now sets the ChannelRegistry on its target Object if it is ChannelRegistryAware
|
||||
DefaultMessageEndpoint now sets the ChannelRegistry on any ChannelRegistryAware handler
|
||||
MessageEndpointAnnotationPostProcessor now sets the ChannelRegistry for any annotated ChannelRegistryAware Object
|
||||
|
||||
*** ADAPTERS ***
|
||||
|
||||
Added FtpSourceAdapter
|
||||
Added HttpInvokerSourceAdapter
|
||||
Added HttpInvokerTargetAdapter
|
||||
Added RmiSourceAdapter
|
||||
Added RmiTargetAdapter
|
||||
Added SimpleWebServiceTargetAdapter
|
||||
Added MarshallingWebServiceTargetAdapter
|
||||
Added a DefaultMailHeaderGenerator and defined constants in MailAttributeKeys
|
||||
CharacterStreamSourceAdapter now requires a Reader (not InputStream)
|
||||
CharacterStreamTargetAdapter now requires a Writer (not OutputStream)
|
||||
The stdoutAdapter and stderrAdapter factory methods now accept a 'charsetName'
|
||||
JMS source adapters now copy properties from the received JMS Message header
|
||||
JMS source and target adapter parsers now consider "connectionFactory" as the default bean-name reference
|
||||
|
||||
*** CONFIGURATION ***
|
||||
|
||||
Added namespace support for PriorityChannel with the <priority-channel/> element
|
||||
Added @Concurrency annotation for configuring a @MessageEndpoint's ConcurrencyPolicy
|
||||
Added @Aggregator annotation for specifying aggregating handler methods
|
||||
Added <aggregator/> element for defining an aggregating handler in XML
|
||||
Annotation-based BeanPostProcessors now handle proxies correctly
|
||||
Annotation-based BeanPostProcessors now recognize inherited class-level annotations
|
||||
even if they are not explicitly @Inherited and even if they are on an interface
|
||||
Added support for <rmi-source/> and <rmi-target/> elements
|
||||
Added support for <httpinvoker-source/> and <httpinvoker-target/> elements
|
||||
Added support for the <ftp-source/> element
|
||||
Added support for the <ws-target/> element
|
||||
Added support for the <mail-target/> element
|
||||
|
||||
*** GENERAL ***
|
||||
|
||||
The Spring Web Services support is included in a new 'spring-integration-ws' module
|
||||
Updated manifest properties for OSGi-compliance in "core" and "adapters"
|
||||
Added manifest properties for OSGi-compliance for "ws" and "samples"
|
||||
Added "Bundle-Name" to each manifest file
|
||||
|
||||
|
||||
Changes in version 1.0.0.m2 (Feb 28, 2008)
|
||||
------------------------------------------
|
||||
|
||||
*** CORE API ***
|
||||
|
||||
Defined the ChannelInterceptor strategy interface
|
||||
Implemented new priority-based MessageChannel (PriorityChannel)
|
||||
Created a MessageSelectingInterceptor, a ChannelInterceptor that delegates to a MessageSelector
|
||||
Added clear and purge methods to MessageChannel (purge accepts a MessageSelector)
|
||||
Implemented a ChannelPurger that delegates to one or more MessageSelectors
|
||||
ChannelRegistry now provides 'unregister' method for runtime removal of channels
|
||||
Added RequestReplyTemplate for synchronous, blocking request/reply behavior over an asynchronous channel
|
||||
Added isExpired() method to Message
|
||||
Added a constructor to GenericMessage that copies MessageHeader properties and attributes
|
||||
Using the header-copying constructor in MessageHandler adapters to preserve header information
|
||||
Undeliverable replies from endpoint are passed to its ErrorHandler
|
||||
ErrorHandler is now a configurable strategy for MessageEndpoints
|
||||
ReplyHandler is now a configurable strategy for MessageEndpoints
|
||||
Subscription is now immutable
|
||||
Errors in ConcurrentHandler are now always logged at DEBUG level, and at WARN level if no 'errorHandler' is available
|
||||
Endpoints now set the 'correlationId' on reply Messages
|
||||
Defined Aggregator and CompletionStrategy and implemented an AggregatingMessageHandler
|
||||
SplitterMessageHandlerAdapter now sets sequenceNumber and sequenceSize header properties automatically
|
||||
Added 'sendTimeout' property to SplitterMessageHandlerAdapter
|
||||
|
||||
*** ADAPTERS ***
|
||||
|
||||
Added Mail target adapter
|
||||
Acknowledge modes are now configurable for JmsMessageDrivenSourceAdapter
|
||||
JMS attributes are now set from the MessageHeader prior to sending via JmsTargetAdapter
|
||||
The <jms-source/> element now accepts a 'message-converter' attribute
|
||||
|
||||
*** CONFIGURATION ***
|
||||
|
||||
Added <interceptor/> sub-element for <channel/>
|
||||
Added <selector/> sub-element for <endpoint/>
|
||||
Added <handler-chain> element that accepts <handler/> sub-elements for creating a MessageHandlerChain
|
||||
Added <aggregator/> element to the namespace for creating AggregatingMessageHandlers
|
||||
Added "dataype" attribute to the <channel/> element for message payload datatype enforcement
|
||||
Added 'initialDelay' and 'fixedRate' attributes to the @Polled annotation
|
||||
Added 'destination-name' attribute for JmsTargetAdapter
|
||||
Added 'autoStartup' property to MessageBus (and corresponding XML attribute) with a default value of 'true'
|
||||
Added 'defaultConcurrencyPolicy' property to MessageBus (and corresponding XML sub-element)
|
||||
Defined default error channel key as "errorChannel" (also added ERROR_CHANNEL_NAME constant in MessageBus)
|
||||
|
||||
*** GENERAL ***
|
||||
|
||||
Separated "spring-integration-core" from "spring-integration-adapters"
|
||||
Added manifest properties for OSGi-compliance
|
||||
Refactored package structure to remove all cycles
|
||||
Using java.util.UUID for default ID generation strategy
|
||||
Increased DEBUG logging throughout, especially for channel and endpoint
|
||||
Components delegating to (Scheduled)ExecutorService are now configurable through standard injection
|
||||
201
src/dist/license.txt
vendored
Normal file
201
src/dist/license.txt
vendored
Normal file
@@ -0,0 +1,201 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
21
src/dist/notice.txt
vendored
Normal file
21
src/dist/notice.txt
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
========================================================================
|
||||
== NOTICE file corresponding to section 4 d of the Apache License, ==
|
||||
== Version 2.0, in this case for the Spring Integration distribution. ==
|
||||
========================================================================
|
||||
|
||||
This product includes software developed by
|
||||
the Apache Software Foundation (http://www.apache.org).
|
||||
|
||||
The end-user documentation included with a redistribution, if any,
|
||||
must include the following acknowledgement:
|
||||
|
||||
"This product includes software developed by the Spring Framework
|
||||
Project (http://www.springframework.org)."
|
||||
|
||||
Alternatively, this acknowledgement may appear in the software itself,
|
||||
if and wherever such third-party acknowledgements normally appear.
|
||||
|
||||
The names "Spring", "Spring Framework", and "Spring Integration" must
|
||||
not be used to endorse or promote products derived from this software
|
||||
without prior written permission. For written permission, please contact
|
||||
enquiries@springsource.com.
|
||||
13
src/dist/readme.txt
vendored
Normal file
13
src/dist/readme.txt
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
SPRING INTEGRATION 2.1.0 Release Candidate 2
|
||||
-----------------------------------------------------------
|
||||
|
||||
To find out what has changed since any earlier releases, see 'changelog.txt'.
|
||||
|
||||
Please consult the documentation located within the 'docs/reference' directory
|
||||
of this release and also visit the official Spring Integration home at
|
||||
http://www.springsource.org/spring-integration
|
||||
|
||||
There you will find links to the forum, issue tracker, and several other resources.
|
||||
|
||||
See https://github.com/SpringSource/spring-integration#readme for additional
|
||||
information including instructions on building from source.
|
||||
Reference in New Issue
Block a user