{"push_id":692715968,"size":1,"distinct_size":1,"ref":"refs/heads/INT-3724","head":"1eeee76beed21fd353cca20c92b0939988a0f12b","before":"1e84b782f4d77bac4876196d17bd54ffc55d4443","commits":[{"sha":"1eeee76beed21fd353cca20c92b0939988a0f12b","author":{"email":"ca38f0b1e403910690d62616d4d007b7e130680b@pivotal.io","name":"Gary Russell"},"message":"INT-3724: Gateway - Support CompletableFuture\n\nJIRA: https://jira.spring.io/browse/INT-3724\n\nAdd support for `CompletableFuture<?>` return types on gateway methods, if JDK8 is being used.\n\n- If the return type is exactly `CompletableFuture` and an async executor is provided, use `CompletableFuture.supplyAsync()`\n- If there is no return async executor, return types can be `CompletableFuture` or a subclass and the flow can return such a future.\n\n- Also fixes a problem for return type `Future<Message<?>>` with no async executor; previously this caused a `ClassCastException`\n   because the gateway returned the message - it assumed such return types would always run on an excutor.\n\nWe can consider back-porting this last part, but nobody has complained.","distinct":true,"url":"https://api.github.com/repos/garyrussell/spring-integration/commits/1eeee76beed21fd353cca20c92b0939988a0f12b"}]}