Commit Graph

248 Commits

Author SHA1 Message Date
Artem Bilan
aa2334928e URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# HTTP URLs that Could Not Be Fixed
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.

* [ ] http://docs.groovy-lang.org/latest/html/documentation/index.html (200) with 2 occurrences could not be migrated:
   ([https](https://docs.groovy-lang.org/latest/html/documentation/index.html) result SSLProtocolException).
* [ ] http://jibx.sourceforge.net/ (200) with 1 occurrences could not be migrated:
   ([https](https://jibx.sourceforge.net/) result AnnotatedConnectException).
* [ ] http://www.castor.org/ (200) with 1 occurrences could not be migrated:
   ([https](https://www.castor.org/) result AnnotatedConnectException).
* [ ] http://www.groovy-lang.org/ (200) with 2 occurrences could not be migrated:
   ([https](https://www.groovy-lang.org/) result SSLProtocolException).
* [ ] http://www.jcraft.com/jsch/ (200) with 2 occurrences could not be migrated:
   ([https](https://www.jcraft.com/jsch/) result AnnotatedConnectException).
* [ ] http://foo.com (301) with 7 occurrences could not be migrated:
   ([https](https://foo.com) result SSLHandshakeException).
* [ ] http://oexchange.org/spec/0.8/rel/related-target (301) with 1 occurrences could not be migrated:
   ([https](https://oexchange.org/spec/0.8/rel/related-target) result SSLHandshakeException).

# Fixed URLs

## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.

* [ ] http://status.twitter.com (301) with 1 occurrences migrated to:
  https://status.twitterstat.us/ ([https](https://status.twitter.com) result SSLProtocolException).
* [ ] http://jruby.org/ (301) with 1 occurrences migrated to:
  https://www.jruby.org ([https](https://jruby.org/) result SSLHandshakeException).
* [ ] http://site1.com (ConnectTimeoutException) with 1 occurrences migrated to:
  https://site1.com ([https](https://site1.com) result ConnectTimeoutException).
* [ ] http://a0.twimg.com/a/1295478501/images/fronts/logo_withbird_home.png (UnknownHostException) with 1 occurrences migrated to:
  https://a0.twimg.com/a/1295478501/images/fronts/logo_withbird_home.png ([https](https://a0.twimg.com/a/1295478501/images/fronts/logo_withbird_home.png) result UnknownHostException).
* [ ] http://a0.twimg.com/a/1295478501/images/whatsnew/video-sample-ss.png (UnknownHostException) with 1 occurrences migrated to:
  https://a0.twimg.com/a/1295478501/images/whatsnew/video-sample-ss.png ([https](https://a0.twimg.com/a/1295478501/images/whatsnew/video-sample-ss.png) result UnknownHostException).
* [ ] http://a0.twimg.com/a/1295478501/javascripts/widgets/widget.js?1295482593 (UnknownHostException) with 1 occurrences migrated to:
  https://a0.twimg.com/a/1295478501/javascripts/widgets/widget.js?1295482593 ([https](https://a0.twimg.com/a/1295478501/javascripts/widgets/widget.js?1295482593) result UnknownHostException).
* [ ] http://a0.twimg.com/profile_images/1129952837/chelsea_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a0.twimg.com/profile_images/1129952837/chelsea_normal.jpg ([https](https://a0.twimg.com/profile_images/1129952837/chelsea_normal.jpg) result UnknownHostException).
* [ ] http://a0.twimg.com/profile_images/1147019935/evedit0xr_2_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a0.twimg.com/profile_images/1147019935/evedit0xr_2_normal.jpg ([https](https://a0.twimg.com/profile_images/1147019935/evedit0xr_2_normal.jpg) result UnknownHostException).
* [ ] http://a0.twimg.com/profile_images/1147750206/avatar03_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a0.twimg.com/profile_images/1147750206/avatar03_normal.jpg ([https](https://a0.twimg.com/profile_images/1147750206/avatar03_normal.jpg) result UnknownHostException).
* [ ] http://a0.twimg.com/profile_images/1193341281/BOF-Logo-Favicon-Twitter_normal.png (UnknownHostException) with 2 occurrences migrated to:
  https://a0.twimg.com/profile_images/1193341281/BOF-Logo-Favicon-Twitter_normal.png ([https](https://a0.twimg.com/profile_images/1193341281/BOF-Logo-Favicon-Twitter_normal.png) result UnknownHostException).
* [ ] http://a0.twimg.com/profile_images/1218603158/photo-1_normal.jpeg (UnknownHostException) with 2 occurrences migrated to:
  https://a0.twimg.com/profile_images/1218603158/photo-1_normal.jpeg ([https](https://a0.twimg.com/profile_images/1218603158/photo-1_normal.jpeg) result UnknownHostException).
* [ ] http://a0.twimg.com/profile_images/52396555/logo_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a0.twimg.com/profile_images/52396555/logo_normal.jpg ([https](https://a0.twimg.com/profile_images/52396555/logo_normal.jpg) result UnknownHostException).
* [ ] http://a0.twimg.com/profile_images/66982165/Cory_Booker_Twitter_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a0.twimg.com/profile_images/66982165/Cory_Booker_Twitter_normal.jpg ([https](https://a0.twimg.com/profile_images/66982165/Cory_Booker_Twitter_normal.jpg) result UnknownHostException).
* [ ] http://a1.twimg.com/a/1295478501/images/favicon.ico (UnknownHostException) with 1 occurrences migrated to:
  https://a1.twimg.com/a/1295478501/images/favicon.ico ([https](https://a1.twimg.com/a/1295478501/images/favicon.ico) result UnknownHostException).
* [ ] http://a1.twimg.com/a/1295478501/images/twitter_57.png (UnknownHostException) with 1 occurrences migrated to:
  https://a1.twimg.com/a/1295478501/images/twitter_57.png ([https](https://a1.twimg.com/a/1295478501/images/twitter_57.png) result UnknownHostException).
* [ ] http://a1.twimg.com/a/1295478501/stylesheets/fronts.css?1295482593 (UnknownHostException) with 1 occurrences migrated to:
  https://a1.twimg.com/a/1295478501/stylesheets/fronts.css?1295482593 ([https](https://a1.twimg.com/a/1295478501/stylesheets/fronts.css?1295482593) result UnknownHostException).
* [ ] http://a1.twimg.com/profile_images/421377161/azizlittletwitter_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a1.twimg.com/profile_images/421377161/azizlittletwitter_normal.jpg ([https](https://a1.twimg.com/profile_images/421377161/azizlittletwitter_normal.jpg) result UnknownHostException).
* [ ] http://a1.twimg.com/profile_images/557774500/IMG_1731_normal.JPG (UnknownHostException) with 2 occurrences migrated to:
  https://a1.twimg.com/profile_images/557774500/IMG_1731_normal.JPG ([https](https://a1.twimg.com/profile_images/557774500/IMG_1731_normal.JPG) result UnknownHostException).
* [ ] http://a2.twimg.com/a/1295478501/javascripts/fronts.js (UnknownHostException) with 1 occurrences migrated to:
  https://a2.twimg.com/a/1295478501/javascripts/fronts.js ([https](https://a2.twimg.com/a/1295478501/javascripts/fronts.js) result UnknownHostException).
* [ ] http://a2.twimg.com/profile_images/1164188883/support_normal.png (UnknownHostException) with 2 occurrences migrated to:
  https://a2.twimg.com/profile_images/1164188883/support_normal.png ([https](https://a2.twimg.com/profile_images/1164188883/support_normal.png) result UnknownHostException).
* [ ] http://a2.twimg.com/profile_images/1216137252/image_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a2.twimg.com/profile_images/1216137252/image_normal.jpg ([https](https://a2.twimg.com/profile_images/1216137252/image_normal.jpg) result UnknownHostException).
* [ ] http://a2.twimg.com/profile_images/276864980/Greene_blk_hat_wynn_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a2.twimg.com/profile_images/276864980/Greene_blk_hat_wynn_normal.jpg ([https](https://a2.twimg.com/profile_images/276864980/Greene_blk_hat_wynn_normal.jpg) result UnknownHostException).
* [ ] http://a2.twimg.com/profile_images/57465005/twitter_avatar.nyt_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a2.twimg.com/profile_images/57465005/twitter_avatar.nyt_normal.jpg ([https](https://a2.twimg.com/profile_images/57465005/twitter_avatar.nyt_normal.jpg) result UnknownHostException).
* [ ] http://a2.twimg.com/profile_images/76339565/DA_Twitter_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a2.twimg.com/profile_images/76339565/DA_Twitter_normal.jpg ([https](https://a2.twimg.com/profile_images/76339565/DA_Twitter_normal.jpg) result UnknownHostException).
* [ ] http://a3.twimg.com/profile_images/111107619/tweet-2_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a3.twimg.com/profile_images/111107619/tweet-2_normal.jpg ([https](https://a3.twimg.com/profile_images/111107619/tweet-2_normal.jpg) result UnknownHostException).
* [ ] http://a3.twimg.com/profile_images/1220597165/nate_robinson_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a3.twimg.com/profile_images/1220597165/nate_robinson_normal.jpg ([https](https://a3.twimg.com/profile_images/1220597165/nate_robinson_normal.jpg) result UnknownHostException).
* [ ] http://a3.twimg.com/profile_images/323584581/Bolt_Bus_Photo_FINAL_-_01___2__normal.JPG (UnknownHostException) with 2 occurrences migrated to:
  https://a3.twimg.com/profile_images/323584581/Bolt_Bus_Photo_FINAL_-_01___2__normal.JPG ([https](https://a3.twimg.com/profile_images/323584581/Bolt_Bus_Photo_FINAL_-_01___2__normal.JPG) result UnknownHostException).
* [ ] http://a3.twimg.com/profile_images/68908343/Gold_Box_plain_normal.PNG (UnknownHostException) with 2 occurrences migrated to:
  https://a3.twimg.com/profile_images/68908343/Gold_Box_plain_normal.PNG ([https](https://a3.twimg.com/profile_images/68908343/Gold_Box_plain_normal.PNG) result UnknownHostException).
* [ ] http://a3.twimg.com/profile_images/75078767/AR_73x73_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a3.twimg.com/profile_images/75078767/AR_73x73_normal.jpg ([https](https://a3.twimg.com/profile_images/75078767/AR_73x73_normal.jpg) result UnknownHostException).
* [ ] http://a3.twimg.com/profile_images/856198179/alg_kyle_wilson_normal.jpg (UnknownHostException) with 2 occurrences migrated to:
  https://a3.twimg.com/profile_images/856198179/alg_kyle_wilson_normal.jpg ([https](https://a3.twimg.com/profile_images/856198179/alg_kyle_wilson_normal.jpg) result UnknownHostException).
* [ ] http://domain1.com (UnknownHostException) with 1 occurrences migrated to:
  https://domain1.com ([https](https://domain1.com) result UnknownHostException).
* [ ] http://domain2.com (UnknownHostException) with 1 occurrences migrated to:
  https://domain2.com ([https](https://domain2.com) result UnknownHostException).
* [ ] http://foo.bar.com (UnknownHostException) with 3 occurrences migrated to:
  https://foo.bar.com ([https](https://foo.bar.com) result UnknownHostException).
* [ ] http://foo.host/ (UnknownHostException) with 1 occurrences migrated to:
  https://foo.host/ ([https](https://foo.host/) result UnknownHostException).
* [ ] http://git.springsource.org/spring-integration (UnknownHostException) with 1 occurrences migrated to:
  https://git.springsource.org/spring-integration ([https](https://git.springsource.org/spring-integration) result UnknownHostException).
* [ ] http://groovy.codehaus.org/ (UnknownHostException) with 1 occurrences migrated to:
  https://groovy.codehaus.org/ ([https](https://groovy.codehaus.org/) result UnknownHostException).
* [ ] http://groovy.jmiguel.eu/groovy.codehaus.org/Advanced+compiler+configuration.html (UnknownHostException) with 1 occurrences migrated to:
  https://groovy.jmiguel.eu/groovy.codehaus.org/Advanced+compiler+configuration.html ([https](https://groovy.jmiguel.eu/groovy.codehaus.org/Advanced+compiler+configuration.html) result UnknownHostException).
* [ ] http://jaxen.codehaus.org/faq.html (UnknownHostException) with 1 occurrences migrated to:
  https://jaxen.codehaus.org/faq.html ([https](https://jaxen.codehaus.org/faq.html) result UnknownHostException).
* [ ] http://local.yahooapis.com/trafficData?appid=YdnDemo&zip= (UnknownHostException) with 1 occurrences migrated to:
  https://local.yahooapis.com/trafficData?appid=YdnDemo&zip= ([https](https://local.yahooapis.com/trafficData?appid=YdnDemo&zip=) result UnknownHostException).
* [ ] http://my.RabbitMQ.com/api/ (UnknownHostException) with 1 occurrences migrated to:
  https://my.RabbitMQ.com/api/ ([https](https://my.RabbitMQ.com/api/) result UnknownHostException).
* [ ] http://my.RabbitMQ.com/api/queues/%2f/si.test.queue?foo (UnknownHostException) with 1 occurrences migrated to:
  https://my.RabbitMQ.com/api/queues/%2f/si.test.queue?foo ([https](https://my.RabbitMQ.com/api/queues/%2f/si.test.queue?foo) result UnknownHostException).
* [ ] http://docs.spring.io/spring-amqp/reference/html/%5Freference.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-amqp/reference/html/%255Freference.html ([https](https://docs.spring.io/spring-amqp/reference/html/%5Freference.html) result 404).
* [ ] http://docs.spring.io/spring-amqp/reference/html/_reference.html (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring-amqp/reference/html/_reference.html ([https](https://docs.spring.io/spring-amqp/reference/html/_reference.html) result 404).
* [ ] http://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/beans.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/beans.html ([https](https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/beans.html) result 404).
* [ ] http://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/expressions.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/expressions.html ([https](https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/expressions.html) result 404).
* [ ] http://static.springsource.org/spring-framework/docs/current/spring-framework-reference/html/expressions.html (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/expressions.html ([https](https://static.springsource.org/spring-framework/docs/current/spring-framework-reference/html/expressions.html) result 404).
* [ ] http://docs.spring.io/spring-framework/docs/current/spring-framework-reference/htmlsingle/ (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/htmlsingle/ ([https](https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/htmlsingle/) result 404).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/Message.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/Message.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/Message.html) result 404).
* [ ] http://docs.spring.io/spring-integration/docs/latest-ga/api/org/springframework/integration/store/MetadataStore.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/docs/latest-ga/api/org/springframework/integration/store/MetadataStore.html ([https](https://docs.spring.io/spring-integration/docs/latest-ga/api/org/springframework/integration/store/MetadataStore.html) result 404).
* [ ] http://docs.spring.io/spring-security/site/docs/current/reference/html/concurrency.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-security/site/docs/current/reference/html/concurrency.html ([https](https://docs.spring.io/spring-security/site/docs/current/reference/html/concurrency.html) result 404).
* [ ] http://docs.spring.io/spring-ws/docs/current/reference/html/client.html (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring-ws/docs/current/reference/html/client.html ([https](https://docs.spring.io/spring-ws/docs/current/reference/html/client.html) result 404).
* [ ] http://docs.spring.io/spring-ws/docs/current/reference/html/common.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-ws/docs/current/reference/html/common.html ([https](https://docs.spring.io/spring-ws/docs/current/reference/html/common.html) result 404).
* [ ] http://docs.spring.io/spring-ws/docs/current/reference/html/server.html (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring-ws/docs/current/reference/html/server.html ([https](https://docs.spring.io/spring-ws/docs/current/reference/html/server.html) result 404).
* [ ] http://git-scm.com/,Git (301) with 1 occurrences migrated to:
  https://git-scm.com/,Git ([https](https://git-scm.com/,Git) result 404).
* [ ] http://jcp.org/aboutJava/communityprocess/pr/jsr223/ (302) with 1 occurrences migrated to:
  https://jcp.org/aboutJava/communityprocess/pr/jsr223/ ([https](https://jcp.org/aboutJava/communityprocess/pr/jsr223/) result 404).
* [ ] http://www.example.org/prodcuts (404) with 2 occurrences migrated to:
  https://www.example.org/prodcuts ([https](https://www.example.org/prodcuts) result 404).
* [ ] http://www.example.org/validationTestsSchema (404) with 4 occurrences migrated to:
  https://www.example.org/validationTestsSchema ([https](https://www.example.org/validationTestsSchema) result 404).
* [ ] http://www.springframework.org/schema/integration/webflux/spring-integration-webflux.xsd (404) with 2 occurrences migrated to:
  https://www.springframework.org/schema/integration/webflux/spring-integration-webflux.xsd ([https](https://www.springframework.org/schema/integration/webflux/spring-integration-webflux.xsd) result 404).
* [ ] http://search.twitter.com/search (410) with 1 occurrences migrated to:
  https://search.twitter.com/search ([https](https://search.twitter.com/search) result 410).

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://activemq.apache.org/ with 1 occurrences migrated to:
  https://activemq.apache.org/ ([https](https://activemq.apache.org/) result 200).
* [ ] http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js with 1 occurrences migrated to:
  https://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js ([https](https://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js) result 200).
* [ ] http://blog.twitter.com with 1 occurrences migrated to:
  https://blog.twitter.com ([https](https://blog.twitter.com) result 200).
* [ ] http://dev.mysql.com/doc/refman/5.6/en/fractional-seconds.html with 1 occurrences migrated to:
  https://dev.mysql.com/doc/refman/5.6/en/fractional-seconds.html ([https](https://dev.mysql.com/doc/refman/5.6/en/fractional-seconds.html) result 200).
* [ ] http://docs.oracle.com/javaee/6/api/javax/jms/Message.html with 1 occurrences migrated to:
  https://docs.oracle.com/javaee/6/api/javax/jms/Message.html ([https](https://docs.oracle.com/javaee/6/api/javax/jms/Message.html) result 200).
* [ ] http://docs.oracle.com/javaee/6/api/javax/jms/TemporaryQueue.html with 1 occurrences migrated to:
  https://docs.oracle.com/javaee/6/api/javax/jms/TemporaryQueue.html ([https](https://docs.oracle.com/javaee/6/api/javax/jms/TemporaryQueue.html) result 200).
* [ ] http://docs.oracle.com/javase/6/docs/api/javax/xml/transform/Result.html with 3 occurrences migrated to:
  https://docs.oracle.com/javase/6/docs/api/javax/xml/transform/Result.html ([https](https://docs.oracle.com/javase/6/docs/api/javax/xml/transform/Result.html) result 200).
* [ ] http://docs.oracle.com/javase/6/docs/api/javax/xml/transform/Source.html with 1 occurrences migrated to:
  https://docs.oracle.com/javase/6/docs/api/javax/xml/transform/Source.html ([https](https://docs.oracle.com/javase/6/docs/api/javax/xml/transform/Source.html) result 200).
* [ ] http://docs.oracle.com/javase/6/docs/api/javax/xml/transform/Templates.html with 2 occurrences migrated to:
  https://docs.oracle.com/javase/6/docs/api/javax/xml/transform/Templates.html ([https](https://docs.oracle.com/javase/6/docs/api/javax/xml/transform/Templates.html) result 200).
* [ ] http://docs.oracle.com/javase/6/docs/api/org/w3c/dom/Document.html with 2 occurrences migrated to:
  https://docs.oracle.com/javase/6/docs/api/org/w3c/dom/Document.html ([https](https://docs.oracle.com/javase/6/docs/api/org/w3c/dom/Document.html) result 200).
* [ ] http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html with 3 occurrences migrated to:
  https://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html ([https](https://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html) result 200).
* [ ] http://docs.oracle.com/javase/7/docs/api/javax/xml/transform/Transformer.html with 1 occurrences migrated to:
  https://docs.oracle.com/javase/7/docs/api/javax/xml/transform/Transformer.html ([https](https://docs.oracle.com/javase/7/docs/api/javax/xml/transform/Transformer.html) result 200).
* [ ] http://docs.spring.io/spring-amqp/api/ with 1 occurrences migrated to:
  https://docs.spring.io/spring-amqp/api/ ([https](https://docs.spring.io/spring-amqp/api/) result 200).
* [ ] http://docs.spring.io/spring-amqp/api/org/springframework/amqp/core/MessageProperties.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-amqp/api/org/springframework/amqp/core/MessageProperties.html ([https](https://docs.spring.io/spring-amqp/api/org/springframework/amqp/core/MessageProperties.html) result 200).
* [ ] http://docs.spring.io/spring-amqp/reference/html/ with 1 occurrences migrated to:
  https://docs.spring.io/spring-amqp/reference/html/ ([https](https://docs.spring.io/spring-amqp/reference/html/) result 200).
* [ ] http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-auto-configuration.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-auto-configuration.html ([https](https://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-auto-configuration.html) result 200).
* [ ] http://docs.spring.io/spring-data/data-mongo/docs/current/reference/html/ with 1 occurrences migrated to:
  https://docs.spring.io/spring-data/data-mongo/docs/current/reference/html/ ([https](https://docs.spring.io/spring-data/data-mongo/docs/current/reference/html/) result 200).
* [ ] http://docs.spring.io/spring-data/data-redis/docs/current/api/org/springframework/data/redis/core/BoundHashOperations.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-data/data-redis/docs/current/api/org/springframework/data/redis/core/BoundHashOperations.html ([https](https://docs.spring.io/spring-data/data-redis/docs/current/api/org/springframework/data/redis/core/BoundHashOperations.html) result 200).
* [ ] http://docs.spring.io/spring-data/data-redis/docs/current/api/org/springframework/data/redis/support/collections/RedisProperties.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-data/data-redis/docs/current/api/org/springframework/data/redis/support/collections/RedisProperties.html ([https](https://docs.spring.io/spring-data/data-redis/docs/current/api/org/springframework/data/redis/support/collections/RedisProperties.html) result 200).
* [ ] http://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/aop/framework/ReflectiveMethodInvocation.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/aop/framework/ReflectiveMethodInvocation.html ([https](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/aop/framework/ReflectiveMethodInvocation.html) result 200).
* [ ] http://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/transaction/support/TransactionSynchronization.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/transaction/support/TransactionSynchronization.html ([https](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/transaction/support/TransactionSynchronization.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/constant-values.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/constant-values.html ([https](https://docs.spring.io/spring-integration/api/constant-values.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/amqp/support/DefaultAmqpHeaderMapper.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/amqp/support/DefaultAmqpHeaderMapper.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/amqp/support/DefaultAmqpHeaderMapper.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/endpoint/EventDrivenConsumer.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/endpoint/EventDrivenConsumer.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/endpoint/EventDrivenConsumer.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/endpoint/PollingConsumer.html (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/endpoint/PollingConsumer.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/endpoint/PollingConsumer.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/endpoint/SourcePollingChannelAdapter.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/endpoint/SourcePollingChannelAdapter.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/endpoint/SourcePollingChannelAdapter.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/file/DefaultFileNameGenerator.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/file/DefaultFileNameGenerator.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/file/DefaultFileNameGenerator.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/file/FileHeaders.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/file/FileHeaders.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/file/FileHeaders.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/file/FileNameGenerator.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/file/FileNameGenerator.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/file/FileNameGenerator.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/file/FileWritingMessageHandler.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/file/FileWritingMessageHandler.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/file/FileWritingMessageHandler.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/file/remote/RemoteFileTemplate.html with 2 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/file/remote/RemoteFileTemplate.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/file/remote/RemoteFileTemplate.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/http/inbound/IntegrationRequestMappingHandlerMapping.html (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/http/inbound/IntegrationRequestMappingHandlerMapping.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/http/inbound/IntegrationRequestMappingHandlerMapping.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/http/inbound/RequestMapping.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/http/inbound/RequestMapping.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/http/inbound/RequestMapping.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/sftp/session/DefaultSftpSessionFactory.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/sftp/session/DefaultSftpSessionFactory.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/sftp/session/DefaultSftpSessionFactory.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/store/MessageGroupStore.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/store/MessageGroupStore.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/store/MessageGroupStore.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/store/MessageGroupStore.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/store/MessageGroupStore.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/store/MessageGroupStore.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/store/MessageStore.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/store/MessageStore.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/store/MessageStore.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/AbstractPayloadTransformer.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/AbstractPayloadTransformer.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/AbstractPayloadTransformer.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/AbstractTransformer.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/AbstractTransformer.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/AbstractTransformer.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/MessageTransformingHandler.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/MessageTransformingHandler.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/MessageTransformingHandler.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/Transformer.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/Transformer.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/transformer/Transformer.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/ws/DefaultSoapHeaderMapper.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/ws/DefaultSoapHeaderMapper.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/ws/DefaultSoapHeaderMapper.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/config/XsltPayloadTransformerParser.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/config/XsltPayloadTransformerParser.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/config/XsltPayloadTransformerParser.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/result/DomResultFactory.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/result/DomResultFactory.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/result/DomResultFactory.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/result/ResultFactory.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/result/ResultFactory.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/result/ResultFactory.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/result/StringResultFactory.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/result/StringResultFactory.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/result/StringResultFactory.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/source/DomSourceFactory.html with 3 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/source/DomSourceFactory.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/source/DomSourceFactory.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/source/SourceFactory.html with 3 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/source/SourceFactory.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/source/SourceFactory.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/MarshallingTransformer.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/MarshallingTransformer.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/MarshallingTransformer.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/ResultToDocumentTransformer.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/ResultToDocumentTransformer.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/ResultToDocumentTransformer.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/ResultToStringTransformer.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/ResultToStringTransformer.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/ResultToStringTransformer.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/ResultTransformer.html with 2 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/ResultTransformer.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/ResultTransformer.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/UnmarshallingTransformer.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/UnmarshallingTransformer.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/UnmarshallingTransformer.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/XsltPayloadTransformer.html with 3 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/XsltPayloadTransformer.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xml/transformer/XsltPayloadTransformer.html) result 200).
* [ ] http://docs.spring.io/spring-integration/api/org/springframework/integration/xmpp/support/DefaultXmppHeaderMapper.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/xmpp/support/DefaultXmppHeaderMapper.html ([https](https://docs.spring.io/spring-integration/api/org/springframework/integration/xmpp/support/DefaultXmppHeaderMapper.html) result 200).
* [ ] http://docs.spring.io/spring-integration/docs/latest-ga/api/org/springframework/integration/config/EnableIntegration.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/docs/latest-ga/api/org/springframework/integration/config/EnableIntegration.html ([https](https://docs.spring.io/spring-integration/docs/latest-ga/api/org/springframework/integration/config/EnableIntegration.html) result 200).
* [ ] http://docs.spring.io/spring-integration/docs/latest-ga/api/org/springframework/integration/metadata/MetadataStore.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/docs/latest-ga/api/org/springframework/integration/metadata/MetadataStore.html ([https](https://docs.spring.io/spring-integration/docs/latest-ga/api/org/springframework/integration/metadata/MetadataStore.html) result 200).
* [ ] http://docs.spring.io/spring-integration/reference/ with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/reference/ ([https](https://docs.spring.io/spring-integration/reference/) result 200).
* [ ] http://docs.spring.io/spring-session/docs/current/reference/html5/ with 1 occurrences migrated to:
  https://docs.spring.io/spring-session/docs/current/reference/html5/ ([https](https://docs.spring.io/spring-session/docs/current/reference/html5/) result 200).
* [ ] http://docs.spring.io/spring-ws/docs/current/api/org/springframework/ws/client/support/destination/DestinationProvider.html with 1 occurrences migrated to:
  https://docs.spring.io/spring-ws/docs/current/api/org/springframework/ws/client/support/destination/DestinationProvider.html ([https](https://docs.spring.io/spring-ws/docs/current/api/org/springframework/ws/client/support/destination/DestinationProvider.html) result 200).
* [ ] http://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/jdbc/core/simple/SimpleJdbcCall.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/3.0.x/javadoc-api/org/springframework/jdbc/core/simple/SimpleJdbcCall.html ([https](https://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/jdbc/core/simple/SimpleJdbcCall.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/index.html?org/springframework/messaging/PollableChannel.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/index.html?org/springframework/messaging/PollableChannel.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/index.html?org/springframework/messaging/PollableChannel.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/index.html?org/springframework/messaging/SubscribableChannel.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/index.html?org/springframework/messaging/SubscribableChannel.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/index.html?org/springframework/messaging/SubscribableChannel.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/core/io/Resource.html with 2 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/core/io/Resource.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/core/io/Resource.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/expression/PropertyAccessor.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/expression/PropertyAccessor.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/expression/PropertyAccessor.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/http/client/ClientHttpRequestFactory.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/http/client/ClientHttpRequestFactory.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/http/client/ClientHttpRequestFactory.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/http/client/HttpComponentsClientHttpRequestFactory.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/http/client/HttpComponentsClientHttpRequestFactory.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/http/client/HttpComponentsClientHttpRequestFactory.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/http/client/SimpleClientHttpRequestFactory.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/http/client/SimpleClientHttpRequestFactory.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/http/client/SimpleClientHttpRequestFactory.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/jmx/export/naming/MetadataNamingStrategy.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/jmx/export/naming/MetadataNamingStrategy.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/jmx/export/naming/MetadataNamingStrategy.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/jmx/export/naming/ObjectNamingStrategy.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/jmx/export/naming/ObjectNamingStrategy.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/jmx/export/naming/ObjectNamingStrategy.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/messaging/MessageHandlingException.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/messaging/MessageHandlingException.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/messaging/MessageHandlingException.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/orm/jpa/support/SharedEntityManagerBean.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/orm/jpa/support/SharedEntityManagerBean.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/orm/jpa/support/SharedEntityManagerBean.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/scheduling/Trigger.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/scheduling/Trigger.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/scheduling/Trigger.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/scheduling/support/PeriodicTrigger.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/scheduling/support/PeriodicTrigger.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/scheduling/support/PeriodicTrigger.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/util/PropertiesPersister.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/util/PropertiesPersister.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/util/PropertiesPersister.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/bind/annotation/RequestMapping.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/bind/annotation/RequestMapping.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/bind/annotation/RequestMapping.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/context/support/HttpRequestHandlerServlet.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/context/support/HttpRequestHandlerServlet.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/context/support/HttpRequestHandlerServlet.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/servlet/HandlerMapping.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/servlet/HandlerMapping.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/servlet/HandlerMapping.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/servlet/mvc/method/RequestMappingInfo.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/servlet/mvc/method/RequestMappingInfo.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/servlet/mvc/method/RequestMappingInfo.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/servlet/mvc/method/RequestMappingInfoHandlerMapping.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/servlet/mvc/method/RequestMappingInfoHandlerMapping.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/servlet/mvc/method/RequestMappingInfoHandlerMapping.html) result 200).
* [ ] http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/util/UriComponentsBuilder.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/util/UriComponentsBuilder.html ([https](https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/util/UriComponentsBuilder.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/util/UriComponentsBuilder.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/util/UriComponentsBuilder.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/util/UriComponentsBuilder.html) result 200).
* [ ] http://download.igniterealtime.org/smack/docs/latest/javadoc/org/jivesoftware/smack/roster/Roster.html with 1 occurrences migrated to:
  https://download.igniterealtime.org/smack/docs/latest/javadoc/org/jivesoftware/smack/roster/Roster.html ([https](https://download.igniterealtime.org/smack/docs/latest/javadoc/org/jivesoftware/smack/roster/Roster.html) result 200).
* [ ] http://en.wikipedia.org/wiki/Java_Architecture_for_XML_Binding with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/Java_Architecture_for_XML_Binding ([https](https://en.wikipedia.org/wiki/Java_Architecture_for_XML_Binding) result 200).
* [ ] http://en.wikipedia.org/wiki/List_of_HTTP_header_fields with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/List_of_HTTP_header_fields ([https](https://en.wikipedia.org/wiki/List_of_HTTP_header_fields) result 200).
* [ ] http://en.wikipedia.org/wiki/SQL-92 with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/SQL-92 ([https](https://en.wikipedia.org/wiki/SQL-92) result 200).
* [ ] http://en.wikipedia.org/wiki/XSL_Transformations with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/XSL_Transformations ([https](https://en.wikipedia.org/wiki/XSL_Transformations) result 200).
* [ ] http://epaul.github.io/jsch-documentation/javadoc/com/jcraft/jsch/Session.html with 1 occurrences migrated to:
  https://epaul.github.io/jsch-documentation/javadoc/com/jcraft/jsch/Session.html ([https](https://epaul.github.io/jsch-documentation/javadoc/com/jcraft/jsch/Session.html) result 200).
* [ ] http://example.org with 3 occurrences migrated to:
  https://example.org ([https](https://example.org) result 200).
* [ ] http://feeds.bbci.co.uk/news/rss.xml with 1 occurrences migrated to:
  https://feeds.bbci.co.uk/news/rss.xml ([https](https://feeds.bbci.co.uk/news/rss.xml) result 200).
* [ ] http://gemfire82.docs.pivotal.io/docs-gemfire/gemfire_nativeclient/continuous-querying/continuous-querying.html with 1 occurrences migrated to:
  https://gemfire82.docs.pivotal.io/docs-gemfire/gemfire_nativeclient/continuous-querying/continuous-querying.html ([https](https://gemfire82.docs.pivotal.io/docs-gemfire/gemfire_nativeclient/continuous-querying/continuous-querying.html) result 200).
* [ ] http://geode.apache.org with 1 occurrences migrated to:
  https://geode.apache.org ([https](https://geode.apache.org) result 200).
* [ ] http://git-scm.com/ with 3 occurrences migrated to:
  https://git-scm.com/ ([https](https://git-scm.com/) result 200).
* [ ] http://gradle.org/ with 1 occurrences migrated to:
  https://gradle.org/ ([https](https://gradle.org/) result 200).
* [ ] http://hc.apache.org/httpcomponents-client-ga/ with 3 occurrences migrated to:
  https://hc.apache.org/httpcomponents-client-ga/ ([https](https://hc.apache.org/httpcomponents-client-ga/) result 200).
* [ ] http://jcp.org/en/jsr/detail?id=317 with 1 occurrences migrated to:
  https://jcp.org/en/jsr/detail?id=317 ([https](https://jcp.org/en/jsr/detail?id=317) result 200).
* [ ] http://micrometer.io with 1 occurrences migrated to:
  https://micrometer.io ([https](https://micrometer.io) result 200).
* [ ] http://micrometer.io/ with 1 occurrences migrated to:
  https://micrometer.io/ ([https](https://micrometer.io/) result 200).
* [ ] http://projects.spring.io/spring-batch/ with 1 occurrences migrated to:
  https://projects.spring.io/spring-batch/ ([https](https://projects.spring.io/spring-batch/) result 200).
* [ ] http://projects.spring.io/spring-data-mongodb/ with 1 occurrences migrated to:
  https://projects.spring.io/spring-data-mongodb/ ([https](https://projects.spring.io/spring-data-mongodb/) result 200).
* [ ] http://projects.spring.io/spring-integration/ with 3 occurrences migrated to:
  https://projects.spring.io/spring-integration/ ([https](https://projects.spring.io/spring-integration/) result 200).
* [ ] http://projects.spring.io/spring-security/ with 1 occurrences migrated to:
  https://projects.spring.io/spring-security/ ([https](https://projects.spring.io/spring-security/) result 200).
* [ ] http://projects.spring.io/spring-ws/ with 1 occurrences migrated to:
  https://projects.spring.io/spring-ws/ ([https](https://projects.spring.io/spring-ws/) result 200).
* [ ] http://redis.io/ with 2 occurrences migrated to:
  https://redis.io/ ([https](https://redis.io/) result 200).
* [ ] http://redis.io/commands with 1 occurrences migrated to:
  https://redis.io/commands ([https](https://redis.io/commands) result 200).
* [ ] http://redis.io/commands/brpop with 2 occurrences migrated to:
  https://redis.io/commands/brpop ([https](https://redis.io/commands/brpop) result 200).
* [ ] http://redis.io/commands/llen with 2 occurrences migrated to:
  https://redis.io/commands/llen ([https](https://redis.io/commands/llen) result 200).
* [ ] http://redis.io/download with 1 occurrences migrated to:
  https://redis.io/download ([https](https://redis.io/download) result 200).
* [ ] http://redis.io/topics/pubsub with 2 occurrences migrated to:
  https://redis.io/topics/pubsub ([https](https://redis.io/topics/pubsub) result 200).
* [ ] http://relaxng.org/ns/structure/1.0 with 1 occurrences migrated to:
  https://relaxng.org/ns/structure/1.0 ([https](https://relaxng.org/ns/structure/1.0) result 200).
* [ ] http://spring.io with 2 occurrences migrated to:
  https://spring.io ([https](https://spring.io) result 200).
* [ ] http://blog.springsource.com/2010/03/29/using-udp-and-tcp-adapters-in-spring-integration-2-0-m3/ (301) with 1 occurrences migrated to:
  https://spring.io/blog/2010/03/29/using-udp-and-tcp-adapters-in-spring-integration-2-0-m3/ ([https](https://blog.springsource.com/2010/03/29/using-udp-and-tcp-adapters-in-spring-integration-2-0-m3/) result 200).
* [ ] http://blog.springsource.com/2010/09/29/new-spring-integration-samples/ (301) with 1 occurrences migrated to:
  https://spring.io/blog/2010/09/29/new-spring-integration-samples/ ([https](https://blog.springsource.com/2010/09/29/new-spring-integration-samples/) result 200).
* [ ] http://stackoverflow.com/questions/32398754/how-to-connect-to-ftps-server-with-data-connection-using-same-tls-session with 1 occurrences migrated to:
  https://stackoverflow.com/questions/32398754/how-to-connect-to-ftps-server-with-data-connection-using-same-tls-session ([https](https://stackoverflow.com/questions/32398754/how-to-connect-to-ftps-server-with-data-connection-using-same-tls-session) result 200).
* [ ] http://stackoverflow.com/questions/6117254/force-oracle-to-return-top-n-rows-with-skip-locked with 1 occurrences migrated to:
  https://stackoverflow.com/questions/6117254/force-oracle-to-return-top-n-rows-with-skip-locked ([https](https://stackoverflow.com/questions/6117254/force-oracle-to-return-top-n-rows-with-skip-locked) result 200).
* [ ] http://tomcat.apache.org/ with 1 occurrences migrated to:
  https://tomcat.apache.org/ ([https](https://tomcat.apache.org/) result 200).
* [ ] http://twitter.com/business with 1 occurrences migrated to:
  https://twitter.com/business ([https](https://twitter.com/business) result 200).
* [ ] http://twitter.com/search?q=%23501pjmnotalone with 1 occurrences migrated to:
  https://twitter.com/search?q=%23501pjmnotalone ([https](https://twitter.com/search?q=%23501pjmnotalone) result 200).
* [ ] http://twitter.com/search?q=%23iloveyoubecause with 1 occurrences migrated to:
  https://twitter.com/search?q=%23iloveyoubecause ([https](https://twitter.com/search?q=%23iloveyoubecause) result 200).
* [ ] http://twitter.com/search?q=%23tweetumfilmecompassiva with 1 occurrences migrated to:
  https://twitter.com/search?q=%23tweetumfilmecompassiva ([https](https://twitter.com/search?q=%23tweetumfilmecompassiva) result 200).
* [ ] http://twitter.com/search?q=Animated+Series with 1 occurrences migrated to:
  https://twitter.com/search?q=Animated+Series ([https](https://twitter.com/search?q=Animated+Series) result 200).
* [ ] http://twitter.com/search?q=Anne+Hathaway with 1 occurrences migrated to:
  https://twitter.com/search?q=Anne+Hathaway ([https](https://twitter.com/search?q=Anne+Hathaway) result 200).
* [ ] http://twitter.com/search?q=Arin+Ilejay with 1 occurrences migrated to:
  https://twitter.com/search?q=Arin+Ilejay ([https](https://twitter.com/search?q=Arin+Ilejay) result 200).
* [ ] http://twitter.com/search?q=Bane with 1 occurrences migrated to:
  https://twitter.com/search?q=Bane ([https](https://twitter.com/search?q=Bane) result 200).
* [ ] http://twitter.com/search?q=Catwoman with 2 occurrences migrated to:
  https://twitter.com/search?q=Catwoman ([https](https://twitter.com/search?q=Catwoman) result 200).
* [ ] http://twitter.com/search?q=Coachella with 1 occurrences migrated to:
  https://twitter.com/search?q=Coachella ([https](https://twitter.com/search?q=Coachella) result 200).
* [ ] http://twitter.com/search?q=Damn+Beliebers with 2 occurrences migrated to:
  https://twitter.com/search?q=Damn+Beliebers ([https](https://twitter.com/search?q=Damn+Beliebers) result 200).
* [ ] http://twitter.com/search?q=Edgar+Allan+Poe with 1 occurrences migrated to:
  https://twitter.com/search?q=Edgar+Allan+Poe ([https](https://twitter.com/search?q=Edgar+Allan+Poe) result 200).
* [ ] http://twitter.com/search?q=English with 1 occurrences migrated to:
  https://twitter.com/search?q=English ([https](https://twitter.com/search?q=English) result 200).
* [ ] http://twitter.com/search?q=Farmac%C3%AAutico with 1 occurrences migrated to:
  https://twitter.com/search?q=Farmac%C3%AAutico ([https](https://twitter.com/search?q=Farmac%C3%AAutico) result 200).
* [ ] http://twitter.com/search?q=First+Class with 1 occurrences migrated to:
  https://twitter.com/search?q=First+Class ([https](https://twitter.com/search?q=First+Class) result 200).
* [ ] http://twitter.com/search?q=Friday with 1 occurrences migrated to:
  https://twitter.com/search?q=Friday ([https](https://twitter.com/search?q=Friday) result 200).
* [ ] http://twitter.com/search?q=Giuliano with 1 occurrences migrated to:
  https://twitter.com/search?q=Giuliano ([https](https://twitter.com/search?q=Giuliano) result 200).
* [ ] http://twitter.com/search?q=JBisJonasBrothers with 2 occurrences migrated to:
  https://twitter.com/search?q=JBisJonasBrothers ([https](https://twitter.com/search?q=JBisJonasBrothers) result 200).
* [ ] http://twitter.com/search?q=Janis+Joplin with 1 occurrences migrated to:
  https://twitter.com/search?q=Janis+Joplin ([https](https://twitter.com/search?q=Janis+Joplin) result 200).
* [ ] http://twitter.com/search?q=Modern+Family with 1 occurrences migrated to:
  https://twitter.com/search?q=Modern+Family ([https](https://twitter.com/search?q=Modern+Family) result 200).
* [ ] http://twitter.com/search?q=Obamacare with 1 occurrences migrated to:
  https://twitter.com/search?q=Obamacare ([https](https://twitter.com/search?q=Obamacare) result 200).
* [ ] http://twitter.com/search?q=Passiva with 1 occurrences migrated to:
  https://twitter.com/search?q=Passiva ([https](https://twitter.com/search?q=Passiva) result 200).
* [ ] http://twitter.com/search?q=Rise+%26+Grind with 2 occurrences migrated to:
  https://twitter.com/search?q=Rise+%26+Grind ([https](https://twitter.com/search?q=Rise+%26+Grind) result 200).
* [ ] http://twitter.com/search?q=Rivaldo with 1 occurrences migrated to:
  https://twitter.com/search?q=Rivaldo ([https](https://twitter.com/search?q=Rivaldo) result 200).
* [ ] http://twitter.com/search?q=Seoul+Music+Awards with 2 occurrences migrated to:
  https://twitter.com/search?q=Seoul+Music+Awards ([https](https://twitter.com/search?q=Seoul+Music+Awards) result 200).
* [ ] http://twitter.com/search?q=Steven+Tyler with 1 occurrences migrated to:
  https://twitter.com/search?q=Steven+Tyler ([https](https://twitter.com/search?q=Steven+Tyler) result 200).
* [ ] http://twitter.com/search?q=Tom+Hardy with 1 occurrences migrated to:
  https://twitter.com/search?q=Tom+Hardy ([https](https://twitter.com/search?q=Tom+Hardy) result 200).
* [ ] http://www.amqp.org/ with 1 occurrences migrated to:
  https://www.amqp.org/ ([https](https://www.amqp.org/) result 200).
* [ ] http://www.eclipse.org/jetty/ with 1 occurrences migrated to:
  https://www.eclipse.org/jetty/ ([https](https://www.eclipse.org/jetty/) result 200).
* [ ] http://www.eclipse.org/paho/ with 1 occurrences migrated to:
  https://www.eclipse.org/paho/ ([https](https://www.eclipse.org/paho/) result 200).
* [ ] http://www.ejabberd.im with 1 occurrences migrated to:
  https://www.ejabberd.im ([https](https://www.ejabberd.im) result 200).
* [ ] http://www.eaipatterns.com (302) with 8 occurrences migrated to:
  https://www.enterpriseintegrationpatterns.com/ ([https](https://www.eaipatterns.com) result 200).
* [ ] http://www.eaipatterns.com/ (302) with 2 occurrences migrated to:
  https://www.enterpriseintegrationpatterns.com/ ([https](https://www.eaipatterns.com/) result 200).
* [ ] http://www.enterpriseintegrationpatterns.com/docs/TestDrivenEAI.pdf with 1 occurrences migrated to:
  https://www.enterpriseintegrationpatterns.com/docs/TestDrivenEAI.pdf ([https](https://www.enterpriseintegrationpatterns.com/docs/TestDrivenEAI.pdf) result 200).
* [ ] http://www.enterpriseintegrationpatterns.com/patterns/messaging/CorrelationIdentifier.html with 1 occurrences migrated to:
  https://www.enterpriseintegrationpatterns.com/patterns/messaging/CorrelationIdentifier.html ([https](https://www.enterpriseintegrationpatterns.com/patterns/messaging/CorrelationIdentifier.html) result 200).
* [ ] http://www.eaipatterns.com/ramblings.html (302) with 1 occurrences migrated to:
  https://www.enterpriseintegrationpatterns.com/ramblings.html ([https](https://www.eaipatterns.com/ramblings.html) result 200).
* [ ] http://www.example.org with 3 occurrences migrated to:
  https://www.example.org ([https](https://www.example.org) result 200).
* [ ] http://www.h2database.com/ with 1 occurrences migrated to:
  https://www.h2database.com/ ([https](https://www.h2database.com/) result 200).
* [ ] http://www.ietf.org/rfc/rfc2396.txt with 1 occurrences migrated to:
  https://www.ietf.org/rfc/rfc2396.txt ([https](https://www.ietf.org/rfc/rfc2396.txt) result 200).
* [ ] http://www.igniterealtime.org/projects/openfire/ with 1 occurrences migrated to:
  https://www.igniterealtime.org/projects/openfire/ ([https](https://www.igniterealtime.org/projects/openfire/) result 200).
* [ ] http://www.igniterealtime.org/projects/smack/ with 1 occurrences migrated to:
  https://www.igniterealtime.org/projects/smack/ ([https](https://www.igniterealtime.org/projects/smack/) result 200).
* [ ] http://www.jcp.org/en/jsr/detail?id=223 with 1 occurrences migrated to:
  https://www.jcp.org/en/jsr/detail?id=223 ([https](https://www.jcp.org/en/jsr/detail?id=223) result 200).
* [ ] http://www.oracle.com/technetwork/java/javase/downloads/index.html with 1 occurrences migrated to:
  https://www.oracle.com/technetwork/java/javase/downloads/index.html ([https](https://www.oracle.com/technetwork/java/javase/downloads/index.html) result 200).
* [ ] http://www.rabbitmq.com/ with 1 occurrences migrated to:
  https://www.rabbitmq.com/ ([https](https://www.rabbitmq.com/) result 200).
* [ ] http://www.sonarsource.org/ (301) with 1 occurrences migrated to:
  https://www.sonarqube.org/ ([https](https://www.sonarsource.org/) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans.xsd with 51 occurrences migrated to:
  https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context.xsd with 1 occurrences migrated to:
2019-03-26 14:06:50 -04:00
Artem Bilan
afa8753239 URL Cleanup
This commit updates URLs to prefer the https protocol.
Redirects are not followed to avoid accidentally expanding intentionally
shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success
These URLs were switched to an https URL with a 2xx status.
While the status was successful, your review is still recommended.

* [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to:
  https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 2638 occurrences migrated to:
  https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).
2019-03-22 12:21:42 -04:00
Artem Bilan
3491cbab81 GH-2820: Close session in FtpRemFileTempl.exists
Fixes: https://github.com/spring-projects/spring-integration/issues/2820

The current `FtpRemoteFileTemplate.exists()` implementation obtains a
`Session` for the `NLST_AND_DIRS` mode, but doesn't close it.

* Fix the `FtpRemoteFileTemplate.exists()` method to delegate to `super`
for the proper interaction with a `Session`

**Cherry-pick to 5.1.x, 5.0.x & 4.3.x**
2019-03-19 11:23:19 -04:00
Gary Russell
4ea3b1c23c GH-2705: public CTORs on AMFPFileListFilter Impls
Fixes https://github.com/spring-projects/spring-integration/issues/2705
2019-01-18 11:12:38 -05:00
Gary Russell
e40cfe101e Sonar fixes
Hidden fields, `o.s.i.a*` through `o.s.i.j*`.
2019-01-09 10:02:19 -05:00
Gary Russell
e8df546b04 Sonar Fixes - Javadoc-only imports 2019-01-02 12:26:22 -05:00
Gary Russell
62fc7df693 Sonar Fixes
Critical smells, packages `o.s.i.a*` to `f*`.

Plus new smells caused by these changes.
2018-12-03 10:44:26 -05:00
Gary Russell
12bc24dd02 File, FTP, IP Sonar Fixes 2018-10-26 13:53:54 -04:00
Gary Russell
bd7a3bc4ed GH-2605: (S)FTP test cached sessions
Resolves https://github.com/spring-projects/spring-integration/issues/2605

* Suppress unused field warning.

* Fix typos.

* Use lstat() - don't follow symbolic lincs
2018-10-23 13:59:00 -04:00
Gary Russell
11d39b7da1 INT-4496: (S)FTP: Sort file list earlier
JIRA: https://jira.spring.io/browse/INT-4496

Sort the file list before applying `maxFetchSize` and filters.

* Polishing - PR Comments
2018-07-02 16:49:23 -04:00
Gary Russell
3f218a97a0 INT-4495: (S)FTP: fix max-fetch with directories
JIRA: https://jira.spring.io/browse/INT-4495

Previously, `maxFetch` was applied before directories were removed from
the fetch list.

Remove the directories before filtering and applying `maxFetch`.

* Polishing - PR Comments

* More polishing

* More polishing.

* Check for empty array.

* Remove test main method.
2018-06-29 14:21:06 -04:00
Artem Bilan
027021d6e4 Move XSDs to version 5.1
* Upgrade to Spring AMQP-2.1 and fix compatibility
2018-03-17 09:58:40 -04:00
Artem Bilan
077b5ffffc INT-4344: AbstRemoteFileOutGw: Add assert for NPE
JIRA: https://jira.spring.io/browse/INT-4344

The `FtpOutboundGateway` provides ctors without expression for remote path.
In this case it is treated as a `working directory` but only for the
`LS`, `NLST`, `PUT` and `MPUT` commands.

* Add assertion in the `AbstractRemoteFileOutboundGateway` to discard
configuration for all other commands when `expression` is `null`

**Cherry-pick to 4.3.x**
2017-10-16 17:04:22 -04:00
Venil Noronha
797e5045bf INT-4334: Adds a DirectoryScanner to RemoteFileMS
JIRA: https://jira.springsource.org/browse/INT-4334

* Add a `DirectoryScanner` setter named `setScanner` in
`AbstractInboundFileSynchronizingMessageSource` to set the
`FileReadingMessageSource`'s scanner.
* Add tests to `AbstractRemoteFileSynchronizerTests`.

Polish.

Updates xsd, tests and documentation.

Fix xsd formatting.

Addresses review comments.

* Some code style polishing
2017-09-25 21:08:51 -04:00
Gary Russell
2c7bf9271c INT-4283: MarkerFilePresentFileListFilters
JIRA: https://jira.spring.io/browse/INT-4283

Filter that only passes files where a corresponding "marker" file is also present.

Implementations for file and(S)FTP.

* Polishing - PR Comments

* Missed one
2017-06-02 19:31:05 -04:00
Artem Bilan
0379565264 Fix JavaDocs for Remote File components
https://build.spring.io/browse/INT-MASTER-684/
2017-05-25 14:34:29 -04:00
Artem Bilan
3daeaab1b4 INT-4060: FTP Gateway: Add NLST and workDir
JIRA: https://jira.spring.io/browse/INT-4060

* Add `NLST` command to the `AbstractRemoteFileOutboundGateway` to perform
`listNames` on the target session.
Useful in case of server doesn't allow to perform `LS` or the names set is
sufficient for application requirements
* Add `workingDirExpression` to the `FtpOutboundGateway` to allow to perform
`FtpClient.changeWorkingDirectory()` based on the current request message
* Change `slf4j-log4j12` to the `testCompile` -
the FTP tests fail in the IDE with `ClassNotFoundException`

Address PR comments

* Add `nlst` to XSD config
* Reinstate `ls -1` test-case for the `FtpServerOutboundTests`
* wrap more commands to the `doInWorkingDirectory()`

Fix `MV` command in the `AbstractRemoteFileOutboundGateway`

* Implement `RemoteFileOperations#invoke(OperationsCallback<F, T>)`
for thread-bound `session`s
* Use a new `invoke()` for `put()` and `mPut()` commands in the `AbstractRemoteFileOutboundGateway`
* Add delegation for the `put()` and `mPut()` commands in the `FtpOutboundGateway`
* Add DSL support for the `workingDirExpression` and add `whats-new.adoc` note

Document changes

Address some PR comments:

* Add `invokeScope` variable to `execute` to track `ThreadLocal` session or not
* Check for `null` in the `getSession()` and fallback to regular
`sessionFactory.getSession()`.
Most likely the `invoke()` is called from other thread

Doc Polishing
2017-05-25 11:23:30 -04:00
Artem Bilan
10ce68d3e3 INT-4115: (S)FtpPersistentFileFilter by Default
JIRA: https://jira.spring.io/browse/INT-4115

Apply `(S)FtpPersistentAcceptOnceFileListFilter` for the `(S)FtpInboundFileSynchronizer` by default to avoid cases to sync the same remote files to the local directory again.
Especially when `localFileName` strategy is applied and we end up with new local files, but with the same remote content

Accept `(S)FtpPersistentAcceptOnceFileListFilter` for streaming adapters

Make `doSetFilter()` as `protected final`

Fix tests after rebase

Fix "What's New" after rebase

Compose `PersistentAcceptOnceFileListFilter` together with the regex or pattern filters
Document such a behavior

Address PR comments for formatting and typo
2017-03-14 15:37:43 -04:00
Artem Bilan
a4bfd2cc42 INT-4221: Properly use Spring's Assert class
JIRA: https://jira.spring.io/browse/INT-4221

* Upgrade to those versions of Spring project dependencies which potentially will provide similar fix

**Cherry-pick to 4.3.x**
2017-01-30 22:27:59 -05:00
Artem Bilan
9836828f54 INT-4204: Introduce ExpressionFileListFilter
JIRA: https://jira.spring.io/browse/INT-4204

Fix error message in the `AbstractRemoteFileOutboundGatewayParser`
2017-01-19 16:30:44 -05:00
Gary Russell
57806b92c9 INT-4171: Document Solution for FTPS Shared SSL
JIRA: https://jira.spring.io/browse/INT-4171

Since the solution requires reflection on `sun` classes, document only.

Also fix some PDF text overflows in (S)FTP.
2016-11-26 16:24:33 -05:00
Gary Russell
8070f72c44 INT-4155: Port FTP DSL
JIRA: https://jira.spring.io/browse/INT-4155

- Add streaming support
- Rework tests to use dynamic flow registrations due to the test FTP server is now a test support class.

Javadoc fixes

Checkstyle fix

Polishing - PR Comments

Polishing and Port SFTP
2016-11-14 13:22:45 -05:00
Artem Bilan
5cca8e8e01 INT-3770: Add TX Support from Mid-flow
JIRA: https://jira.spring.io/browse/INT-3770,
https://jira.spring.io/browse/INT-4107

Having `TransactionHandleMessageAdvice` we can start TX from any `MessageHandler.handleMessage()`

* Add `<transactional>` alongside with the `<request-handler-advice-chain>` for those components which produce reply
* Merge `<transactional>` and `<request-handler-advice-chain>` configuration to a single `ManagedList`
* Rework JPA `<transactional>` in favor of common solution
* Some polishing and refactoring

AbstractPollingEndpoint: avoid `new ArrayList` if we don't  have `receiveOnlyAdvice`s
2016-11-07 09:06:17 -05:00
Gary Russell
a43299213e INT-4149: Improve (S)FTP Recursive MGET
JIRA: https://jira.spring.io/browse/INT-4149

Add an option to always pass directories while recursing.

* Fix typos in docs
* Revert `SyslogReceivingChannelAdapterTests` `Thread.sleep()` fixes
2016-10-28 16:22:46 -04:00
Gary Russell
5a44216201 INT-4140: File Streaming Adapter: Add maxFetchSize
JIRA: https://jira.spring.io/browse/INT-4140
2016-10-18 10:32:23 -04:00
Gary Russell
fc3088d77d INT-4128: FTP ControlEncoding Fix
JIRA: https://jira.spring.io/browse/INT-4128
2016-09-29 10:00:25 -04:00
Gary Russell
e5ae7d886d (S)FTP Lambdas
AMQP Lambdas

Event Lambdas

Feed/File Lambdas

Gemfile/Groovy Lambdas

* Ensure that JavaDocs are checked via `	check.dependsOn javadoc`
* Add `@return` tag to the `MessageBuilder.readOnlyHeaders()`
2016-09-26 16:50:01 -04:00
Artem Bilan
12fb590b95 Mainly Checkstyle Violation Fixes
* Upgrade to Checkstyle `7.1`
* Relax `RequireThis` rule a bit. Right now it does the effort only in case of overlapping. See https://github.com/checkstyle/checkstyle/issues/2362 for more info
* Enable some annotation rules and provide fixes for violations
* Enable `tabs indents` rule. This was the biggest fix in this PR
* Resolve `TODO` in the `MessagingMethodInvokerHelper` and fix tests to meet `IllegalStateException` now

Remain Checkstyle version `6.16.1` and reinstate `RequireThis` rule

The latest Checkstyle has a bug with local scope variables if they have the same names as property.

Revert some literals splitting

Fix some line length exceeding and code style
2016-09-22 13:23:51 -04:00
Artem Bilan
370be4853d Apply Some Java 8 Code Changes
* Make most functional interfaces as `@FunctionalInterface`
* Convert some abstract classes to `@FunctionalInterface` with `default` methods
* Apply Lambda style implementation in some places
* Remove `Function` in favor of similar in Java 8

*  Remove redundant code from `DefaultAmqpHeaderMapper` since we are already on Spring AMQP-2.0
* Add several ctors to the `ExpressionEvaluatingMessageListProcessor`
* Populate explicit `Boolean.class` `expectedType` from the `ExpressionEvaluatingReleaseStrategy`
2016-08-29 09:14:31 -04:00
Gary Russell
ea4763faa9 INT-4095: Support Limiting (S)FTP Files Fetched
JIRA: https://jira.spring.io/browse/INT-4095

Limit the number of remote files fetched on each poll (when it is necessary to fetch files).

Polishing - PR Comments

Polishing - Decouple MaxFetchSize from Poller

Polishing - PR Comments

Schemas and Docs

More Polishing

* Polishing according PR comments
2016-08-26 13:36:14 -04:00
Gary Russell
04a42f54be Rename Schemas to 5.0
Fix Schema Imports

spring.schemas
2016-08-18 14:40:38 -04:00
Artem Bilan
c620438913 INT-4046: Add FtpRemoteFileTemplate.ExistsMode
JIRA: https://jira.spring.io/browse/INT-4046

Since not all FTP servers provide proper `STAT` command implementation,
plus the `NLIST` doesn't work properly for directories cases, introduce the `FtpRemoteFileTemplate.ExistsMode`
to let:
* to perform `STAT` by default (previous) behavior;
* to switch to `NLIST` for `FtpRemoteFileTemplate` internal use;
* perform the full `NLIST` and `FTPClient.changeWorkingDirectory()` algorithm if needed.

* Improve (S)Ftp components to use proper `RemoteFileTemplate` for internal instantiation
* Introduce `FtpMessageHandler` to wrap `FtpRemoteFileTemplate` with the proper `NLIST` `ExistsMode`
* Cover `NLIST` switching from the `FtpOutboundChannelAdapterParser` and `FtpOutboundGatewayParser`
* Document the `FtpRemoteFileTemplate.ExistsMode`

* Fix typo in the recently introduced `RemoteFileOperations.getSession()` method name
* Add JavaDoc to `Session.exists()`
* Add `NLIST` support for the `FtpSession.exists()` to meet the API requirements

**Cherry-pick to 4.2.x and 4.1.x**

Addressing PR comments

Doc Polishing
2016-06-08 14:34:35 -04:00
Gary Russell
287d924fc0 INT-4015: Streaming Remote File Inbound Adapter
JIRA: https://jira.spring.io/browse/INT-4015
      https://jira.spring.io/browse/INT-3854

Initial commit.

Reworked to emit an input stream and use the file splitter.

Add StreamTransformer.

Add CLOSABLE_RESOURCE header so we can close the session automatically.

Implement INT-3854, FTP, SFTP

(S)FTP Namespace Changes

Docs - also fixes a PDF overflow

Polishing - PR Comments

checkstyle fixes

Polishing - Add Namespace for StreamParser

Polishing - PR Comments
2016-04-29 13:24:23 -04:00
Gary Russell
05cc7be644 checkstyle WhiteAround
WhiteAroundCheck script
2016-04-05 13:50:11 -04:00
Gary Russell
842aded9a4 checkstyle MutableException
checkstyle EmptyBlock

checkstyle fixRightCurly Script

checkstyle EmptyStatement

checkstyle RightCurly

checkstyle TailingWhite

checkstyle NeedBraces

Fix the line separator in the `fixRightCurly.gradle`
2016-04-05 13:10:33 -04:00
Artem Bilan
2b0598291c RequireThis rule and fixThis Gradle task
* `gradlew clean check -x test --parallel --continue` - to collect reports
* `gradlew fixThis --parallel` - to fix all possible vulnerabilities. With `-Dfile.encoding=UTF-8` on Windows

Since the `RequireThisCheck` doesn't see parents for anonymous classes (e.g. `Runnable` callback), its report doesn't contains the outer class name with `this.`,
therefore we still have to fix those cases manually.
Thanks to the wrong `replacer` just with `this.` we have uncompilable code enough easy to find problems.
Not so easy to fix for good readability though...

* Upgrade to Grade 2.12
* Upgrade to SonarQube native plugin

The fix contains at about 300 files. So, will be done on merge.

Fix `fixThis.gradle` according PR comments

Apply `fixThis` and also `fixModifiers` for test classes.
 Fix some `this.` inner issues manually.
 Make code polishing for long lines after `fixThis`

Fix conflicts and vulnerabilities after the rebase
2016-03-22 20:18:27 -04:00
Artem Bilan
66cd92a6e7 INT-3964: More @EnableIntegration Documentation
JIRA: https://jira.spring.io/browse/INT-3964

Doc Polish

XSD: document classes for element implementations

Fix Redis XSD typo for CDATA
2016-03-22 10:41:07 -04:00
Artem Bilan
ef40a939cf Add check header rule and fixHeaders task
Add "new line" in the header end

* Optimization for the `fixHeaders.gradle`
* Apply the `fixHeaders` for the affected classes
2016-03-07 15:08:51 -05:00
Artem Bilan
7595e4f142 INT-3919: FTP: Allow null for Remote Directory
JIRA: https://jira.spring.io/browse/INT-3919

Since `FtpClient` supports `null` for the `LS` command, treating it as a current `working directory`,
there is no reason to forbid `null` from the FTP adapters end-user perspective.

* Allow `null` for the `FtpSession` `list()` and `listNames()` methods
* Allow `null` in the `remote-directory` for the `<int-ftp:inbound-channel-adapter>`
* Allow `null` in the `expression` for the `FtpOutboundGateway`

Polishing - send error if error on async output

Cover `onFailure()` from `onSuccess()` with the `errorChannel`

Address PR Comments

* Get rid of `null` population for the `remoteDirectoryExpression` in the `AbstractPollingInboundChannelAdapterParser`
* Populate `new LiteralExpression(null)` from the `FtpInboundFileSynchronizer` ctor
* Introduce `buildRemotePath(parent, child)` function in the `AbstractRemoteFileOutboundGateway` with the `null` logic for `parent`
* Rework `mGetWithoutRecursion()` to use `LS` command and allow `null` for the dir.
* Fix tests according the new `mGetWithoutRecursion()` logic

Polishing
2016-02-16 14:45:22 -05:00
Artem Bilan
74cbc58698 INT-3926: Add <poller> for all outbound tags
JIRA: https://jira.spring.io/browse/INT-3926

* Add `<poller>` for all `<outbound-adapter(gateway)>`
* Add/modify tests for `<queue>` as an input channel and particular `<poller>`
* Move XSD from the `xml` package to the `config` level to achieve the consistency throughout the project.
2016-01-07 12:16:40 -05:00
Gary Russell
051b393ed0 Prepare Master for 4.3
Reference to 4.3

Refactor `what's new` for 4.3
2015-11-17 12:12:49 -05:00
Artem Bilan
e408331e67 INT-3622: (S)FTP: Add MessageSessionCallback
JIRA: https://jira.spring.io/browse/INT-3622

INT-3622: Polishing
2015-08-11 09:33:34 -04:00
Gary Russell
c68c7b3412 INT-3763: (S)FTP - Inbound Remote Dir. Expression
JIRA: https://jira.spring.io/browse/INT-3763

Fix `AbstractRemoteFileSynchronizerTests` according to this change.
2015-07-09 18:26:46 -04:00
Gary Russell
65d2024937 INT-3737: (S)FTP Outbound Gateway Streaming GET
JIRA: https://jira.spring.io/browse/INT-3737

Support returning an `InputStream` from a GET operation.

This can be used in conjuction with a `<file:splitter/>` to stream a text file.

The user is responsible for releasing the session when the download is complete.

The session object is stored in the message header and `RemoteFileUtils.closeSession()` should be called
to clean up and close the session.

INT-3737: Polishing and Docs

Fix `CachedSession.close()` bug

Preventing `Caused by: java.io.IOException: Previous raw read was not finalized`
when `Session` is returned to the pool, but `readingRaw` hasn't been finalized
because the real `close()` isn't invoked in case of normal return to pool.
2015-06-19 13:39:36 -04:00
Gary Russell
505bfac2f8 INT-3735: (S)FTP Fix Schema Expected Type
JIRA: https://jira.spring.io/browse/INT-3735
2015-06-17 16:12:06 -04:00
Gary Russell
c2ee93f9e1 INT-3696: Use StringBuilder in FtpFileInfo
JIRA: https://jira.spring.io/browse/INT-3696
2015-05-11 09:45:03 +01:00
Gary Russell
195ee70568 INT-3632: Sonar Improvements
JIRA: https://jira.spring.io/browse/INT-3632

- Use Map.entrySet()
- Double check locking only works when the field(s) are volatile
- Remove unnecessary instanceof tests
2015-02-10 18:00:07 -05:00
Gary Russell
15eb01169d INT-3581: Support selector-expression on WireTap
JIRA: https://jira.spring.io/browse/INT-3581

Move schemas to 4.2.

Add `selector-expression` to `<wire-tap/>`.

INT-3781: Fix What's New

Bump Namespace Version to 4.2
2015-01-13 15:32:06 -05:00
Gary Russell
91e7d78884 INT-3592: Fix (S)FTP Gateway CTOR Visibility
JIRA: https://jira.spring.io/browse/INT-3592

CTORs were incorrectly `private` which is ok for XML
configuration, but not for DSL/Java Config.
2015-01-05 14:20:45 +02:00
Gary Russell
403c91801d INT-3412 (S)FTP Append, rmdir, Client Access
JIRA: https://jira.spring.io/browse/INT-3412

Initial commit - review only.

TODO:
- SFTP Tests
- Namespace/Adapter support for file append
- Docs

INT-3412 Polishing

- Addressed PR comments
- Completed SFTP implementation
- Added namespace/parser support for `FileExistsMode` (append, etc)
- Added SFTP Tests
- Created Embedded SFTP server for tests (similar to FTP)
- Converted tests that needed a real server to use the embedded server

INT-3412 Docs and Polish (PR Comments)
2014-08-04 15:08:34 +03:00