GH-3155: Add support for Java DSL extensions (#3167)

* GH-3155: Add support for Java DSL extensions

Fixes https://github.com/spring-projects/spring-integration/issues/3155

Provide an `IntegrationFlowExtension` for possible custom EI-operators
in the target project use-cases.

* * Move `IntegrationFlowExtension` tests ot its own test class
* Make all the `IntegrationComponentSpec` ctors as `protected` for possible custom extensions
* Make some `BaseIntegrationFlowDefinition` methods and properties as `protected` to get them
access from the `IntegrationFlowExtension` implementations
* Document the feature

* * Fix language and typos in docs

* * Add `protected` to one more `GatewayEndpointSpec` ctor
* Add JavaDocs to `GatewayEndpointSpec` methods

* * Add `protected` to one more `JmsPollableMessageChannelSpec` ctor
This commit is contained in:
Artem Bilan
2020-02-07 13:40:39 -05:00
committed by GitHub
parent 00b771d8a8
commit 867a8cf108
82 changed files with 607 additions and 275 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2019 the original author or authors.
* Copyright 2019-2020 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -32,7 +32,7 @@ import org.springframework.messaging.rsocket.RSocketStrategies;
*/
public class RSocketInboundGatewaySpec extends MessagingGatewaySpec<RSocketInboundGatewaySpec, RSocketInboundGateway> {
RSocketInboundGatewaySpec(String... path) {
protected RSocketInboundGatewaySpec(String... path) {
super(new RSocketInboundGateway(path));
}

View File

@@ -38,11 +38,11 @@ import org.springframework.util.MimeType;
*/
public class RSocketOutboundGatewaySpec extends MessageHandlerSpec<RSocketOutboundGatewaySpec, RSocketOutboundGateway> {
RSocketOutboundGatewaySpec(String route, Object... routeVariables) {
protected RSocketOutboundGatewaySpec(String route, Object... routeVariables) {
this.target = new RSocketOutboundGateway(route, routeVariables);
}
RSocketOutboundGatewaySpec(Expression routeExpression) {
protected RSocketOutboundGatewaySpec(Expression routeExpression) {
this.target = new RSocketOutboundGateway(routeExpression);
}